SMP and networking under FreeBSD 5.3

Alex Zbyslaw xfb52 at
Fri Jun 24 13:24:11 GMT 2005

Joe wrote:

>Okay, I've been looking and looking for duplicate natd's.
>I have the /etc/rc.conf which has natd stuff below, and the only
>other place I see it is in ipfw.  
>I was able to change my rc and use /etc/rc.d/natd start and that
>works.  Which is better as it does not require me to reload my
>firewall rules.  
>I still don't know why natd refuses to start the first time when
>called from ipfw.  
If I understand the boot procedure correctly, natd ought to be started 
as part of the /etc/rc.d/ipfw and that just calls "/etc/rc.d/natd start" 
which is what you are typing later from the command line with success, 
so why it fails at boot, I really don't know at this point.

The "cannot bind to divert socket" error I thought could happen if a) 
you weren't root (seems unlikely from bootup) or b) something had 
already bound the socket.  After your machine boots, what does
    ps uagxww | egrep natd

Google also found this:

>- In FreeBSD, IPDIVERT must be enabled at compile time.
I guess your kernel has this option, or natd would never have worked.

what ifconfig lines do you have in /etc.rc.conf

    egrep ifconfig /etc/rc.conf

>I have no rc.conf.local
Not too surprising.  It could be used under 4.X as a second level to 
rc.conf, but exists nowadays for backwards compatibility and AFAIK isn't 
created by anything.

As a more drastic attempt at a solution, could you try upgrading to 
5.4?  It has numerous improvements over 5.3, which was never a 
production release.  Maybe some ordering problems was fixed.


More information about the freebsd-questions mailing list