>Прошу прощения, что пишу сюда, но мой вопрос тесно связан с настройкой
>ipfw.
>
>ОС - FreeBSD 5.4
>Внешний интерфейс - fxp0.
>Для соединения с провайдером поднят PPPoE (tun0).
>Для объединения двух контор поднят VPN при помощи mpd (ng0).
>fxp0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
> inet 195.x.x.111 netmask 0xffffffff
>broadcast 195.x.x.x
>tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1492
> inet 195.x.x.111 --> 195.x.x.20 netmask 0xffffffff
> Opened by PID 209
>
>ng0: flags=8890<POINTOPOINT,NOARP,SIMPLEX,MULTICAST> mtu 1500
>
>Вопрос состоит в следующем:
>Как работает такая связка?route default на tun0 195.x.x.20
Пакеты для второй конторы инкапсулируются в PPP (ng0) , далее
инкапсулируются в PPP (tun0), далее в Ethernet fxp0.
>На каком интерфейсе надо поднимать NAT?
Лучше на двух (tun0 и fxp0), то есть два natd и два /etc/natd.conf .
>Если из локалки идет пакет на www.ru 80, то в какой последовательности
>он проходит tun0 и fxp0? И как идет ответ?
fxp1-->tun0(NAT1)-->fxp0(NAT2) . Обратно, в обратной последовательности.
NAT2 пакет не обрабатывается, если в /etc/natd2.conf
unregistered_only yes
Или писать правильные сети и маски для divert NAT интерфейса fxp0 .
Если пакет идет на 195.x.x.x , fxp1-->fxp0(NAT2).
Обратно, в обратной последовательности.
>Как идет пакет, предназначеный для второй конторы через tun0 fxp0 и ng0?
fxp1-->ng0-->tun0(NAT1)-->fxp0(NAT2) . Обратно, в обратной последовательности.
Про MTU не забудь.
>Перекурил кучу документации, от шаманских плясок вокруг ipfw голова кругом идет.
>Если от ответа достигну просветления, постараюсь более не беспокоить.
Вот тут еще глянь.
https://www.opennet.ru/openforum/vsluhforumID10/3273.html
На сайте примеров много на эту тему.