„Przekazywanie IP” jest synonimem „routingu”. Nazywa się to „przekazywaniem IP jądra”, ponieważ jest cechą jądra Linux.
Router ma wiele interfejsów sieciowych. Jeśli ruch przychodzi na jednym interfejsie, który pasuje do podsieci innego interfejsu sieciowego, router przesyła ten ruch do drugiego interfejsu sieciowego.
Powiedzmy, że masz dwie karty sieciowe, jedna (NIC 1) ma adres 192.168.2.1/24, a druga (NIC 2) to 192.168.3.1/24. Jeśli przekazywanie jest włączone, a na NIC 1 przychodzi pakiet z „adresem docelowym” 192.168.3.8, router ponownie wyśle ten pakiet z NIC 2.
Routery działające jako bramy do Internetu często mają domyślną trasę, dzięki której wszelki ruch, który nie pasuje do żadnej karty sieciowej, przechodzi przez kartę sieciową trasy domyślnej. Tak więc w powyższym przykładzie, jeśli masz połączenie internetowe na NIC 2, ustaw NIC 2 jako domyślną trasę, a następnie ruch przychodzący z NIC 1, który nie jest przeznaczony na coś na 192.168.2.0/24, zostanie skierowany przez NIC 2. Mam nadzieję, że istnieją inne routery po NIC 2, które mogą dalej je trasować (w przypadku Internetu, następnym skokiem byłby router twojego dostawcy usług internetowych, a następnie ich dostawcy router nadrzędny itp.)
Włączenie ip_forward
informuje system Linux, aby to zrobił. Aby miało to sens, potrzebne są dwa interfejsy sieciowe (dowolne 2 lub więcej przewodowych kart NIC, kart lub chipsetów Wi-Fi, łącza PPP przez modem 56k lub szeregowy itp.).
Podczas routingu bezpieczeństwo jest ważne i właśnie tam iptables
włącza się filtr pakietów Linuksa . Potrzebujesz więc iptables
konfiguracji zgodnej z Twoimi potrzebami.
Pamiętaj, że włączenie przekazywania z iptables
wyłączonymi i / lub bez uwzględnienia zapory ogniowej i bezpieczeństwa może pozostawić cię podatnym na zagrożenia, jeśli jedna z kart sieciowych będzie miała dostęp do Internetu lub podsieci, nad którą nie masz kontroli.