Nastavení statických směrovacích cest ve Fedoře

Routovací tabulka (tabulky) se nastavují příkazem ip route. Nejčastější operace je přídávání statických routovacích cest.

Nastavujeme routování příkazem ip

To se v linuxu dělá příkazem ip route add "dest" via "gw", kde „dest“ je cílová síť a „gw“ je router, přes který chceme packety do této cílové sítě dopravit. Např:

ip route add 10.0.0.0/8 via 192.168.0.1

Ostatní packety (obvykle směřující ven z naší sítě) se směřují na výchozí bránu sítě. Tu nastavíme:

ip route add default via "gw"

Tolik stručný úvod. Pokud náš stroj funguje jako server, je nutné tyto routovací cesty nastavit při každém startu. To se často dělá (pomocí příkazu ip) v souboru /etc/rc.d/rc.local, který se spouští po startu všech služeb.

Využíváme nástroje systému

Systémy postavené na Red Hat Linuxu (RHEL, Fedora, CentOS) nabízí lepší (ze systémového hlediska) možnost, jak nastavit statické směrovací cesty.

V adresáři /etc/sysconfig/network-script/ jsou soubory pro nastavení síťových rozhranní ifcfg-ethX, kde se jednotlivým rozhraní přiřazují adresy IP. Pro nastavení routovacích cest potřebujeme vytvořit soubor route-ethX, kde ethX je síťové rozhranní, přes které mají packety opustit náš router. Syntaxe souboru je stejná jako syntaxe příkazu ip route add. Tedy vše, co bychom chtěli zapsat za ip route add napíšeme jako jednotlivé řádky do souboru route-ethX.

Soubor route-eth0 pro nastavení směrování jako v předchozím příkladu by měl obsah:

# Router1
10.0.0.0/8 via 192.168.0.1

Řádky začínající znakem „#“ jsou ignorování a slouží jako poznámky.

Poznámka: výchozí brána

Výchozí bránu také můžeme nastavit v route-ethX přídáním řádku default via "gw", ale lepší je nastavit ji v souboru /etc/sysconfig/network, např:

NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=centos51
GATEWAY=192.168.0.128

Nastavení IP_FORWARD

Pro funkční routování je nutné ještě nastavit ip_forward. Jinak by jádro zahazovalo packety, které mu nepatří (tj ty, které nepatří do sítí nastavených na rozhranních). To se nastavuje v souboru /etc/sysctl.conf/

net.ipv4.ip_forward = 1
Příspěvek byl publikován v rubrice Fedora, Linux. Můžete si uložit jeho odkaz mezi své oblíbené záložky.