Доброго времени всем.
Есть у меня 5.4-RELEASE FreeBSD
Надо пробросить порты для астериска на локальную машину: 5060 и 10000-20000.
Что сделал:
natd.conf
redirect_port udp 192.168.200.136:5060 5060
redirect_port udp 192.168.200.136:10000-20000 10000-20000rc.firewall в конец дописал
ipfw="/sbin/ipfw"
ext_ip="81.XXX.XXX.XXX"
server_ip="192.168.200.136"
ext_iface="fxp0"
#Asterisk port mapping
${ipfw} add 121 divert natd udp from any to ${ext_ip} dst-port 5060,10000-20000 in recv ${ext_iface}
${ipfw} add 122 divert natd udp from any to ${ext_ip} src-port 5060,10000-20000 in recv ${ext_iface}
${ipfw} add 123 divert natd udp from ${server_ip} to any dst-port 5060,10000-20000 out xmit ${ext_iface}
${ipfw} add 124 divert natd udp from ${server_ip} to any src-port 5060,10000-20000 out xmit ${ext_iface}
${ipfw} add 125 pass udp from any to ${server_ip} dst-port 5060,10000-20000 via any
${ipfw} add 126 pass udp from any to ${server_ip} src-port 5060,10000-20000 via any
${ipfw} add 127 pass udp from ${server_ip} to any dst-port 5060,10000-20000 via any
${ipfw} add 128 pass udp from ${server_ip} to any src-port 5060,10000-20000 via any
Делаю ipfw - flush; /bin/sh /etc/rc.firewall &
Получаю:
# ipfw - flush; /bin/sh /etc/rc.firewall &
ipfw: bad command `-'
# 00121 divert 8668 udp from any to 81.XXX.XXX.XXX dst-port 5060,10000-20000 in recv fxp0
00122 divert 8668 udp from any to 81.XXX.XXX.XXX src-port 5060,10000-20000 in recv fxp0
00123 divert 8668 udp from 192.168.200.136 to any dst-port 5060,10000-20000 out xmit fxp0
00124 divert 8668 udp from 192.168.200.136 5060,10000-20000 to any out xmit fxp0
00125 allow udp from any to 192.168.200.136 dst-port 5060,10000-20000
00126 allow udp from any to 192.168.200.136 src-port 5060,10000-20000
00127 allow udp from 192.168.200.136 to any dst-port 5060,10000-20000
00128 allow udp from 192.168.200.136 5060,10000-20000 to any
в итоге:
# ipfw show
00050 1855 649213 divert 8668 ip from any to any via fxp0
00100 72 7712 allow ip from any to any via lo0
00121 0 0 divert 8668 udp from any to 81.XXX.XXX.XXX dst-port 5060,10000-20000 in recv fxp0
00122 1 60 divert 8668 udp from any to 81.XXX.XXX.XXX src-port 5060,10000-20000 in recv fxp0
00123 0 0 divert 8668 udp from 192.168.200.136 to any dst-port 5060,10000-20000 out xmit fxp0
00124 0 0 divert 8668 udp from 192.168.200.136 5060,10000-20000 to any out xmit fxp0
00125 0 0 allow udp from any to 192.168.200.136 dst-port 5060,10000-20000
00126 8 4974 allow udp from any to 192.168.200.136 src-port 5060,10000-20000
00127 6 3568 allow udp from 192.168.200.136 to any dst-port 5060,10000-20000
00128 0 0 allow udp from 192.168.200.136 5060,10000-20000 to any
00200 0 0 deny ip from any to 127.0.0.0/8
00300 0 0 deny ip from 127.0.0.0/8 to any
65000 3663 1277480 allow ip from any to any
65535 66 33382 deny ip from any to any
регистрации астериска нет, пробую телнетом на 5060, получаю
telnet: Unable to connect to remote host: Connection refused
Подскажите, что я упустил, а то я по фре не сильный спец, я больше по линуксу.
UPD. Похоже, что тут все правильно и дело не ipfw. Разбираюсь дальше.