Comments (10)
Like the Launchpad bug reporter, I've also noticed that Chrome occasionally interrupts the loading of a page and tells me that the network changed. I hadn't really associated it with the avahi log oddness until I came across the launchpad bug and saw the mention of the same issue in Chrome. Is that what is happening here - every time the router sends an IPv6 router advertisement, avahi removes all the addresses from the interface (to be replaced with the same addresses), which takes down all active Chrome requests?
from avahi.
It seems to be caused by the "preferred lifetime" of the prefix expiring, i.e. the router is sending router advertisements with a preferred lifetime which is shorter than the interval of the advertisements. This will create more problems than just log spam from avahi since the kernel will not use a prefix for new connections once its preferred lifetime has expired.
from avahi.
(i.e. the only role avahi has in this issue is that it's making the issue more visible by logging about it.)
You should be able to confirm this with ip -6 addr
: the affected address will have a preferred_lft
that drops down to zero at which point the deprecated
flag appears on the address and avahi withdraws the address, until the next router advertisement resets the preferred_lft
to a non-zero value again which causes the deprecated
flag to disappear and avahi to register the address again.
from avahi.
This isn't just limited to Fedora. I can reproduce it on Arch too. Running NetworkManager 1.0.10-2 with ip6-privacy=2, avahi 0.6.32-2, and linux 4.4.5.
I also have the following set in sysctl (br0 is my main connection):
net.ipv6.conf.all.use_tempaddr = 2
net.ipv6.conf.default.use_tempaddr = 2
net.ipv6.conf.br0.use_tempaddr = 2
from avahi.
Happens on Ubuntu 17.04 too, Linux 4.10.0, Avahi 0.6.32-1ubuntu1, temporary addresses configured on NetworkManager.
from avahi.
Incorrect commit message, re-opening
from avahi.
I see this log spam every few minutes on Debian (buster), "Withdrawing address record", "Leaving mDNS multicast group on interface", "Joining mDNS multicast group on interface".
This is a new, default install with no config changes related to avahi.
I ran tcpdump on the interface and the withdrawal messages appear to be caused by the router sending an IPv6 router advertisement. I confirmed that it is disabled with:
ip6tables -A INPUT -p icmpv6 --icmpv6-type router-advertisement -j DROP
Is this expected? The router advertisements don't seem to do anything other than filling up the logs, the addresses remain the same.
from avahi.
Same issue on Debian 11 with avahi-daemon 0.8-5. Temporary addresses are not enabled in sysctl. It seems to have to do with router advertisements here, too - the span between "Withdrawing" and the next "Registering" is ~8 minutes.
The advertisements come from the same machine and are sent by dnsmasq:
Dec 8 15:12:26 dojo dnsmasq-dhcp[833]: RTR-ADVERT(eth0) fdc3:e153::
Dec 8 15:12:26 dojo avahi-daemon[666]: Registering new address record for fdc3:e153::d250:99ff:fe2c:f8c8 on eth0.*.
Dec 8 15:12:26 dojo avahi-daemon[666]: Withdrawing address record for fdc3:e153::d250:99ff:fe2c:f8c8 on eth0.
from avahi.
I indeed have a faulty dnsmasq configuration:
dhcp-range=fdc3:e153::,ra-only,64,deprecated
For IPv6 ranges, the lease time maybe "deprecated"; this sets the preferred lifetime sent in a DHCP lease or router advertisement to zero, which causes clients to use other addresses, if available, for new connections as a prelude to renumbering.
I have no idea why I set this "deprecated" lease time. Probably copied it from some example :(
from avahi.
Also, getting the address periodically withdrawn because it keeps expiring in between router advertisements (which is a router bug, not an avahi bug) is not actually related to this bug report, which is about avahi apparently flooding these messages when using IPv6 privacy enhancement (under specific conditions I assume, or there'd be way more people yelling about it).
from avahi.
Related Issues (20)
- Uncontrolled recursion in `lookup_handle_cname` caused by recursive CNAMEs HOT 3
- Debug parameter doesn't add to log HOT 13
- New release to fix all CVEs since 2021? HOT 2
- Change hostname directly using system command possible with this version or not ? HOT 6
- getpwnam failed. errno is 2 HOT 2
- no sd_notify notifications with chroot enabled HOT 1
- Document in 0.9 release notes, which parts/bindings are obsolete/going away HOT 20
- Avahi and VRFs HOT 9
- Port not being released by avahi inside docker HOT 2
- avahi-autipd leaves zombi process after kill under docker container HOT 1
- OSS-Fuzz issue 64170 HOT 3
- Move away from xmltoman for manpages? HOT 5
- mDNS over primary and subinterface HOT 5
- There is a use-after-free in `avahi-browse -f -arp` when `avahi-daemon` is restarted
- [RFC] More flexible/extensible reflect-filters HOT 1
- An empty `allow-interfaces=` makes the system not reachable HOT 3
- Repository settings HOT 8
- After upgrading to iOS17 Password required for “(null)” HOT 8
- Avahi mDNS blocked in queue HOT 10
- Initial probe queries with type ANY should use QU and not QM flag
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from avahi.