ADSL-модем D-Link 2540U, настроен в режиме роутера.
IP Модема: 192.168.1.1 Сеть: 192.168.1.0/24
Включен NAT, Firewall, DMZ 192.168.1.6, IP динамический, но зарегистрирован DynDNS: transmission.wephop.net
В сети машина FreeBSD 7 с одной сетевой платой, подключена непосредственно к модему
IP машины: 192.168.1.6, IPFW, NATD.
Нужно сделать, чтобы при обращении на transmission.wephop.net или непосредственно внешний IP, все запросы попадали на 192.168.1.6.
Интернет на машине работает, но нет доступа из вне.
Проблема в том, что запросы проходят, но не уходят ответы. Например, при пинге пакеты попадают на локальный IP, но при обращении telnet'om к ftp или ssh показывает таймауты, при обращении по локальному IP все работает.
Код: Выделить всё
# ping transmission.wephop.net
PING transmission.wephop.net (92.112.151.53): 56 data bytes
64 bytes from 192.168.1.6: icmp_seq=0 ttl=64 time=1.092 ms
64 bytes from 192.168.1.6: icmp_seq=1 ttl=64 time=0.959 ms
64 bytes from 192.168.1.6: icmp_seq=2 ttl=64 time=0.633 ms
64 bytes from 192.168.1.6: icmp_seq=3 ttl=64 time=0.932 ms
64 bytes from 192.168.1.6: icmp_seq=4 ttl=64 time=0.654 ms
--- true.mine.nu ping statistics ---
5 packets transmitted, 5 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 0.633/0.854/1.092/0.180 ms
Код: Выделить всё
#NAT For router my FREEBSD (Oleg)
${FwCMD} add divert natd ip from ${NetIn}/${NetMask} to any out via ${LanOut}
${FwCMD} add divert natd ip from any to ${IpOut} in via ${LanOut}
Если сформировать правила следующим образом:
Код: Выделить всё
${FwCMD} add divert natd ip from 192.168.1.0/24 to any out via rl0
${FwCMD} add divert natd ip from any to transmission.wephop.net in via rl0
Дальше приложены резельтаты выполнения некоторых команд и содержимое конфигурационных файлов:
Код: Выделить всё
# cat /etc/rc.conf
...
# Enable ipfw and open it by default since we have PF
firewall_enable="YES"
firewall_type="open"
gateway_enabled="YES"
#NATD Section
natd_enable="YES"
natd_interface="rl0"
natd_flags="-m -u"
...
Код: Выделить всё
# ifconfig
rl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=8<VLAN_MTU>
ether 00:15:58:6e:96:d9
inet 192.168.1.6 netmask 0xffffff00 broadcast 192.168.1.255
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
pfsync0: flags=0<> metric 0 mtu 1460
syncpeer: 224.0.0.240 maxupd: 128
pflog0: flags=0<> metric 0 mtu 33204
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x4
inet6 ::1 prefixlen 128
inet 127.0.0.1 netmask 0xff000000
Код: Выделить всё
# netstat -rn
Routing tables
Internet:
Destination Gateway Flags Refs Use Netif Expire
default 192.168.1.1 UGS 0 6968 rl0
127.0.0.1 127.0.0.1 UH 0 40 lo0
192.168.1.0/24 link#1 UC 0 0 rl0
192.168.1.1 00:1b:11:75:69:bb UHLW 2 918 rl0 1185
192.168.1.3 00:19:21:36:33:89 UHLW 1 30 rl0 937
192.168.1.6 00:15:58:6e:96:d9 UHLW 1 48 lo0
192.168.1.255 ff:ff:ff:ff:ff:ff UHLWb 1 85 rl0
Internet6:
Destination Gateway Flags Netif Expire
::1 ::1 UHL lo0
fe80::%lo0/64 fe80::1%lo0 U lo0
fe80::1%lo0 link#4 UHL lo0
ff01:4::/32 fe80::1%lo0 UC lo0
ff02::%lo0/32 fe80::1%lo0 UC lo0
Код: Выделить всё
# ipfw show
00100 0 0 check-state
00200 0 0 allow ip from any to any via lo0
00300 4 214 allow ip from any to any via rl0
00400 0 0 deny ip from any to 127.0.0.0/8
00500 0 0 deny ip from 127.0.0.0/8 to any
65535 4061 1480369 allow ip from any to any