Subject: Bug in ipfilter / kernel?
To: None <netbsd-help@netbsd.org>
From: Christoph Dietzschold <cd@hoerbe.net>
List: netbsd-help
Date: 10/01/2004 18:25:42
Hi folks,
I'm sure that this is not the correct mailinglist, but before announcing a
bug I would like to ask for your opinion/help, may be it is just a
configuration error :)
I just did some network-configuration on my Netbsd 2.0 -RC1 box and got a
strange feature. Restarting the network after configuring a new ipv6 alias
for the gif0 interface, the /etc/rc.d/network restart command didn't finish.
An Errorcode, shown below was displayed on the Screen
uvm_fault (0xcc7389e0. 0x5f666000,0,1)-> 0xe
kernel: page fault trap, code=0
stopped in pid 12134.1 (ifconfig) at netbsd: in6ifa_ifpforlinklocal +0x10:
m
ovl 0(%edx),%eax
The chronological order of events was
- editing the /etc/ipf.conf
- /etc/rc.d/ipfilter restart
- the configuration worked well
- editing /etc/ifconfig.gif0
- added an ipv6 alias
- /etc/rc.d/network restart
-> error
To workaround this, I disabled Ipfilter on boot and kicked the added line
in ifconfig.gif0. After a reboot everything worked fine. (May be it is just
an ipfilter problem)
The error is reproduceable by simply rebooting the machine or doing a
/etc/rc.d/network start|restart
I had this problem a few days ago, but I must admit that I can't remember
the oder of things I did that time.
Here some snips from my configuration.
/etc/rc.conf
[...]
ipv6mode=host
ipfilter=YES
[...]
/etc/ifconfig.fxp0
inet 212.8.218.66 netmask 255.255.255.240
alias 212.8.218.67 netmask 255.255.255.240
alias 212.8.218.68 netmask 255.255.255.240
alias 212.8.218.69 netmask 255.255.255.240
/etc/ifconfig.gif0
create
tunnel 212.8.218.66 <ip-tunendpoint>
inet6 alias 2001:ae0:23:2::1 prefixlen 64
#inet6 alias 2001:ae0:23:3::1 prefixlen 64
! route -n add -inet6 default -interface 2001:ae0:23:2::1
(the #line is the line I added before the error occured)
/etc/ipf.conf
block in all
pass out all
#SSH on main-ip
pass in from any to 212.8.218.66 port = 22
#backup
pass in from any to 212.8.218.67
#DNS
pass in from 212.8.197.2 to 212.8.218.66 port = 53
pass in from 212.8.197.3 to 212.8.218.66 port = 53
pass in from 212.12.48.37 to 212.8.218.66 port = 53
#HTTP
pass in from any to 212.8.218.67 port = 80
pass in from any to 212.8.218.67 port = 443
#Mail
pass in from any to 212.8.218.68 port = 25
pass in from any to 212.8.218.68 port = 110
pass in from any to 212.8.218.68 port = 143
#IPv6
#pass in proto ipv6 from any to 212.8.218.66
pass in from any to 2001:ae0:23:2::1 port = 80
pass in from any to 2001:ae0:23:2::1 port = 22
Thanks for your help.
--
Christoph Dietzschold
hoerbe.net