ZeroConfNetworking
2620
Comment: note clarifications
|
3690
fleshed out summary, rationale, and use cases
|
Deletions are marked like this. | Additions are marked like this. |
Line 10: | Line 10: |
This spec involves the proper handling of assigning link-local addresses, and using them successfully when no static configurations are used and no DHCP responses are seen. | When a dynamic network configuration is desired and a local DHCP server is not available for a network, Ubuntu needs to correctly assign itself a link-local address. This is implemented by `avahi-autoipd`, but requires some additional configuration and packaging corrections to have the expected proper behavior. |
Line 13: | Line 13: |
Using link-local addresses for communicating on adhoc networks or local LANs without a DHCP server works for other operating systems. Having Ubuntu work correctly in these situations makes users more productive because they will be able to communicate with other link-local devices without having to do anything special. | |
Line 16: | Line 17: |
1. finding one's own ip on local network 2. two laptops on separate logical networks communicating with link-local 3. notice that unicast .local domain exists when using avahi |
1. Claudia's home network does not have a DHCP server, and does not want to have to define a static IP address for her laptop. She still be able to communicate with other devices on the network. 2. John's desktop computer was booted and it got a link-local address. Then he adds a DHCP server to his network, and boots a second computer that gets a regular DHCP-assigned address. He wants these two devices to communicate with eachother. 3. Mary uses a name server that makes a `.local` top-level-domain available, and she upgrades her computer from Edgy to Feisty, where link-local addresses are assigned. She needs notification that the unicast `.local` TLD and the link-local `.local` domain conflict with eachother, offering a hint on how to disable link-local assignments. |
Please check the status of this specification in Launchpad before editing it. If it is Approved, contact the Assignee or another knowledgeable person before making changes.
Launchpad entry: https://features.launchpad.net/distros/ubuntu/+spec/zero-configuration-networking
Packages affected: avahi-autoipd, libnss-mdns
Summary
When a dynamic network configuration is desired and a local DHCP server is not available for a network, Ubuntu needs to correctly assign itself a link-local address. This is implemented by avahi-autoipd, but requires some additional configuration and packaging corrections to have the expected proper behavior.
Rationale
Using link-local addresses for communicating on adhoc networks or local LANs without a DHCP server works for other operating systems. Having Ubuntu work correctly in these situations makes users more productive because they will be able to communicate with other link-local devices without having to do anything special.
Use cases
- Claudia's home network does not have a DHCP server, and does not want to have to define a static IP address for her laptop. She still be able to communicate with other devices on the network.
- John's desktop computer was booted and it got a link-local address. Then he adds a DHCP server to his network, and boots a second computer that gets a regular DHCP-assigned address. He wants these two devices to communicate with eachother.
Mary uses a name server that makes a .local top-level-domain available, and she upgrades her computer from Edgy to Feisty, where link-local addresses are assigned. She needs notification that the unicast .local TLD and the link-local .local domain conflict with eachother, offering a hint on how to disable link-local assignments.
Scope
Design
Implementation
- basefiles(?) update to include description of link-local network
- add "link-local 169.254.0.0" to /etc/networks
- dhclient hook for DNS changes to check for unicast "local" TLD
if ! host -t soa local. >/dev/null 2>&1; then dbus-msg OMGPONIES; fi
- zeroconf
- remove package from archive
- libnss-mdns
- start with version 0.8-5
- audit and promote to main
- read debian #393711
- audit for error conditions around nsswitch.conf updating sanity
build package with --disable-legacy (drops ministack)
- network manager
- patch with proper avahi ll hooks, especially adhoc modes
- avahi-autoipd
audit and promote to main (see http://avahi.org/wiki/SecurityConsiderations)
require both ll routes, as described in "Routes" at http://avahi.org/wiki/AvahiAutoipd
- avahi-daemon
- enable by default
- in /etc/network/interfaces add some comments on how to set up manual ll addresses correctly.
- ifupdown, g-s-t
- patch to include "ipv4ll" method for sane configuration in /etc/network/interfaces
Code
Data preservation and migration
Unresolved issues
BoF agenda and discussion
Clarification of terminology
Zeroconf is a collection of protocols including ipv4 link local, mdns, and dns service-discovery. Apple's implementation of zeroconf was named "Rendezvous", and was later renamed to "Bonjour". Avahi is a free software implementation of zeroconf. See http://avahi.org/wiki/AboutAvahi.
IPv4 link-local addresses are in the 165.254.0.0/16 space.
mDNS is DNS over multicast on the local network.
DNS-sd allows for service discovery using mDNS.
ZeroConfNetworking (last edited 2008-08-06 17:00:50 by localhost)