Materiały edukacyjne z informatyki
Proces wysyłania danych z hosta A do B w obrębie tej samej sieci przebiega następująco:
Trasowanie danych z hosta A z sieci A do hosta B znajdującego się w innej sieci B za pomocą routera C (router zwany bramką (gateway) to urządzenie (często komputer) zapewniający łączność między różnymi sieciami, posiada co najmniej dwa interfejsy sieciowe):
Decyzje dotyczące trasowania podejmowane są na podstawie tablic routowania tworzonych przez administratora sieci bądź przez protokoły routujące. Tablica ta kojarzy ze sobą interfejsy sieciowe routera i osiągalne przez nie sieci. Odwołując się do poprzedniego przykładu tablica routowania hosta A będzie miała nast. postać:
Destinatation (Cel) |
Gateway (Brama) |
Genmask (Maska sieci) |
Flags (Flagi) |
Metric | Ref | Use | Iface |
---|---|---|---|---|---|---|---|
192.168.1.0 | 0.0.0.0 | 255.255.255.0 | U | 0 | 0 | 0 | eth0 |
127.0.0.0 | 0.0.0.0 | 255.0.0.0 | U | 0 | 0 | 0 | lo |
0.0.0.0 | 192.168.1.1 | 0.0.0.0 | UG | 0 | 0 | 0 | eth0 |
Wiersz trzeci zawiera definicję dla trasy domyślnej dla wszystkich datagramów, których adres przeznaczenia (symbolizowany przez 0.0.0.0, co oznacza wszystkie adresy IP) nie odpowiada poprzednim wpisom.
Tablica routingu routera łączącego dwie sieci o adresach 192.168.1.0/24 i 10.0.0.0/8 może wyglądać tak:
Destinatation (Cel) |
Gateway (Brama) |
Genmask (Maska sieci) |
Flags (Flagi) |
Metric | Ref | Use | Iface |
---|---|---|---|---|---|---|---|
192.168.1.0 | 0.0.0.0 | 255.255.255.0 | U | 0 | 0 | 0 | eth0 |
10.0.0.0 | 0.0.0.0 | 255.0.0.0 | U | 0 | 0 | 0 | eth1 |
127.0.0.0 | 0.0.0.0 | 255.0.0.0 | U | 0 | 0 | 0 | lo |
0.0.0.0 | 10.0.0.1 | 0.0.0.0 | UG | 0 | 0 | 0 | eth1 |
Flagi oznaczają: U – dana trasa istnieje i nie sprawia problemów; G - wpis dotyczy bramki; H – wpis dotyczy jednego komputera; D – wpis zmieniony przez protokół ICMP.
Routing w połączeniach tworzących tzw. szkielet (backbone) Internetu odbywa się za pomocą protokołów routingu dynamicznego (m.in. RIP – Routing Information Protocol, BGP – Border Gateway Protocol, EGP – Exterior Gateway Protocol, OSPF – Open Shortest Path First).
Trasowanie pakietów wychodzących z sieci lokalnej, w której znajduje się wiele komputerów o adresach prywatnych, do internetu poprzez bramę sieciową, która ma przypisany jeden publiczny adres IP, realizowane jest jako tzw. NAT (ang. Network Address Translation). Zazwyczaj podstawową rolą jest tu zamiana prywatnego adresu źródłowego hosta z sieci lokalnej na adres publiczny routera (bramy), dzięki czemu wiele komputerów z sieci prywatnej łączy się z internetem.
># route
- wyświetla tablicę
# route add -net 127.0.0.0 netmask 255.0.0.0 [dev] lo
#route add -net 192.168.0.0 netmask 255.255.255.0 [dev] eth0
#route add -net 10.0.0.0 netmask 255.0.0.0 [dev] eth1
#route add default gw 10.0.0.1
- konfiguracja tablicy routingu routera z poprzednich przykładów
# echo "1" > /proc/sys/net/ipv4/ip_forward
- włączenie routowania w Linuksie
# ip route show
- informacje o tablicy routingu
# ip route add 127.0.0.0/8 dev lo scope link
# ip route add 192.168.1.0/24 dev eth0 scope link
# ip route add 10.0.0.0/8 dev eth1 scope link
# ip route add default via 10.0.0.1 dev eth1
# echo "1" > /proc/sys/net/ipv4/ip_forward
- konfiguracja i uruchomienie routingu
Routing źródłowy pozwala kierować przesyłaniem pakietów na podstawie adresu źródłowego. Dzięki temu można przekierowywać transmisję z wybranych hostów sieci lokalnej na dowolnie wybrane (różne) dostępne routery.