"unknown" ICMP packets on tun0

Thomas Krause freebsd-stable at chef-ingenieur.de
Sat Mar 25 09:48:09 UTC 2006


Hello,
I build an ADSL gateway with ppp and pf. I used the pf example
from the OpenBSD faq for my ruleset. Now I get lots of
ICMP blocks

000000 rule 2/0(match): block in on tun0: x.y.193.85 > x.y.193.85: 
[|icmp]
1. 005880 rule 2/0(match): block in on tun0: x.y.193.85 > x.y.193.85: 
[|icmp]
1. 309811 rule 2/0(match): block in on tun0: x.y.193.85 > x.y.193.85: 
[|icmp]
1. 999694 rule 2/0(match): block in on tun0: x.y.193.85 > x.y.193.85: 
[|icmp]
1. 999688 rule 2/0(match): block in on tun0: x.y.193.85 > x.y.193.85: 
[|icmp]
1. 999702 rule 2/0(match): block in on tun0: x.y.193.85 > x.y.193.85: 
[|icmp]

I've no idea, what causes the ICMP packets. The IP address is the
address I got from the ISP. This is my ruleset:

int_if = "fxp0"
ext_if = "tun0"
merlin = "172.16.4.4"
icmp_types = "echoreq"
priv_nets = "{ 127.0.0.0/8, 192.168.0.0/16, 172.16.0.0/12, 10.0.0.0/8 }"
comp3 = "192.168.168.2"

set block-policy return
set loginterface $ext_if
set skip on lo0

scrub in all

nat on $ext_if from $int_if:network to any -> $ext_if
rdr on $int_if proto tcp from any to any port 21 -> 127.0.0.1 port 8021
rdr on $ext_if proto tcp from any to any port 80 -> $comp3

block out all
block in all
block in log on $ext_if all

block drop in  quick on $ext_if from $priv_nets to any
block drop out quick on $ext_if from any to $priv_nets

pass in on $ext_if inet proto tcp from any to $ext_if \
    port auth flags S/SA keep state

pass in on $ext_if inet proto tcp from $merlin to $ext_if \
    port { smtp, ssh } flags S/SA keep state

pass in on $ext_if proto tcp from any to $comp3 port 80 \
     flags S/SA synproxy state

pass in on $ext_if inet proto tcp from port 20 to $ext_if \
     user proxy flags S/SA keep state

pass in inet proto icmp all icmp-type $icmp_types keep state

pass in  on $int_if from $int_if:network to any keep state
pass out on $int_if from any to $int_if:network keep state

pass out on $ext_if proto tcp all modulate state flags S/SA
pass out on $ext_if proto { udp, icmp } all keep state

Any idea?

Kind regards,
Thomas.




More information about the freebsd-pf mailing list