Fellow wackamole users,
I experienced a fairly strangle problem with wackamole on Linux. It
appears that the ife-sockpacket code the up and down virtual interfaces
has undesirable side-effects. If I ifup 3 virtual interfaces on eth0:1
eth0:2 and eth0:3 and then attempt to ifdown the IP on eth0:1, the VIPs
on eth0:2 and eth0:3 mysteriously "disappear" -- no errors, no
notifications, just gone.
After writing the code for Solaris and BSDs to bring up and down
interfaces, it is my opinion that Linux is truly lacking here. Now, I
know there is a way to do it (as I can induce the desired behvaour out
of /sbin/ifconfig), so I am looking into rewriting the sockpacket code
to "do the Linux thing".
So, if you notice IPs dropping unexpectedly after a state change on
Linux, it is most likely caused by this. If an Linux networking gurus
know what I am doing wrong here, please drop me a note. There is a
standalone target called "ife" that cleanly wraps the ife-sockpacket.c
provided functions on Linux -- so it is easy to test:
./ife -a eth0 10.0.0.10 10.0.0.255 255.255.255.0
(adds eth0:n)
./ife -a eth0 10.0.0.11 10.0.0.255 255.255.255.0
(adds eth0:n+1)
./ife -a eth0 10.0.0.12 10.0.0.255 255.255.255.0
(adds eth0:n+2)
./ife -d 10.0.0.10
(says it removes only eth0:n, and only calls ioctls on _that_ interface,
but myseriously, all is lost)
--
Theo Schlossnagle
1024D/82844984/95FD 30F1 489E 4613 F22E 491A 7E88 364C 8284 4984
2047R/33131B65/71 F7 95 64 49 76 5D BA 3D 90 B9 9F BE 27 24 E7
I experienced a fairly strangle problem with wackamole on Linux. It
appears that the ife-sockpacket code the up and down virtual interfaces
has undesirable side-effects. If I ifup 3 virtual interfaces on eth0:1
eth0:2 and eth0:3 and then attempt to ifdown the IP on eth0:1, the VIPs
on eth0:2 and eth0:3 mysteriously "disappear" -- no errors, no
notifications, just gone.
After writing the code for Solaris and BSDs to bring up and down
interfaces, it is my opinion that Linux is truly lacking here. Now, I
know there is a way to do it (as I can induce the desired behvaour out
of /sbin/ifconfig), so I am looking into rewriting the sockpacket code
to "do the Linux thing".
So, if you notice IPs dropping unexpectedly after a state change on
Linux, it is most likely caused by this. If an Linux networking gurus
know what I am doing wrong here, please drop me a note. There is a
standalone target called "ife" that cleanly wraps the ife-sockpacket.c
provided functions on Linux -- so it is easy to test:
./ife -a eth0 10.0.0.10 10.0.0.255 255.255.255.0
(adds eth0:n)
./ife -a eth0 10.0.0.11 10.0.0.255 255.255.255.0
(adds eth0:n+1)
./ife -a eth0 10.0.0.12 10.0.0.255 255.255.255.0
(adds eth0:n+2)
./ife -d 10.0.0.10
(says it removes only eth0:n, and only calls ioctls on _that_ interface,
but myseriously, all is lost)
--
Theo Schlossnagle
1024D/82844984/95FD 30F1 489E 4613 F22E 491A 7E88 364C 8284 4984
2047R/33131B65/71 F7 95 64 49 76 5D BA 3D 90 B9 9F BE 27 24 E7