Дано
три машины:
1 OpenBSD 4.6 с 3 сетевыми картами
ne3 192.168.1.2 (к ней подключен ADSL модем)
vr0 10.0.0.1
rl1 10.0.1.1
2 Gentoo x86
eth0 10.0.0.2
3 Ubuntu 9.04
eth0 10.0.1.2
Как видно Gentoo и Ubuntu соединяются с сервером посредством обычной витой пары.
Требуется обеспечить всем компьютерам доступ в интернет через ADSL соединениеЧто сделано:
После прочтения руководства по pf сдеал следующее:
Решил связать вначале два компьютера (Gentoo и OpenBSD)
pf.conf
$ext_if = "ne3" #192.168.1.2 Сетевая на которой висит модем
$int_if = "vr0" #10.0.0.1 Сетевая, которая соединяется с Gentoo
nat on $ext_if from $int_if:network to any -> $ext_if
sysctl.conf
net.inet.ip.forwarding =1
net.inet.gre.allow=1
Соответственно в Gentoo:
route add default gw 10.0.0.1 eth0
Далее в OpenBSD:
ppp -ddial pppoe
Интернет работает, из под BSD можно нормально бегать по сайтам
Пробуем зайти в интернет из под Gentoo.. ноль реакции
Хотя:
pfctl -sn
nat on ne3 inet from 10.0.0.0/24 to any -> 192.168.1.2
То есть ip вроде транслируются, а траффик не идет.
Пробовал:
nat on $ext_if from $int_if:network to any -> tun0
Тогда:
pfctl -sn
nat on ne3 inet from 10.0.0.0/24 to any -> 95.158.250.94
А при ifconfig:
tun0: flags=8051<UP> mtu 1492
priority: 0
groups: tun, egress
media: Ethernet autoselect
status:active
inet 95.158.250.94 --> 10.130.192.1 netmask0xffffffff
то есть 95.158.250.94 - это внутренний ip, который мне дает провайдер, 10.130.192.1 -внешний ip.
Результат тот же.