169.254.0.0/16 is a special block reserved by IANA for communication between hosts within a subnet in the absence of external address configuration. These addresses are used for address autoconfiguration, a.k.a Zeroconf; when a host can't obtain an IP from static configuration or DHCP server, it can optionally assign itself a link-local IP address of 169.254.x.x/16 and discover services such as printers and file shares without any special configuration.
defines this block are only valid on-link
(point-to-point and local network segment).
defines these addresses can't be the source or destination of packets traversing beyond
routers, that any device receiving such a packet must not forward it, and any device must not answer all ARP requests for addresses in the 169.254/16 prefix. This restriction applies to multicast packets as well.
The implementation of this standard may vary; Microsoft APIPA
, Apple's Bonjour
and Unix/Linux Avahi
are the wellknown examples.
Many people consider this zero-configuration "feature" is also opening a new hole on the system; tends to do more harm than good, and prefer to disable it entirely. In CentOS, you can disable it by adding the line below to /etc/sysconfig/network :
and restart your network service.