AutoIP negotiation module for link-local addresses
mount -Tio-pkt [-o option,option,...] lsm-autoip.so
The AutoIP module (lsm-autoip.so) configures a specified interface with a link-local IP address by negotiating with neighboring hosts. If no host on the local network is using the IP address that the module has chosen, the interface is configured with the chosen address.
The AutoIP module chooses its address from the IANA registered IP address network of 169.254/16. Some of this network is reserved for special purposes, so the available addresses are from 169.254.1.0 to 169.254.254.255.
Once an IP address is chosen and configured, the AutoIP module continues to monitor the network for address conflicts, and either defends or changes the address assigned to the interface to correct conflicts.
Only one interface can be supported at one time. The module can be loaded only once.
The interface that AutoIP is servicing, must exist before AutoIP module being loaded.
When the AutoIP module configures a TCP/IP interface with an IP address, it does so as an alias. This way, if the interface already has an IP address, it won't delete the original address; the interface is assigned both addresses. This allows the module to coexist with dhcp.client.
These examples assume a manual configuration in combination with AutoIP.
Configuring the interface:
ifconfig en0 alias 10.0.0.1
Unconfiguring the interface:
ifconfig en0 delete 10.0.0.1
Don't execute the following:
ifconfig en0 delete
This following command line mounts the AutoIP module to service interface en0. The initial link-local IP address that it PROBEs for is 169.254.20.20; it has a 200 ms delay between PROBE packets. If an IP address conflict is detected after the interface has been configured, it releases the address immediately.
mount -T io-pkt -oif=en0,ip=169.254.20.20,debug,delay=200,abandon lsm-autoip.so
The dhcp.client would delete the link-local IP address on an interface, after it has configured a routable IP address on the interface. This implies that if you already have some connection to other hosts using your link-local IP address, those links will be cut off. If later on dhcp.client obtained is an routable IP address.If this is a concern, you can use the force option to force the link-local address exist.
You can manually delete your routable IP address or link-local IP address. Just make sure you pass the address you want to delete into ifconfig. If you specify the force option, then you won't be able to remove link-local address.
dhcp.client, ifconfig, netstat
QNX Neutrino Core Networking User's Guide