[Pkg-utopia-maintainers] Bug#814835: avahi-autoipd: autoipd not conforming to RFC3927

car_ip joachim.rudolph at web.de
Mon Feb 15 19:26:35 UTC 2016


Package: avahi-autoipd
Version: 0.6.31-5
Severity: normal

When autoip daemon is PROBING for a new ip and is receiving an arp request for
the address being probed it is picking a new IP.
According to the RFC3927 this is only allowed when receiving an ARP probe
(which has sender ip set to zero).

Version-Release number of selected component (if applicable):
avahi-0.6.32-rc/avahi-autoipd/main.c (avahi_0.6.32~rc+dfsg.orig.tar.gz)
Line 1230: conflict = info.target_ip_address == addr && memcmp(hw_address,
info.sender_hw_address, ETHER_ADDRLEN);
is missing the src-ip check.

How reproducible:
always

Steps to Reproduce:
1. keep a running ping to a local link connected host
2. and reset that host
3. when the host is resetting the arp cache of the pinging computer will time
out causing it so send arp requests for the old ip
4. check on wireshark, the autoipclient is announcing a new IP via ARP

Actual results:
the autoipclient is announcing a new IP via ARP

Expected results:
IP of autoip host must not change when receiving ARP requests for its currently
probed IP. This affects the usage of linux in iot devices which are operating
with local link and loose their ip during reset.

Additional info:

According to RFC3927, Section 2.2.1. Probe details:
> An ARP Request constructed this way with an all-zero 'sender IP
> address' is referred to as an "ARP Probe".

and

> In addition, if during this period [checking if an address is already
> in use] the host receives any *ARP Probe* where the packet's 'target IP
> address' is the address being probed for, and the packet's 'sender
> hardware address' is not the hardware address of the interface the
> host is attempting to configure, then the host MUST similarly treat
> this as an address conflict and select a new address as above.

This bug is fixed in upstream.
See https://github.com/lathiat/avahi/issues/35



-- System Information:
Debian Release: 8.2
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 3.16.0-4-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages avahi-autoipd depends on:
ii  adduser     3.113+nmu3
ii  libc6       2.19-18+deb8u1
ii  libdaemon0  0.14-6

Versions of packages avahi-autoipd recommends:
ii  iproute2         3.16.0-2
ii  isc-dhcp-client  4.3.1-6

avahi-autoipd suggests no packages.

-- no debconf information



More information about the Pkg-utopia-maintainers mailing list