Modify

Opened 8 years ago

Closed 7 years ago

Last modified 4 years ago

#7424 closed defect (worksforme)

avahi does not use ipv6 on 2.4

Reported by: openwrt@… Owned by: developers
Priority: normal Milestone: Barrier Breaker 14.07
Component: packages Version: Kamikaze 8.09
Keywords: avahi ipv6 Cc:

Description

Using avahi-daemon on kamikaze 8.09.2 (kernel 2.4.35.4, wrt54gl) does not work with ipv6 interfaces.

ipv6 is working on this router and routes ipv6-traffic trough a 6to4 tunnel.
I can access (ssh) the router trough ipv6 too.

logread tells it fails on open a ipv6 socket (full log for restarting avahi-daemon):

Jun  3 23:33:43 router daemon.info avahi-daemon[27852]: Got SIGTERM, quitting.
Jun  3 23:33:43 router daemon.info avahi-daemon[27852]: Leaving mDNS multicast group on interface br-lan.IPv4 with address 192.168.28.1.
Jun  3 23:33:43 router daemon.info avahi-daemon[27852]: Leaving mDNS multicast group on interface eth0.1.IPv4 with address 188.60.48.97.
Jun  3 23:33:43 router user.debug kernel: eth0.1: del 01:00:5e:00:00:fb mcast address from master interface
Jun  3 23:33:43 router daemon.info avahi-daemon[27907]: Found user 'nobody' (UID 65534) and group 'nogroup' (GID 65534).
Jun  3 23:33:43 router daemon.info avahi-daemon[27907]: Successfully dropped root privileges.
Jun  3 23:33:43 router daemon.info avahi-daemon[27907]: avahi-daemon 0.6.23 starting up.
Jun  3 23:33:43 router daemon.warn avahi-daemon[27907]: WARNING: No NSS support for mDNS detected, consider installing nss-mdns!
Jun  3 23:33:43 router daemon.info avahi-daemon[27907]: Loading service file /etc/avahi/services/http.service.
Jun  3 23:33:43 router daemon.info avahi-daemon[27907]: Loading service file /etc/avahi/services/ssh.service.
Jun  3 23:33:43 router daemon.warn avahi-daemon[27907]: IPV6_RECVPKTINFO failed: Protocol not available
Jun  3 23:33:43 router daemon.notice avahi-daemon[27907]: Failed to create IPv6 socket, proceeding in IPv4 only mode
Jun  3 23:33:43 router daemon.info avahi-daemon[27907]: Joining mDNS multicast group on interface br-lan.IPv4 with address 192.168.28.1.
Jun  3 23:33:43 router daemon.info avahi-daemon[27907]: New relevant interface br-lan.IPv4 for mDNS.
Jun  3 23:33:43 router daemon.info avahi-daemon[27907]: Joining mDNS multicast group on interface eth0.1.IPv4 with address 188.60.48.97.
Jun  3 23:33:43 router user.debug kernel: eth0.1: add 01:00:5e:00:00:fb mcast address to master interface
Jun  3 23:33:43 router daemon.info avahi-daemon[27907]: New relevant interface eth0.1.IPv4 for mDNS.
Jun  3 23:33:43 router daemon.info avahi-daemon[27907]: Network interface enumeration completed.
Jun  3 23:33:43 router daemon.info avahi-daemon[27907]: Registering new address record for 2002:bc3c:3061:666::1 on br-lan.*.
Jun  3 23:33:43 router daemon.info avahi-daemon[27907]: Registering new address record for 192.168.28.1 on br-lan.IPv4.
Jun  3 23:33:43 router daemon.info avahi-daemon[27907]: Registering new address record for fe80::223:69ff:fe25:fd7d on eth0.1.*.
Jun  3 23:33:43 router daemon.info avahi-daemon[27907]: Registering new address record for 188.60.48.97 on eth0.1.IPv4.
Jun  3 23:33:43 router daemon.info avahi-daemon[27907]: Registering HINFO record with values 'MIPS'/'LINUX'.
Jun  3 23:33:44 router daemon.info avahi-daemon[27907]: Server startup complete. Host name is router.local. Local service cookie is 504799464.
Jun  3 23:33:45 router daemon.info avahi-daemon[27907]: Service "Secure Shell on router" (/etc/avahi/services/ssh.service) successfully established.
Jun  3 23:33:45 router daemon.info avahi-daemon[27907]: Service "Web Server on router" (/etc/avahi/services/http.service) successfully established.

I somehow was able to compile avahi-daemon and libavahi from the trunk (0.6.25-1) into a 8.09.2 svn-checkout, but installing it yields the same result.
From reading avahis source, it looks like it is able to actualy create ipv6 sockets, but fails with some option testing.
http://avahi.sourcearchive.com/documentation/0.6.24-1/socket_8c-source.html

As my network is not the default one (all the interfaces have ipv6 addresses in default config, i removed where no ipv4 address is expect for the tunnel interface), i add the output of "ip addr":

1: lo: <LOOPBACK,UP> mtu 16436 qdisc noqueue 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 brd 127.255.255.255 scope host lo
    inet6 ::1/128 scope host 
2: eth0: <BROADCAST,MULTICAST,PROMISC,UP> mtu 1500 qdisc pfifo_fast qlen 1000
    link/ether 00:23:69:25:fd:7d brd ff:ff:ff:ff:ff:ff
3: sit0@NONE: <NOARP> mtu 1480 qdisc noop 
    link/sit 0.0.0.0 brd 0.0.0.0
4: eth0.0: <BROADCAST,MULTICAST,PROMISC,UP> mtu 1500 qdisc noqueue 
    link/ether 00:23:69:25:fd:7d brd ff:ff:ff:ff:ff:ff
5: eth0.1: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue 
    link/ether 00:23:69:25:fd:7d brd ff:ff:ff:ff:ff:ff
    inet 188.60.48.97/22 brd 255.255.255.255 scope global eth0.1
    inet6 fe80::223:69ff:fe25:fd7d/64 scope link 
6: br-lan: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue 
    link/ether 00:23:69:25:fd:7d brd ff:ff:ff:ff:ff:ff
    inet 192.168.28.1/24 brd 192.168.28.255 scope global br-lan
    inet6 fe80::200:ff:fe00:0/64 scope link 
    inet6 2002:bc3c:3061:666::1/64 scope global 
7: wl0: <BROADCAST,MULTICAST,PROMISC,UP> mtu 1500 qdisc pfifo_fast qlen 1000
    link/ether 00:23:69:25:fd:7f brd ff:ff:ff:ff:ff:ff
8: tun6to4@NONE: <NOARP,UP> mtu 1480 qdisc noqueue 
    link/sit 188.60.48.97 brd 0.0.0.0
    inet6 2002:bc3c:3061::1/16 scope global 
    inet6 ::188.60.48.97/128 scope global 

The only place where IPV6_RECVPKTINFO is mentioned on the tracker is ticket:3737, which may be related (not sure if i understand the ticket correct)

Attachments (0)

Change History (9)

comment:1 Changed 7 years ago by karri.huhtanen@…

The same problem seems to exist with Backfire 10.03.1-rc4 avahi-daemon package. If used in IPv6-only mode avahi-daemon stops after the following messages:

IPV6_RECVPKTINFO failed: Protocol not available
Failed to create server: No suitable network protocol available
avahi-daemon 0.6.28 exiting.

comment:2 Changed 7 years ago by mikebrady@…

Hmm. Can you show us the /etc/avahi/avahi.conf file? On an old-ish build on a Linksys NSLU2, it doesn't seem to complain.

First, the build's uname -a output:

Linux DVB 2.6.32.16 #9 Fri Sep 3 12:01:12 IST 2010 armv5teb GNU/Linux

Then the logread output when the avahi-daemon is restarted with only IPV6 service (I think):

Mar 25 12:40:34 DVB daemon.info avahi-daemon[3033]: Got SIGTERM, quitting.
Mar 25 12:40:34 DVB daemon.info avahi-daemon[3033]: Leaving mDNS multicast group on interface eth0.IPv6 with address fe80::213:10ff:fed7:ef69.
Mar 25 12:40:34 DVB daemon.info avahi-daemon[3046]: Found user 'nobody' (UID 65534) and group 'nogroup' (GID 65534).
Mar 25 12:40:34 DVB daemon.info avahi-daemon[3046]: Successfully dropped root privileges.
Mar 25 12:40:34 DVB daemon.info avahi-daemon[3046]: avahi-daemon 0.6.25 starting up.
Mar 25 12:40:34 DVB daemon.warn avahi-daemon[3046]: WARNING: No NSS support for mDNS detected, consider installing nss-mdns!
Mar 25 12:40:34 DVB daemon.warn avahi-daemon[3046]: Failed to initialize inotify: Function not implemented
Mar 25 12:40:34 DVB daemon.info avahi-daemon[3046]: Loading service file /etc/avahi/services/icecast.service.
Mar 25 12:40:34 DVB daemon.info avahi-daemon[3046]: Loading service file /etc/avahi/services/mt-daapd.service.
Mar 25 12:40:34 DVB daemon.info avahi-daemon[3046]: Loading service file /etc/avahi/services/sftp.service.
Mar 25 12:40:34 DVB daemon.info avahi-daemon[3046]: Loading service file /etc/avahi/services/ssh.service.
Mar 25 12:40:34 DVB daemon.info avahi-daemon[3046]: Joining mDNS multicast group on interface eth0.IPv6 with address fe80::213:10ff:fed7:ef69.
Mar 25 12:40:34 DVB daemon.info avahi-daemon[3046]: New relevant interface eth0.IPv6 for mDNS.
Mar 25 12:40:34 DVB daemon.info avahi-daemon[3046]: Network interface enumeration completed.
Mar 25 12:40:34 DVB daemon.info avahi-daemon[3046]: Registering new address record for fe80::213:10ff:fed7:ef69 on eth0.*.
Mar 25 12:40:34 DVB daemon.info avahi-daemon[3046]: Registering HINFO record with values 'ARMV5TEB'/'LINUX'.
Mar 25 12:40:35 DVB daemon.info avahi-daemon[3046]: Server startup complete. Host name is DVB.local. Local service cookie is 2582116048.

Here is the /etc/avahi/avahi-daemon.conf file:

[server]
#host-name=foo
#domain-name=local
use-ipv4=no
use-ipv6=yes
check-response-ttl=no
use-iff-running=no

[publish]
publish-addresses=yes
publish-hinfo=yes
publish-workstation=no
publish-domain=yes
#publish-dns-servers=192.168.1.1
#publish-resolv-conf-dns-servers=yes

[reflector]
enable-reflector=no
reflect-ipv=no

[rlimits]
#rlimit-as=
rlimit-core=0
rlimit-data=4194304
rlimit-fsize=0
rlimit-nofile=30
rlimit-stack=4194304
rlimit-nproc=1

Regards
Mike Brady

comment:3 follow-up: Changed 7 years ago by cmjr@…

It seems that ipv6 work again in last release of avahi...
http://avahi.org/milestone/Avahi%200.6.30

comment:4 in reply to: ↑ 3 Changed 7 years ago by Mike Brady <mikebrady@…>

Thanks. I just updated and submitted the OpenWrt package to 0.6.30.

comment:5 follow-up: Changed 7 years ago by cmjr@…

Someone can confirm that ipv6 work again?

comment:6 in reply to: ↑ 5 Changed 7 years ago by mikebrady@…

I can just see avahi starting up cleanly with the use-ipv6=yes and the use-ipv4=yes settings, so its behavior seems different to the two reported problems. Don't know anything beyond that. Can the ticket be closed?

Apr  6 14:47:36 OpenWrt daemon.info avahi-daemon[2154]: Found user 'nobody' (UID 65534) and group 'nogroup' (GID 65534).
Apr  6 14:47:36 OpenWrt daemon.info avahi-daemon[2154]: Successfully dropped root privileges.
Apr  6 14:47:36 OpenWrt daemon.info avahi-daemon[2154]: avahi-daemon 0.6.30 starting up.
Apr  6 14:47:36 OpenWrt daemon.warn avahi-daemon[2154]: WARNING: No NSS support for mDNS detected, consider installing nss-mdns!
Apr  6 14:47:36 OpenWrt daemon.warn avahi-daemon[2154]: Failed to initialize inotify: Function not implemented
Apr  6 14:47:36 OpenWrt daemon.info avahi-daemon[2154]: Loading service file /etc/avahi/services/http.service.
Apr  6 14:47:36 OpenWrt daemon.info avahi-daemon[2154]: Loading service file /etc/avahi/services/ssh.service.
Apr  6 14:47:36 OpenWrt daemon.info avahi-daemon[2154]: Joining mDNS multicast group on interface eth0.IPv6 with address fe80::21a:70ff:fea1:9372.
Apr  6 14:47:36 OpenWrt daemon.info avahi-daemon[2154]: New relevant interface eth0.IPv6 for mDNS.
Apr  6 14:47:36 OpenWrt daemon.info avahi-daemon[2154]: Joining mDNS multicast group on interface eth0.IPv4 with address 192.168.2.186.
Apr  6 14:47:36 OpenWrt daemon.info avahi-daemon[2154]: New relevant interface eth0.IPv4 for mDNS.
Apr  6 14:47:36 OpenWrt daemon.info avahi-daemon[2154]: Network interface enumeration completed.
Apr  6 14:47:36 OpenWrt daemon.info avahi-daemon[2154]: Registering new address record for fe80::21a:70ff:fea1:9372 on eth0.*.
Apr  6 14:47:36 OpenWrt daemon.info avahi-daemon[2154]: Registering new address record for 192.168.2.186 on eth0.IPv4.
Apr  6 14:47:36 OpenWrt daemon.info avahi-daemon[2154]: Registering HINFO record with values 'ARMV5TEB'/'LINUX'.
Apr  6 14:47:37 OpenWrt daemon.info avahi-daemon[2154]: Server startup complete. Host name is OpenWrt.local. Local service cookie is 3476004190.
Apr  6 14:47:38 OpenWrt daemon.info avahi-daemon[2154]: Service "Secure Shell on OpenWrt" (/etc/avahi/services/ssh.service) successfully established.
Apr  6 14:47:38 OpenWrt daemon.info avahi-daemon[2154]: Service "Web Server on OpenWrt" (/etc/avahi/services/http.service) successfully established.

comment:7 Changed 7 years ago by mikebrady@…

More evidence that ipv6 is working on avahi now. I compiled the avahi-utils, set avahi-daemon up in the normal way, except I disabled ipv4 (use-ipv4=no) and enabled ipv6 (use-ipv6=yes), then ran avahi-browse. It reported back some ipv6 services on my local net. Here is part of it:

root@OpenWrt:~# avahi-browse -a -r
+   eth0 IPv6 Secure Shell on OpenWrt                       _ssh._tcp            local
+   eth0 IPv6 Web Server on OpenWrt                         _http._tcp           local
=   eth0 IPv6 Secure Shell on OpenWrt                       _ssh._tcp            local
   hostname = [OpenWrt.local]
   address = [fe80::21a:70ff:fea1:9372]
   port = [22]
   txt = []
=   eth0 IPv6 Web Server on OpenWrt                         _http._tcp           local
   hostname = [OpenWrt.local]
   address = [fe80::21a:70ff:fea1:9372]
   port = [80]
   txt = ["path=/index.html"]
+   eth0 IPv6 Server                                        _ssh._tcp            local
+   eth0 IPv6 Server                                        _http._tcp           local
+   eth0 IPv6 DVB                                           _ssh._tcp            local
+   eth0 IPv6 DVB Icecast                                   _http._tcp           local
+   eth0 IPv6 Cencom                                        _ssh._tcp            local
+   eth0 IPv6 EyeTV Cencom                                  _http._tcp           local
=   eth0 IPv6 Server                                        _ssh._tcp            local
   hostname = [Time-Capsule.local]
   address = [192.168.2.1]
   port = [22]
   txt = []
=   eth0 IPv6 Server                                        _http._tcp           local
   hostname = [Time-Capsule.local]
   address = [192.168.2.1]
   port = [80]
   txt = []
=   eth0 IPv6 DVB                                           _ssh._tcp            local
   hostname = [DVB.local]
   address = [fe80::213:10ff:fed7:ef69]
   port = [22]
   txt = []
+   eth0 IPv6 50-35-10-70 Kitchen Airport Express           _sleep-proxy._udp    local
+   eth0 IPv6 Kitchen Airport Express                       _airport._tcp        local
+   eth0 IPv6 00254B03726C@Kitchen                          _raop._tcp           local
+   eth0 IPv6 50-35-10-70 AerPorto Espresso di Mike         _sleep-proxy._udp    local
+   eth0 IPv6 AerPorto Espresso di Mike                     _airport._tcp        local
+   eth0 IPv6 001FF3F66F5E@Main                             _raop._tcp           local
+   eth0 IPv6 30-34-10-70 Time Capsule                      _sleep-proxy._udp    local
+   eth0 IPv6 Server                                        _https._tcp          local
+   eth0 IPv6 Time Capsule                                  _airport._tcp        local
+   eth0 IPv6 Time Capsule                                  _afpovertcp._tcp     local
+   eth0 IPv6 Time Capsule                                  _smb._tcp            local
+   eth0 IPv6 Time Capsule                                  _adisk._tcp          local
+   eth0 IPv6 Cencom                                        _afpovertcp._tcp     local
+   eth0 IPv6 Cencom                                        _smb._tcp            local
=   eth0 IPv6 DVB Icecast                                   _http._tcp           local
   hostname = [DVB.local]
   address = [fe80::213:10ff:fed7:ef69]
   port = [8000]
   txt = []

comment:8 Changed 7 years ago by nbd

  • Resolution set to worksforme
  • Status changed from new to closed

comment:9 Changed 4 years ago by jow

  • Milestone changed from Attitude Adjustment 12.09 to Barrier Breaker 14.07

Milestone Attitude Adjustment 12.09 deleted

Add Comment

Modify Ticket

Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.