>Как-то криво работает keep-state в freebsd 5.4
>как только проходит какой-то трафик через правило 8000
>начинают сильно валить пакеты даже если на маршрутизатор их никто не шлет,
>
>какбудь-то гоняет пакеты покругу. Через маршрутизатор трафик не проходит.
>если убрать из правил keep-state инет начинает работать, трафик идет по обоим
>каналам
>но естетсвенно tcp работает криво. Что не так с keep-state ?
>
># ipfw show
>06100 20
> 900 divert 8668 ip from any to 192.168.181.1 recv
>rl1
>06200 84
> 5280 divert 8669 ip from any to 192.168.182.1 recv rl1
>
>06500 0
> 0 check-state
>08000 12239324 601865712 prob 0.500000 divert 8668 ip from 172.18.0.0/22 to any
>out keep-state
>08600 462 105157 divert
>8669 ip from 172.18.0.0/22 to any out keep-state
>08700 20
> 4228 fwd 192.168.181.2 ip from 192.168.181.1 to any out
>08800 53
> 6901 fwd 192.168.182.2 ip from 192.168.182.1 to any out
>65010 0
> 0 allow ip from any to
>any via lo0
>65020 984 167457 allow
>ip from any to any via rl0
>65030 295 61321
>allow ip from any to any via rl1
>65535 308 29275
>deny ip from any to any Вот что говорит man ipfw по проводу keep-state правил:
The typical use of dynamic rules is to keep a closed firewall configura-
tion, but let the first TCP SYN packet from the inside network install a
dynamic rule for the flow so that packets belonging to that session will
be allowed through the firewall:
ipfw add check-state
ipfw add allow tcp from my-subnet to any setup keep-state
ipfw add deny tcp from any to any
A similar approach can be used for UDP, where an UDP packet coming from
the inside will install a dynamic rule to let the response through the
firewall:
ipfw add check-state
ipfw add allow udp from my-subnet to any keep-state
ipfw add deny udp from any to any