Where does the route to 169.254.0.0 comes from?
Solution 1:
I like Marcel's answer but it doesn't really address the question. The question was 'Why do I have..', not 'How can I disable'. The OP may in fact not want to disable this route.
The 169.254.0.0/16 network is used for Automatic Private IP Addressing, or APIPA. If a DHCP client attempts to get an address, but fails to find a DHCP server after the timeout and retries period it will randomly assume an address from this network. This allows communication with hosts that have failed to obtain a DHCP address.
Solution 2:
From this article on the Red Hat Knowledgebase:
How do I disable the zeroconf route so that the system will boot without the 169.254.0.0 / 255.255.0.0 route?
Symptom:
Every time the system boots, the zeroconf route (169.254.0.0) is enabled. You manually disable it by turning off the firewall and remove the route with 169.254.0.0 / 255.255.0.0 using the route command.
Example output of the route with the zeroconf route enables would like similar to the following:
# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.15.50.0 * 255.255.252.0 U 0 0 0 eth0
169.254.0.0 * 255.255.0.0 U 0 0 0 eth0
Solution:
To disable the zeroconf route during system boot, edit the /etc/sysconfig/network file and add the following NOZEROCONF value to the end of the file:
NETWORKING=YES
HOSTNAME=localhost.localdomain
NOZEROCONF=yes