File avahi-autoipd.README.SUSE of Package avahi

IPv4LL in SUSE Linux
====================

IPv4LL provides support of peer to peer address assignment from a
special link local IP range.

SUSE Linux contains three implementations of IPv4LL autoip protocol:


avahi-autoipd from avahi-autoipd package from avahi project
===========================================================

This is a daemon, that runs and assign IPv4LL address, either as a
fallback or at any time, depending on System/Zeroconf
AVAHI_AUTOIPD_FORCE_BIND sysconfig key (disabled by default).

The daemon runs permanently for each device, monitors the network
status, and assigns IPv4LL address when requested.

See http://avahi.org/wiki/AvahiAutoipd#ModesofOperation for more.


Activate avahi-autoipd implementation
-------------------------------------

- Install avahi-autoip package and check that System/Zeroconf
  AVAHI_AUTOIPD_FORCE_BIND sysconfig key is "yes" (the default).

- Set the address settings in the YaST network configuration either to
  None (to have IPv4LL address only) or DHCP (if you want DHCP together
  with IPv4LL).

- Note that NetworkManager uses avahi-autoipd by default.


For AVAHI_AUTOIPD_FORCE_BIND=false:
-----------------------------------

In this mode the daemon assigns IPv4LL address only of DHCP fails.

Advantage:
- All programs work with this setup.

Disadvantage:
- When DHCP assigns address, all existing IPv4LL connections are lost.


For AVAHI_AUTOIPD_FORCE_BIND=true:
----------------------------------

In this mode the deamon forces binding address from IPv4LL address, even if
standard IPv4 address exists.

Advantage:
- You can depend on IPv4LL address always assigned.

Disadvantage:
- Some programs don't work well with labeled IP addresses or interface
  aliases.



autoip from sysconfig package
=============================

autoip is hard bound to sysconfig scripts and it is called during ifup.

If DHCP adrress is assigned, autoip ends immediately. Only if no DHCP
address is assigned, it stays running as a daemon and provides IPv4LL
address.


Activate autoip implementation
------------------------------

- Do not install avahi-autoipd package or set System/Zeroconf
  AVAHI_AUTOIPD_FORCE_BIND sysconfig key to "no".

- Set Zeroconf the address settings in the YaST network configuration.



IPv4LL assigned by dhcpcd
=========================

If dhcpcd fails to obtain a lease, it will probe for a valid IPv4LL
address. Once obtained it will probe every 10 seconds for a DHCP server.


Activate dhcpcd implementation
------------------------------

This implementation is not supported in SUSE yet. Enabling this
implementation would require several manual changes in the
/sbin/ifup-dhcp script (removal of -L argument, and skipping of calls to
${SCRIPTNAME}-autoip in /sbin/ifup (e. g. by not setting Zeroconf in the
YaST network configuration).