I router sono i sistemi he hanno il compito di instradare correttamente i pacchetti che ricevono, verso la destinazione desiderata. I sistemi GNU/Linux con almeno due interfacce di rete, possono fungere da router, abilitando l’inoltro dei pacchetti da un’interfaccia all’altra, inserendo il valore ‘1’ nel file /proc/sys/net/ipv4/ip_forward (per IPv4) con il comando
# echo "1" > /etc/sysconfig/network/ip_forward
o nel file /proc/sys/net/ipv6/conf/all/forwarding (per IPv6) con il comando
# echo "1" > /proc/sys/net/ipv6/conf/all/forwarding
Poiché tale impostazione è relativa al filesystem virtuale /proc, non viene memorizzata
sulla memoria di massa. Pertanto se si desidera che tale impostazione sia attivata ad ogni
avvio del sistema, è necessario impartire tale comando ogni volta che il sistema viene riavviato
(magari per mezzo di un apposito script).
Un router può funzionare in maniera statica o dinamica, o meglio le regole di instradamento dei pacchetti memorizzate al suo interno possono essere memorizzate in maniera statica, nel senso che la variazione di una di essa comporta la variazione manuale della stessa da parte dell’amministratore, o dinamica, nel senso che le regole possono essere modificate dinamicamente in seguito ad un’opportuna segnalazione ricevuta da parte di un altro router.
Su un sistema GNU/Linux, la gestione dinamica del routing può essere gestita dal daemon gated40 (man page gated(8)).
[da completare ...]