Routing
Quando si ha la necessità di incanalare il traffico dati verso determinati punti di snodo della rete (i gateway...), la suite net-tools mette a disposizione il comando route.
Per aggiungere una route statica ad una rete intera, ad esempio:
debian:~# route add -net 192.168.1.0 netmask 255.255.255.0 gw 10.0.0.254
Per definire, invece, il default gateway:
debian:~# route add default gw 192.168.1.1
Per rimuoverlo:
debian:~# route del default gw 192.168.1.1
Per visualizzare la tabella di routing:
debian:~# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
(il parametro *-n* serve a velocizzare l'operazione evitando il reverse lookup degli IP).
Allo stesso modo, per eliminare il routing verso un determinato host via gateway 192.168.1.1:
debian:~# route delete -host 192.106.2.1 -gateway 192.168.1.1
o per eliminare un'intera route:
debian:~# route del -net 192.168.1.0
Il discorso si complica se sopravviene la necessità di gestire più tabelle di routing contemporaneamente...
In questo caso la suite net-tools diventa inadatta e ci si deve affidare ad iproute2 che, sempre per mezzo del comando ip riesce a svolgere questo compito in maniera egregia.
I settaggi concernenti le tabelle di routing sono contenuti nel file /etc/iproute2/rt_tables:
debian:~# cat /etc/iproute2/rt_tables # reserved values # 255 local 254 main 253 default 0 unspec # # local # 1 inr.ruhep # # Special table for source routing. # See /etc/network/interfaces.