retitle 507646 graceful binding to tentative addresses during dnsmasq startup
severity 507646 wishlist
thanks

also sprach Simon Kelley <[EMAIL PROTECTED]> [2008.12.10.1616 +0100]:
> # brctl addbr br4
> # ip addr add 2001:41e0:ff38:fffd::5 dev br4
>
> results in the address being marked as tentative.

Of course, since without upping the iface, the kernel cannot do
duplicate address detection.

> # brctl addbr br4
> # ifconfig br4 up
> # ip addr add 2001:41e0:ff38:fffd::5 dev br4
>
> Doesn't.

Yeah, this seems like a bug, if you add an address before upping,
the tentative flag stays. I also tried this with a physical
interface, so it's not just the bridge. With a sit tunnel, however,
the tentative flag is never set, which is logical since DAD is
likely not needed in a point-to-point context.

I will file a separate bug about this and debbugs-cc this one.

> EADDRNOTAVAIL depends only on tentative state. Bringing the
> interface up  after adding the address doesn't remove the
> tentative state or allow  dnsmasq to bind().

Okay, this helped me figure out the problem. I was running dnsmasq
from an ifupdown up hook, and by the time it ran, the iface state
was indeed still tentative, even though it got properly cleared
a few seconds later. Inserting a sleep 5 before seems to fix this.

I do wonder if it wouldn't be possible to properly fix this in
dnsmasq itself? E.g. identify the tentative state, retry n times
every second and only give up (and fail, instead of just silently
starting without binding) only if it doesn't yield the desired
result?

Thanks a lot, Simon, for your patience and sharpness in spotting the
bug!

-- 
 .''`.   martin f. krafft <[EMAIL PROTECTED]>      Related projects:
: :'  :  proud Debian developer               http://debiansystem.info
`. `'`   http://people.debian.org/~madduck    http://vcs-pkg.org
  `-  Debian - when you have better things to do than fixing systems
 
"ah, but a man's reach should exceed his grasp,
 or what's a heaven for?"
                                                    -- robert browning

Attachment: digital_signature_gpg.asc
Description: Digital signature (see http://martin-krafft.net/gpg/)

Reply via email to