Конфиги Firewall я уже приводил, но лучше повторю:
Код: Выделить всё
###FIREWALL###
/sbin/ipfw -q -f flush #SBROS VSEH PRAVIL
fwcmd="/sbin/ipfw -q" #OBOZNACHENIE KOMANDI
LIF="rl0" #LOKALNI INTERFEIS
LIP="`ifconfig $LIF|awk '/inet/{print \$2}'`" #LOKALNI IP
LAN="$LIP/24" #LOKALNAYA SET
WIF="bfe0" #VNESNI INTERFEIS
WIP="`ifconfig $WIF|awk '/inet/{print \$2}'`" #VNESHNI IP
WAN="$WIP/24" #VNESHNAYA SET
##################################################
${fwcmd} add 1100 allow ip from any to any via lo0
${fwcmd} add 1110 deny ip from any to 127.0.0.0/8
${fwcmd} add 1120 deny ip from 127.0.0.0/8 to any
${fwcmd} add 1150 allow ip from me to me
${fwcmd} add 1200 deny ip from $LAN to any in via $WIF
${fwcmd} add 1210 deny ip from $WAN to any in via $LIF
#${fwcmd} add 2000 deny ip from any to 10.0.0.0/8 in via $WIF
${fwcmd} add 2005 deny ip from any to 172.16.0.0/12 in via $WIF
#${fwcmd} add 2010 deny ip from any to 192.168.0.0/16 in via $WIF
${fwcmd} add 2050 deny ip from any to 0.0.0.0/8 in via $WIF
${fwcmd} add 2055 deny ip from any to 169.254.0.0/16 in via $WIF
${fwcmd} add 2060 deny ip from any to 244.0.0.0/4 in via $WIF
${fwcmd} add 2065 deny ip from any to 240.0.0.0/4 in via $WIF
#${fwcmd} add 2100 deny ip from 10.0.0.0/8 to any out via $WIF
${fwcmd} add 2105 deny ip from 172.16.0.0/12 to any out via $WIF
#${fwcmd} add 2110 deny ip from 192.168.0.0/16 to any out via $WIF
${fwcmd} add 2175 deny ip from 0.0.0.0/8 to any out via $WIF
${fwcmd} add 2180 deny ip from 169.254.0.0/16 to any out via $WIF
${fwcmd} add 2185 deny ip from 224.0.0.0/4 to any out via $WIF
${fwcmd} add 2190 deny ip from 240.0.0.0/4 to any out via $WIF
${fwcmd} add 3000 allow ip from any to $LAN in via $LIF
${fwcmd} add 3005 allow ip from $LAN to any out via $LIF
${fwcmd} add 3010 allow icmp from any to $WIP icmptypes 0,3,4,11,12 in via $WIF
${fwcmd} add 3011 allow icmp from $WIP to any icmptypes 3,8,12 out via $WIF
${fwcmd} add 3012 allow icmp from $WIP to any frag out via $WIF
${fwcmd} add 3014 deny icmp from any to any in via $WIF
${fwcmd} add 3100 allow udp from any to $WIP 53 in via $WIF
${fwcmd} add 3110 allow udp from $WIP 53 to any out via $WIF
${fwcmd} add 3120 allow udp from any 53 to $WIP in via $WIF
${fwcmd} add 3130 allow udp from $WIP to any 53 out via $WIF
${fwcmd} add 3200 allow udp from any to any 123 via $WIF
${fwcmd} add 3300 allow tcp from any to $WIP 53 in via $WIF setup
###############################################################
#SSH CONNECTION#
${fwcmd} add 3450 deny tcp from any to me dst-port 22
${fwcmd} add 3455 deny tcp from any to me dst-port 2298
${fwcmd} add 3505 deny tcp from any to me dst-port 81
${fwcmd} add 3555 deny tcp from any to me dst-port 5222
###############################################################
${fwcmd} add 10000 nat 1 all from any to any via $WIF
${fwcmd} add 65533 allow all from any to any
${fwcmd} add 65534 deny all from any to any
firewall_nat_enable="YES"
firewall_enable="YES"
firewall_script="/etc/rc.firewall.my"
Ещё раз повторюсь, что над FreeBSD есть вышестоящий шлюз, поэтому во внешнюю сетевуху FreeBSD смотрит сетка 192.168.99.*
С такой конфигурацией firewall, у меня на компах которые идут после FreeBSD нет интернета, и на FreeBSD похоже тоже нет. По логам squid на FreeBSD видно, что не получается подключиться к вышестоящему шлюзу 192.168.99.*
Но когда я в скрипте за комментировал строчку:
${fwcmd} add 10000 nat 1 all from any to any via $WIF # заварачиваем все что проходит через внешний интерфейс в нат
То всё начинает работать... И ИНЕТ на компах которые подключены к внутренней сетевой FreeBSD и т.д.
Почему не работает NAT, потому что есть вышестоящий ШЛЮЗ? Если напрямую к ИНЕТУ подключу freebsd, то NAT должен же заработать?
Заранее спасибо...