Version 59 (modified by willrea, 7 years ago)

Added LAT

Error: Failed to load processor TracNav
No macro or processor named 'TracNav' found

Avahi for the Users

Screenshots

On the Avahi Walk of Fame you can get a glimpse on what Avahi can do for you.

Software Making use of Avahi

The below list contains applications that are using Avahi in one way or another. Tho it is still quite incomplete. If you think there's an application that should be added to this, no matter whether it supports Avahi natively or via Avahi's excellent compatibility layer, do not hesitate to add this particular application to the below list!

Or even better - If you do have some neat screen shots about an application that runs against Avahi, you may consider to add your shots to the Avahi Walk of Fame.

FAQ

  1. Is it OK to run multiple mDNS responders on the same machine?
    • No, it is not OK. Sooner or later some mDNS features known as "Known Answer Suppression" and "Unicast Reply" (and probably some more) will result in problems if more than one responder runs on the same machine.
  2. May I enable the mDNS reflector on multiple hosts accessing the same two networks?
    • No, don't do that. Queries will be looped, and sooner or later your network will be stalled with mDNS traffic.
  3. Avahi doesn't work, it doesn't register or find any services and doesn't resolve mDNS host names'''
    • Make sure:
      • That you run a recent Kernel (both Linux 2.4 and 2.6 should work) with IP Multicasting enabled
      • That you run only one mDNS stack
      • That you disabled all local firewalls (This includes disabling the Firestarter default FW), at least for UDP traffic from and to port 5353
      • That you don't use a crappy NDISWrapper driver or proprietary WLAN driver that doesn't support multicasting properly
      • If you want the entire system to resolv .local domain names,  nss-mdns is your stuff
        • This may also require updating /etc/resolv.conf to add "search local", if you're feeling exceedingly brash.
  4. Does avahi run on non-Linux operating systems?
    • Avahi 0.6 runs on Linux, FreeBSD, NetBSD, Solaris and Darwin/MacOSX. There is some preliminary support for OpenBSD. Avahi still lacks Win32 support. You're welcome to help porting!
  5. Blah, you fools, glib is bloat and sucks'''
    • Avahi doesn't depend on glib. Yet it comes with a glib event loop adapter. Use --disable-glib to disable building it.
  6. Blah, you fools, D-Bus is bloat and sucks'''
    • Then Avahi is not for you, sorry. As it seems we think a little different about D-Bus than you do.
  7. Why did you implement yet another free mDNS stack? Apple released their code under a free license'''
    • The "freeness" of the license Apple used is questionnable, e.g. the Debian project decided to not include code under APSL. In addition we consider our code superior to Apple's in many aspects. In case you want to flame us on this topic, our email address is /dev/null.
  8. Will Avahi work without a GUI and/or X/GNOME/KDE?
    • Yes, while Avahi is most often useful in a GUI with some kind of program, actual use of its libraries are in no way tied to X, GNOME, KDE or any other kind of GUI. The screenshot we show here is simply of a tool which displays services on the network (It's really just a demonstration). One example is that you can use the static service files (/etc/avahi/services/) to advertise some services on a head-less machine, e.g. a WEB or FTP server.
  9. I want to bridge two networks that are connected via a VPN regarding mDNS. Avahi doesn't let me'''
    • By default Avahi will not consider a Point-To-Point link (such as a VPN link) for mDNS traffic. This has multiple reasons. One is security, since usually P-t-P links are used for connections to the Internet. Secondly, P-t-P links are usually much slower latency-wise than normal Ethernet based LAN. mDNS however is designed exclusively for low-latency networks. A number of timeout limitations inhibit the use of mDNS over long-latency links. Finally, multicasting is usually not supported or at least cumbersome on P-t-P links. If you still want to use Avahi with P-t-P links, you can enable the allow-point-to-point= option in Avahi's configuration file. But don't come to us and whine when it doesn't work for you. YMMV.
  10. How can I tell Avahi to ignore certain network interfaces?
    • Right now Avahi will make use of all suitable network interfaces, there is no configuration option to restrict the interfaces used. However, there is a trick to make sure that Avahi ignores specific interfaces: remove the MULTICAST bit from the interface flags. You can do this with ifconfig like this:
      ifconfig eth1 -multicast
      
    • Keep in mind that this might disable multicasting for other applications, too. Since only very few programs make use of multicasting this is usally not much a problem, though.
    • To automatically remove the MULTICAST bit using udev on specific interfaces, add a file to /etc/udev/rules.d containing this (replace "RULE TO MATCH DEVICES" with correct rule):
      ACTION=="add", SUBSYSTEM=="net", KERNEL=="RULE TO MATCH DEVICES", PROGRAM="/sbin/ifconfig %k -multicast"
      

Documentation

You can read the man pages online:

Troubleshooting

Some wifi cards using proprietary or ndiswrapper drivers may not work. The following cards require specific customisation:

  • Linksys (lsbcmnds ndiswrapper driver) - not working. Occasionally seen in Avahi browser when avahi-daemon is restarted, but queries soon timeout. Unable to see other machines. Note - iwconfig notes that "Warning: Driver for device wlan0 recommend version 18 of Wireless Extension, but has been compiled with version 17, therefore some driver features may not be available..."