Can't run natd after upgrade to 5.4

Wisut Ponpattana acharn_666 at hotmail.com
Thu May 19 21:11:36 PDT 2005


After keeping an eye on the stable- list for a couple of weeks, I hadn't 
seen any threads that were obviously general problems, so I cvsupped again 
yesterday. Did a regular build world: "make buildworld" "make buildkernel 
KERNCONFIG=KEPLER" "make installkernel KERNCONFIG=KEPLER" "make 
installworld" "mergemaster" "reboot".

OK, the machine is running, uname -a returns FreeBSD 5.4 STABLE #2. ??? 
That's funny, this is the first time I've compiled this kernel, shouldn't 
that be #0? Oh well, everything seems all right, until I go to one of the 
client machines and try to get on the World Wide Web. "Trying to resolve..." 
Hit the STOP button.

To cut it short, I discoverthat natd is not running. In the boot-up messages 
I see "ipfw ... divert disabled..." My rule "100 divert natd all from any to 
any via ed0" isn't being added. natd won't run.

Try entering "ipfw add 50 divert natd all from any to any via ed0", I get 
the message:
ipfw: getsockopt(IP_FW_ADD): Invalid argument".

Look back at my configuration file. Sure enough, at the bottom are
options IPFIREWALL
options IPDIVERT
just like it says in the natd man page, just like they've been for years.

Spend a couple of hours searching google. I find a couple of similar 
problems, but nobody describes the solution. So I cvsup back to 5.3 and 
rebuild everything. No effect. natd won't run, same error message when I try 
to add the divert rule. So at this point I nuke the contents of /usr/src and 
start cvsup again (well, I did save my configuration file). Now I'm starting 
to buildworld again.

Can anybody tell me how to fix this? I'd kind of like to know what went 
wrong, too, but that's less important to me.

By the way, because of this I can't access my regular e-mail account, so 
please either reply or cc me at this hotmail account, as well as replying to 
the list.




More information about the freebsd-questions mailing list