Pojem IP Forwarding popisuje odesílání síťového balíčku z jednoho síťového rozhraní do jiného na stejném zařízení. Mělo by být povoleno, pokud chcete, aby váš systém fungoval jako směrovač, který přenáší pakety IP z jedné sítě do druhé.
V systému Linux má jádro Linux proměnnou s názvem 'ip_forward', která udržuje tuto hodnotu. Je přístupný pomocí souboru '/ proc / sys / net / ipv4 / ip_forward'. Výchozí hodnota je 0, což znamená žádné předávání IP, protože běžný uživatel, který provozuje jeden počítač bez dalších komponent, to nepotřebuje, obvykle. Naproti tomu pro směrovače, brány a servery VPN je to zcela zásadní vlastnost.
Dále vám vysvětlíme, jak dočasně a trvale povolit předávání IP.
Přeposílání IP jako dočasné řešení
Chcete-li povolit tento parametr jádra za běhu, máte dvě možnosti. Možnost 1 jednoduše uloží hodnotu 1 do proměnné shora následujícím způsobem:
# echo 1> / proc / sys / net / ipv4 / ip_forwardMožnost 2 používá příkaz 'sysctl', který umožňuje upravit různé parametry jádra i za běhu [2]. Jako administrativní uživatel spusťte následující příkaz:
# sysctl -w net.ipv4.ip_forward = 1Pamatujte, že toto nastavení se okamžitě změní. Výsledek také nebude zachován po restartu systému.
Uložené hodnoty můžete dotazovat takto:
# cat / proc / sys / net / ipv4 / ip_forwardTento příkaz vrací hodnotu 0 pro žádné přesměrování IP a hodnotu 1 pro přesměrování IP povoleno. Alternativně vám použití 'sysctl' také zobrazí aktuální stav:
# sysctl net.ipv4.ip_forwardsíť.ipv4.ip_forward = 0
#
Trvalé povolení přesměrování IP
K dosažení tohoto cíle je třeba provést několik dalších kroků. Nejprve upravte soubor '/ etc / sysctl.conf '. Vyhledejte řádek obsahující položku „#net.ipv4.ip_forward = 1 ”a odstraňte # na začátku řádku.
Poté soubor uložte a spusťte příkaz 'sysctl', abyste povolili upravená nastavení:
# sysctl -p / etc / sysctl.konfMožnost '-p' je zkratka pro '-load' a vyžaduje název konfiguračního souboru.
Dále restartujte systém souborů proc, který poskytuje informace o stavu jádra Linuxu, pomocí následujícího příkazu:
# / etc / init.d / procps restartAsi v roce 2015 byl název souboru zkrácen z „procps.sh 'to' procps '. Na starších systémech Debianu je tedy skript, který musíte vyvolat, pojmenován 'procps.místo toho.
Jednání s Systemd
Další překážka přišla s vydáním Systemd verze 221. Přesměrování IP je ve výchozím nastavení zakázáno a povolení vyžaduje, aby tam byl další soubor. Pokud tam ještě není, jednoduše jej přidejte. Název souboru se skládá z názvu síťového rozhraní následovaného příponou '.síť ', například' eth0.síť 'pro síťové rozhraní' / dev / eth0 '. Jak je uvedeno v dokumentaci [4], ostatní rozšíření jsou ignorována.
Následující fragment kódu ukazuje nastavení síťového rozhraní '/ dev / tun0'. Obsahuje dvě části - „Shoda“ a „Síť“. V části Shoda definujte název síťového rozhraní a v části Síť povolte přesměrování IP.
# cat / etc / systemd / network / tun0.síť[Zápas]
Název = tun0
[Síť]
IPForward = ipv4
Závěr
Aktivace přesměrování IP pro IPv4 není záhadou. Jen pár kroků a ty jsou tam. Šťastné hackování!
Odkazy a reference
* [1] Nastavení Systemd-Networkd, Debian Wiki
* [2] Juergen Haas: Naučte se příkaz Linux sysctl
* [3] Systemd News pro verzi 221
* [4] Dokumentace pro Systemd