iptables NAT

1. Включаем forwarding 
Открываем любимым редактором файл /etc/sysctl.conf
Приводим строчку net.ipv4.ip_forward к виду net.ipv4.ip_forward=1
Чтобы изменения вступили в силу выполняем команду
# sysctl -p
net.ipv4.ip_forward = 1

2.Важно перед каждым включением NAT особенно в процессе экспериментов очищайте таблицу nat.
#iptables -t nat -F
3.Включаем NAT
Для случая когда интерфейс смотрящий во внешнюю сеть имеет статический ip адрес.
Трансляция по источнику(SNAT)
#iptables -t nat -A POSTROUTING -o eth1 -j SNAT --to-source 192.168.1.251
В нашем случае интерфейс смотрящий во внешнюю сеть eth1 который имеет статический ip адрес 192.168.1.251
Если нет запрещающих правил то в этом случае все транзитные пакеты будут транслироваться во внешнюю сеть с ip адресом 192.168.1.251


В случае если внешний ip адрес динамический необходимо воспользоваться маскированием(MASQUERADE)
#iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
Все отличие от SNAT в том что в этом случае iptables каждый раз будет опрашивать интерфейс чтобы узнать текущий ip адрес, что может создать дополнительную нагрузку.


Комментарии

Популярные сообщения