Я сразу оговорюсь. Freebsd я последний раз видел и ставил и настраивал 4-ю версию в 2001 году. Я отлично знаю как данное решение делать на Linux. А в freebsd столкнулся с сложностями, суть которых не понимаю.Потребовалось поднять pptp сервер для пары человек на FreeBSD.
Сервер. Один интерфейс. em0. Смотрит в интернет. Реальный IP.
Поставил poptop (pptpd). Настроил (благо элементарно). Получаем подключенье. Т.е. клиент соединяется.
Адрес ppp сервер 192.168.0.1 остальные адреса для клиентов в этой же сетке с маской 24.
Сразу смутило 2 вещи:
1. Интерфейс на фре почемуто tun (тогда как на линуксе ppp).
2. С клиента не пингуется ppp адрес сервера, однако в легкую пингуется внешний адрес сервера.
далее осталось настроить NAT.
делал по одной из многочисленных инструкций. Т.к. сразу казалось что ничего сложного нет.
1. Добавил в /etc/rc.conf для ната строки:
gateway_enable="YES"
arpproxy_all="YES"
firewall_enable="YES"
firewall_type="OPEN"
natd_enable="YES"
natd_interface="em0"
natd_flags=""
Потом выполнил комманды которые должны были завернуть весь трафик с сетки 192.168.0.0\24:
/sbin/ipfw add allow ip from any to any via tun0
/sbin/ipfw -q add divert natd ip from 192.168.0.0/24 to any out via em0
/sbin/ipfw -q add divert natd ip from any to 195.XXX.XXX.XXX in via em0
По идее должно работать. Но не работает.
Демон natd запущен.
Подскажите - где я не прав?