«IP-пересылка» является синонимом «маршрутизации». Это называется «переадресация IP-адресов ядра», потому что это особенность ядра Linux.
Маршрутизатор имеет несколько сетевых интерфейсов. Если трафик поступает на один интерфейс, который соответствует подсети другого сетевого интерфейса, маршрутизатор затем перенаправляет этот трафик на другой сетевой интерфейс.
Итак, допустим, у вас есть две NIC, одна (NIC 1) находится по адресу 192.168.2.1/24, а другая (NIC 2) - 192.168.3.1/24. Если переадресация включена, и пакет поступает на NIC 1 с «адресом назначения» 192.168.3.8, маршрутизатор повторно отправит этот пакет из NIC 2.
Маршрутизаторы, работающие в качестве шлюзов в Интернет, обычно используют маршрут по умолчанию, при котором любой трафик, который не соответствует ни одной сетевой карте, будет проходить через сетевой адаптер по умолчанию. Таким образом, в приведенном выше примере, если у вас есть подключение к Интернету на NIC 2, вы устанавливаете NIC 2 в качестве маршрута по умолчанию, и тогда любой трафик, поступающий с NIC 1, который не предназначен для чего-то на 192.168.2.0/24, будет идти через NIC 2. Надеемся, что есть другие маршрутизаторы, кроме NIC 2, которые могут дополнительно маршрутизировать его (в случае с Интернетом следующим переходом будет маршрутизатор вашего провайдера, а затем их провайдерский маршрутизатор и т. д.)
Включение ip_forward
говорит вашей системе Linux сделать это. Для того, чтобы это было значимым, вам нужно два сетевых интерфейса (любые 2 или более проводных плат NIC, Wi-Fi или чипсетов, PPP-соединения через модем 56k или последовательный порт и т. Д.).
При выполнении маршрутизации важна безопасность, и в этом iptables
участвует фильтр пакетов Linux . Поэтому вам потребуется iptables
конфигурация, соответствующая вашим потребностям.
Обратите внимание, что включение переадресации с iptables
отключенным и / или без учета брандмауэра и безопасности может сделать вас уязвимым, если один из сетевых адаптеров подключен к Интернету или подсети, которую вы не можете контролировать.