FreeBSD простой NAT
От: Anton Batenev Россия https://github.com/abbat
Дата: 29.11.13 12:02
Оценка:
Hello!

Я или заработался или чего-то забыл, прошу помощи. Есть два сервера. Один имеет доступ в интернет, второй нет и подключен к первому в отдельный порт. Нужно сделать возможность ходить в интернет второму и при этом, чтобы он был доступен с первого сервера по ssh. Исходные данные:

Первый сервер:

igb0 — интернет
igb1 — 192.168.2.1/24

net.inet.ip.forwarding=1

Второй сервер:

igb0 — 192.168.2.2/24 gateway 192.168.1.1

Создаю правила NAT на первом сервере:

# ipfw nat 1 config if igb0 log same_ports
# ipfw add 100 nat 1 all from 192.168.2.2 to not me in via igb1
# ipfw add 200 nat 1 all from not me to me in via igb0
# ipfw add 300 allow ip from any to any

Моя логика по правилам следующая — когда приходит пакет со 2-го сервера и он адресован не первому, то он должен попадать в NAT и уходить во внешний мир (правило 100) в противном случае правило 300. Когда приходит пакет из внешнего мира, то он попадает в правило 200 и, если нет совпадений в таблице NAT, срабатывает правило 300, в противном случае пакет отправляется на второй сервер.

Однако, когда я прописываю эти правила, первый сервер перестает быть виден из интернета :\ Последний раз я это делал много лет назад и сейчас возможно что-то упускаю, при этом гугление не дает понять что именно. Посмотрите пожалуйста свежим взглядом, что не так?
avalon/1.0.433
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.