Mailing List Archive

Wackamole on FreeBSD 5.3 will not start
Looks like this was brought up back in October 15 in reference to
FreeBSD 5.1 but I could not find any reference to a fix/solution. At
any rate, I have a very simple config as follows (just like the
October 15 post):

Spread = 4803
SpreadRetryInterval = 5s
Group = wack1
# Named socket for online control
Control = /var/run/wack.it
Prefer None
VirtualInterfaces {

{ bge1:10.0.0.10/32 }
}
Arp-Cache = 90s

Notify {

#bge1:10.0.0.1/32
arp-cache
}
balance {

AcquisitionsPerRound = all
interval = 4s
}
# How long it takes us to mature
mature = 5s

Spread starts and appears to run just fine.
I start wackamole and get no output. I tried wackamole with -d and get
the following output:

socket: Protocol not supported

Was this problem ever resolved? Is there an issue with the above
config?

Thanks
--
Eric L. Anderson
anderson@more.net

_______________________________________________
wackamole-users mailing list
wackamole-users@lists.backhand.org
http://lists.backhand.org/mailman/listinfo/wackamole-users
Re: Wackamole on FreeBSD 5.3 will not start [ In reply to ]
On Sep 17, 2004, at 5:27 PM, Eric L. Anderson wrote:
> I start wackamole and get no output. I tried wackamole with -d and get
> the following output:
>
> socket: Protocol not supported

Do you have BPF support in your kernel? Wackamole code uses a BPF
socket to find it's IPs and MACs.

// Theo Schlossnagle
// Principal Engineer -- http://www.omniti.com/~jesus/
// OmniTI Computer Consulting, Inc. -- http://www.omniti.com/
// Ecelerity: fastest MTA on Earth


_______________________________________________
wackamole-users mailing list
wackamole-users@lists.backhand.org
http://lists.backhand.org/mailman/listinfo/wackamole-users
Re: Wackamole on FreeBSD 5.3 will not start [ In reply to ]
On Fri, Sep 17, 2004 at 05:42:31PM -0400, Theo Schlossnagle wrote:
> On Sep 17, 2004, at 5:27 PM, Eric L. Anderson wrote:
> >I start wackamole and get no output. I tried wackamole with -d and get
> >the following output:
> >
> >socket: Protocol not supported
>
> Do you have BPF support in your kernel? Wackamole code uses a BPF
> socket to find it's IPs and MACs.

I am currently using the kernel from the install (GENERIC). I have not
built a new kernel yet. The GENERIC kernel config lists the bpf
device but I am not sure how to tell wether the kernel I am using
actually has the device.

--
Eric L. Anderson
anderson@more.net

_______________________________________________
wackamole-users mailing list
wackamole-users@lists.backhand.org
http://lists.backhand.org/mailman/listinfo/wackamole-users
Re: Wackamole on FreeBSD 5.3 will not start [ In reply to ]
On Fri, Sep 17, 2004 at 04:58:31PM -0500, Eric L. Anderson wrote:
> On Fri, Sep 17, 2004 at 05:42:31PM -0400, Theo Schlossnagle wrote:
> > On Sep 17, 2004, at 5:27 PM, Eric L. Anderson wrote:
> > >I start wackamole and get no output. I tried wackamole with -d and get
> > >the following output:
> > >
> > >socket: Protocol not supported
> >
> > Do you have BPF support in your kernel? Wackamole code uses a BPF
> > socket to find it's IPs and MACs.
>
> I am currently using the kernel from the install (GENERIC). I have not
> built a new kernel yet. The GENERIC kernel config lists the bpf
> device but I am not sure how to tell wether the kernel I am using
> actually has the device.

I rebuilt and reinstalled both the kernel and world. I can now verify
that I have BPF support as 'ls /dev/bpf0' returns correctly (my
understanding is that FreeBSD 5.x uses devfs and creates devices on
demand).

wackamole still behaves the same:
# wackamole -d
socket: Protocol not supported

I toyed with gdb a bit and tracked the failing socket() function call
down to ife-bpf.c:27:

27 if((_if_sock = socket (AF_INET, socket_type, htons(ETH_P_ALL))) == -1) {
28 perror ("socket");
29 exit (EXIT_FAILURE);
30 }

Regards
--
Eric L. Anderson
anderson@more.net

_______________________________________________
wackamole-users mailing list
wackamole-users@lists.backhand.org
http://lists.backhand.org/mailman/listinfo/wackamole-users
Re: Wackamole on FreeBSD 5.3 will not start [ In reply to ]
Eric L. Anderson wrote:

>On Fri, Sep 17, 2004 at 04:58:31PM -0500, Eric L. Anderson wrote:
>
>
>>On Fri, Sep 17, 2004 at 05:42:31PM -0400, Theo Schlossnagle wrote:
>>
>>
>>>On Sep 17, 2004, at 5:27 PM, Eric L. Anderson wrote:
>>>
>>>
>>>>I start wackamole and get no output. I tried wackamole with -d and get
>>>>the following output:
>>>>
>>>>socket: Protocol not supported
>>>>
>>>>
>>>Do you have BPF support in your kernel? Wackamole code uses a BPF
>>>socket to find it's IPs and MACs.
>>>
>>>
>>I am currently using the kernel from the install (GENERIC). I have not
>>built a new kernel yet. The GENERIC kernel config lists the bpf
>>device but I am not sure how to tell wether the kernel I am using
>>actually has the device.
>>
>>
>
>I rebuilt and reinstalled both the kernel and world. I can now verify
>that I have BPF support as 'ls /dev/bpf0' returns correctly (my
>understanding is that FreeBSD 5.x uses devfs and creates devices on
>demand).
>
>wackamole still behaves the same:
># wackamole -d
>socket: Protocol not supported
>
>I toyed with gdb a bit and tracked the failing socket() function call
>down to ife-bpf.c:27:
>
>27 if((_if_sock = socket (AF_INET, socket_type, htons(ETH_P_ALL))) == -1) {
>28 perror ("socket");
>29 exit (EXIT_FAILURE);
>30 }
>
>Regards
>
>
Try replacing htons(ETH_P_ALL) with 0. If you have the tools
(Ethereal), confirm that the packets sent on the wire are indeed ARP
responses.

--
// Theo Schlossnagle
// Principal Engineer -- http://www.omniti.com/~jesus/
// Postal Engine -- http://www.postalengine.com/
// Ecelerity: fastest MTA on Earth


_______________________________________________
wackamole-users mailing list
wackamole-users@lists.backhand.org
http://lists.backhand.org/mailman/listinfo/wackamole-users
Re: Wackamole on FreeBSD 5.3 will not start [ In reply to ]
On Mon, Sep 20, 2004 at 03:44:44PM -0400, Theo Schlossnagle wrote:
> Eric L. Anderson wrote:
>
> >On Fri, Sep 17, 2004 at 04:58:31PM -0500, Eric L. Anderson wrote:
> >
> >I rebuilt and reinstalled both the kernel and world. I can now verify
> >that I have BPF support as 'ls /dev/bpf0' returns correctly (my
> >understanding is that FreeBSD 5.x uses devfs and creates devices on
> >demand).
> >
> >wackamole still behaves the same:
> ># wackamole -d
> >socket: Protocol not supported
> >
> >I toyed with gdb a bit and tracked the failing socket() function call
> >down to ife-bpf.c:27:
> >
> >27 if((_if_sock = socket (AF_INET, socket_type, htons(ETH_P_ALL))) ==
> >-1) {
> >28 perror ("socket");
> >29 exit (EXIT_FAILURE);
> >30 }
> >
> >Regards
> >
> >
> Try replacing htons(ETH_P_ALL) with 0. If you have the tools
> (Ethereal), confirm that the packets sent on the wire are indeed ARP
> responses.

Everything works fine now and indeed the ARP responses are being sent
out.

Why does the htons(ETH_P_ALL) work on FreeBSD 4.x and not 5.x?

--
Eric L. Anderson
anderson@more.net

_______________________________________________
wackamole-users mailing list
wackamole-users@lists.backhand.org
http://lists.backhand.org/mailman/listinfo/wackamole-users
Re: Wackamole on FreeBSD 5.3 will not start [ In reply to ]
Eric L. Anderson wrote:

>On Mon, Sep 20, 2004 at 03:44:44PM -0400, Theo Schlossnagle wrote:
>
>
>>Eric L. Anderson wrote:
>>
>>
>>
>>>On Fri, Sep 17, 2004 at 04:58:31PM -0500, Eric L. Anderson wrote:
>>>
>>>I rebuilt and reinstalled both the kernel and world. I can now verify
>>>that I have BPF support as 'ls /dev/bpf0' returns correctly (my
>>>understanding is that FreeBSD 5.x uses devfs and creates devices on
>>>demand).
>>>
>>>wackamole still behaves the same:
>>># wackamole -d
>>>socket: Protocol not supported
>>>
>>>I toyed with gdb a bit and tracked the failing socket() function call
>>>down to ife-bpf.c:27:
>>>
>>>27 if((_if_sock = socket (AF_INET, socket_type, htons(ETH_P_ALL))) ==
>>>-1) {
>>>28 perror ("socket");
>>>29 exit (EXIT_FAILURE);
>>>30 }
>>>
>>>Regards
>>>
>>>
>>>
>>>
>>Try replacing htons(ETH_P_ALL) with 0. If you have the tools
>>(Ethereal), confirm that the packets sent on the wire are indeed ARP
>>responses.
>>
>>
>
>Everything works fine now and indeed the ARP responses are being sent
>out.
>
>Why does the htons(ETH_P_ALL) work on FreeBSD 4.x and not 5.x?
>
>
That is a question for a FreeBSD core developer or at least the FreeBSD
mailing list. If someone has access to a 4.x machine _not_ in
production to test to see if 0 works there as well, I'll commit that the
CVS for the next release.

--
// Theo Schlossnagle
// Principal Engineer -- http://www.omniti.com/~jesus/
// Postal Engine -- http://www.postalengine.com/
// Ecelerity: fastest MTA on Earth


_______________________________________________
wackamole-users mailing list
wackamole-users@lists.backhand.org
http://lists.backhand.org/mailman/listinfo/wackamole-users
Re: Wackamole on FreeBSD 5.3 will not start [ In reply to ]
On Mon, Sep 20, 2004 at 04:45:27PM -0400, Theo Schlossnagle wrote:
> >>>
> >>Try replacing htons(ETH_P_ALL) with 0. If you have the tools
> >>(Ethereal), confirm that the packets sent on the wire are indeed ARP
> >>responses.
> >>
> >>
> >
> >Everything works fine now and indeed the ARP responses are being sent
> >out.
> >
> >Why does the htons(ETH_P_ALL) work on FreeBSD 4.x and not 5.x?
> >
> >
> That is a question for a FreeBSD core developer or at least the FreeBSD
> mailing list. If someone has access to a 4.x machine _not_ in
> production to test to see if 0 works there as well, I'll commit that the
> CVS for the next release.
>

0 works as well on 4.10.

Regards
--
Eric L. Anderson
anderson@more.net

_______________________________________________
wackamole-users mailing list
wackamole-users@lists.backhand.org
http://lists.backhand.org/mailman/listinfo/wackamole-users