>>Народ, не запускается natd при загрузке!
>>
>>FreeBSD 5.4
>>
>>Ядро пересобрал: опции IPDIVERT, IPFIREWALL, и т.д. вписал.
>>
>>В rc.conf:
>>ifconfig ...
>>ifconfig ...
>>....
>>....
>>....
>>gateway_enable="YES"
>>natd_enable="YES"
>>natd_interface="ed0"
>>....
>>....
>>....
>>Приходиться вручную вводить:
>>natd -interface ed0 и все работает, пакетики ходют...
>>
>>В файре:
>>
>>ipfw add 100 divert natd from any to any via ed0
>>ipfw add 120 allow ip from any to any
>>
>>В логах смотрел, ничего по этому поводу
>>
>>ipfw2 initialed, divert enabled и т.д. в процессе загрузки видно...
>>
>>Да и что такое ipfw2?
>
>firewall_enable="YES"
Могу посоветовать использовать pf - Те же функции, но только правила на порядок короче пишутся:
http://www.opennet.dev/base/net/pf_faq.txt.html
http://www.dreamcatcher.ru//docs/pf.html
http://dreamcatcher.ru/docs/pf-faq-part2-rus.html
Вот маленькая настройка для НАТ:
в ядро:
device pf
device pflog
device pfsync
root@freebsd# cat /etc/rc.conf|grep -v '#'
gateway_enable="YES"
ifconfig_rl0="inet 192.168.10.1 netmask 255.255.255.0"
ifconfig_rl1="inet 192.168.129.146 netmask 255.255.240.0"
pf=YES
pf_rules="/etc/pf.conf"
pflog_enable="YES"
pflog_logfile="/var/log/pflog"
pflog_flags=""
root@freebsd# cat /etc/pf.conf|grep -v '#'
ext_if_1="rl1"
int_if="rl0"
table <users> persist file "/etc/users"
nat on $ext_if_1 inet from <users> to any -> $ext_if_1
pass on $ext_if_1 all
pass on $int_if all
root@freebsd# cat /etc/users|grep -v '#'
192.168.10.146/24
192.168.10.0/24
root@freebsd# ifconfig
rl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=8<VLAN_MTU>
inet6 fe80::20e:2eff:fe2f:8468%rl0 prefixlen 64 scopeid 0x1
inet 192.168.10.1 netmask 0xffffff00 broadcast 192.168.10.255
ether 00:0e:2e:2f:84:68
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
rl1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=8<VLAN_MTU>
inet6 fe80::230:4fff:fe25:7ab1%rl1 prefixlen 64 scopeid 0x2
inet 192.168.129.146 netmask 0xfffff000 broadcast 192.168.143.255
ether 00:30:4f:25:7a:b1
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
plip0: flags=108810<POINTOPOINT,SIMPLEX,MULTICAST,NEEDSGIANT> mtu 1500
pflog0: flags=141<UP,RUNNING,PROMISC> mtu 33208
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x5
inet 127.0.0.1 netmask 0xff000000
pfsync0: flags=0<> mtu 2020