Простейший NAT на Linux

Внимание! Внимание! Внимание!

Это учебный пример. Он отлично работает в учебных целях. Однако, не применяйте его в рабочей конфигурации.

Вы же понимаете, что делаете? Тогда погнали! :))

Прежде всего, нужно чтобы у нас нормально работала сеть. Загляните в раздел «Диагностика сети».

Разрешаем пересылку пакетов между интерфейсами:

echo 1 > /proc/sys/net/ipv4/ip_forward

В iptables разрешаем NAT (маскировку) с «внешнего» (напр. eth5) интерфейса:

iptables -t nat -A POSTROUTING -o eth5 -j MASQUERADE

Что-то пошло не так?

Убедитесь, что включена пересылка пакетов между интерфейсами (вы должны увидеть «1»):

cat /proc/sys/net/ipv4/ip_forward

Лишние правила в iptables , особенно в таблице NAT, могут мешать. Проверьте:

iptables -L -v -n -t nat

При необходимости, очистите правила:

iptables -F POSTROUTING -t nat

И конечно же убедитесь, что сеть работает: «Диагностика сети»