Wpisy tabeli routingu mają atrybut scope
. Chciałbym wiedzieć, w jaki sposób zmiana z global
na link
(lub odwrotnie) wpływa na system sieciowy.
Wpisy tabeli routingu mają atrybut scope
. Chciałbym wiedzieć, w jaki sposób zmiana z global
na link
(lub odwrotnie) wpływa na system sieciowy.
Odpowiedzi:
Spójrzmy na route scope
definicję w Linux
:
The scope of a route in Linux is an indicator of the distance to the
destination network.
Host
A route has host scope when it leads to a destination address on the local host.
Link
A route has link scope when it leads to a destination address on the local network.
Universe
A route has universe scope when it leads to addresses more than one hop away.
Jeśli więc zmienisz zakres trasy, komputer prawdopodobnie nie będzie mógł już łączyć się z siecią na tej trasie. Router po prostu nie przekazuje pakietu, który jest wysyłany do miejsca docelowego należącego do sieci lokalnej.
Należy zauważyć, że zakres nie odzwierciedla rozróżnienia między adresami niekierowalnymi (prywatnymi) a adresami routowalnymi (publicznymi).
Zarówno 10.0.0.1 (prywatny - niemożliwy do trasowania), jak i 8.8.8.8 (publiczny - routingowy) może mieć zasięg łącza lub uniwersalny (globalny). Jest konfigurowany przez administratora systemu.
Zakres wpływa na wybór adresu źródłowego.
W przypadku połączeń / skojarzeń, w których adres źródłowy nie jest jeszcze ustalony (np. Inicjowanie połączenia TCP, ale nie w przypadku reagowania na pakiet przychodzący), adres źródłowy zostanie wybrany w zależności od zakresu trasy, którą pakiet ma trafić.
Dlatego adresy mają również atrybut zasięgu.
Przykład, w którym nie następuje wybór adresu źródłowego: odpowiedź na przychodzące połączenie TCP lub pakiet ping zostanie odebrany z odwróconymi adresami IP (źródło → miejsce docelowe, miejsce docelowe → źródło), w przeciwnym razie inny host nie rozpozna pakietu jako odpowiedzi.
Przykład, w którym następuje wybór adresu źródłowego: ping xyz
lub telnet xyz
. Typowe programy nie mówią systemowi operacyjnemu, którego adresu źródłowego użyć (i jest to dobry nawyk). System operacyjny musi wybrać jeden i jest na to przygotowany: testuje potencjalny pakiet wychodzący dla trasy, na którą trafiłby (normalny routing używa tylko adresu docelowego, jeśli korzystasz z routingu zaawansowanego, pakiet nie będzie miał jeszcze adresu źródłowego! ). Wynikowy zakres ogranicza wybór do adresów z odpowiedniego zakresu na interfejsie wychodzącym, jeśli taki jest dostępny.