Dużo szukałem w Google. Jest tylko udokumentowane, jak włączyć przekazywanie IP w jądrze Linuksa, ale nie WHEN
i WHY
muszę go włączyć. Byłbym wdzięczny za radę.
Kiedy i dlaczego muszę to włączyć? (Na przykład, gdy instaluję mostek ?, lub podczas korzystania z iptables? Lub podczas korzystania route add
?)
(Dobre linki są mile widziane, ale nie udało mi się znaleźć.)
Dziękuję Ci bardzo!
Jan
linux
networking
Jan
źródło
źródło
Odpowiedzi:
Przekazywanie IP powinno być włączone, jeśli chcesz, aby system działał jak router, czyli przesyłanie pakietów IP z jednej sieci do drugiej.
W najprostszym przypadku rozważ serwer z dwoma fizycznymi portami Ethernet, który ma łączyć się z dwiema różnymi sieciami (powiedzmy, że twoja sieć wewnętrzna i świat zewnętrzny są dostarczane przez modem DSL). Jeśli po prostu połączysz i skonfigurujesz te dwa interfejsy, system może komunikować się w dowolnej sieci. Jednak pakiety z jednej sieci nie mogą podróżować do drugiej sieci, ponieważ przekazywanie nie jest włączone.
Rozważ konkretny przykład „dodawania trasy”. Jeśli masz dwa interfejsy sieciowe, dodasz co najmniej dwie trasy, po jednej dla każdego interfejsu. Kiedy jądro zastanawia się, gdzie wysłać pakiet sieciowy, wybierze najbardziej konkretną odpowiednią trasę, a następnie wyśle ją do tego interfejsu.
Jeśli jednak przekazywanie jest wyłączone, jądro najpierw sprawdzi, z którego interfejsu pochodzi pakiet. Jeśli nie pochodzi z tego samego interfejsu, jądro go odrzuci.
EDYCJA : Najpierw zauważ, że możesz używać routera bez dwóch fizycznych interfejsów sieciowych. Na przykład, jeśli używasz sieci VLAN , serwer może przesyłać pakiety IP między sieciami VLAN, ale ma tylko jeden fizyczny interfejs sieciowy. Jest to tak zwany jednoręki router . Jednak w najprostszym przypadku tak można powiedzieć, że jeśli masz tylko jeden fizyczny interfejs sieciowy, nie musisz włączać przekazywania IP.
Przekazywanie IP obejmuje przesyłanie pakietów między interfejsami sieciowymi (rzeczywistymi lub wirtualnymi), więc myślę, że gdybyś miał dwa interfejsy w tej samej sieci, musiałbyś włączyć przekazywanie adresów IP, aby umożliwić przenoszenie pakietów między interfejsami. Ponieważ jednak interfejsy są już w tej samej sieci, przesyłanie pakietów między nimi nie ma większego sensu.
źródło
Według Wikipedii ...
Przekazywanie IP zwane także routingiem internetowym jest procesem stosowanym do określenia ścieżki, którą można wysłać pakiet lub datagram. Proces wykorzystuje informacje o routingu do podejmowania decyzji i ma na celu wysyłanie pakietu przez wiele sieci. Ogólnie rzecz biorąc, sieci są oddzielone od siebie routerami.
Jest to wymagane, gdy system ma być używany jako router. Sprawdź poniższy link, aby poznać dokładne wykorzystanie przekazywania IP. http://www.linuxjournal.com/content/linux-advanced-routing-tutorial ?
źródło