Routing źródłowy to technika stosowana w sieciach komputerowych, która umożliwia użytkownikowi kierowanie pakietów danych sieciowych do określonego miejsca docelowego. W zależności od tego, jak jest używany, pakietom można nadać konkretną ścieżkę lub ogólne kierunki, które pozwolą niektórym automatycznym trasom sieciowym obsłużyć część ścieżki. Chociaż jest to bardzo przydatna technika, jest również bardzo podatna na nadużycia, co pozwala na potencjalne naruszenia bezpieczeństwa.
Większość normalnego routingu odbywa się za pomocą wielu urządzeń, znanych jako routery, które tworzą wiele sieci składających się na Internet. Urządzenia te są zaprogramowane za pomocą protokołów, które pozwalają im poznawać sąsiadów, a następnie decydować o najlepszej możliwej ścieżce, jaką należy obrać, kierując ruch sieciowy z jednego komputera na drugi. Z drugiej strony routing źródłowy korzysta z niektórych opcjonalnych funkcji protokołu internetowego (IP), który usuwa podejmowanie decyzji z routerów i przekazuje je w ręce użytkownika lub komputera źródłowego.
Istnieją dwie możliwe modyfikacje routingu źródłowego, które komputer może wprowadzić do pakietu danych w drodze do sieci: ścisłe lub luźne. Dzięki ścisłym definicjom źródła dokładna ścieżka, którą powinien obrać pakiet, od jednego routera do drugiego, jest określana, zanim pakiet opuści komputer źródłowy. Jednak luźny routing źródłowy daje pakietowi kilka określonych punktów routera i pozwala innym routerom decydować po drodze. Jest to przydatne na przykład przy wysyłaniu pakietu przez routery sieci lokalnej do routera będącego bramą, a następnie na określony adres. Routery sieci lokalnej można pominąć, ale można określić bramę i inne routery.
Możliwość korzystania z routingu źródłowego jest przydatna do różnych celów testowania i rozwiązywania problemów. Jeden z takich celów jest podobny do uczenia się ulic sąsiedzkich, w którym sieć jest wykrywana przez śledzenie trasy pakietów od jednego routera do drugiego. Może być również przydatny do wykrywania potencjalnych wąskich gardeł w sieci i jest często używany przez dostawców usług internetowych (ISP) w celu zapewnienia, że niepotrzebny ruch danych nie próbuje wykorzystać ich głównej sieci szkieletowej. Metoda ta jest również wykorzystywana do nikczemnych celów, umożliwiając atakującemu uzyskanie dostępu do komputerów w sieci prywatnej podszywając się pod komputer w tej sieci prywatnej.
Gdy sieci bezprzewodowe stały się popularne, opracowano inną technikę, zwaną dynamicznym routingiem źródłowym (DSR), która wykorzystuje routing źródłowy do wykrywania sieci bezprzewodowej. Sztuczka pojawiła się, ponieważ wiadomo, że węzły sieciowe często przychodzą i odchodzą z niektórych typów sieci bezprzewodowych, zwanych sieciami ad-hoc, komputery potrzebowały nowego sposobu na szybkie wykrywanie tras w sieci. W ten sposób trasa od komputera źródłowego przez sieć jest wykrywana w locie, w razie potrzeby, zamiast ciągłego zasypywania sieci przez węzły zaktualizowanymi informacjami, gdy węzły pojawiają się i znikają.