This daemon can be configured to "own" several IPs for which it will send out ARP replies when receiving ARP requests.
| ARPd (VrrpInterface& vif)
|vif||the VRRP interface on which the daemon runs.|
| ~ARPd ()
|void clear ()
Remove all configured IPs.
|void insert (const IPv4& ip)
Add an IP for which ARP replies should be sent.
|ip||the IP to add.|
|void stop ()
Stop the daemon.
|void start ()
Start the daemon.
|void ips_updated ()
Using this method the caller notifies ARPd that it has finished manipulating the IP addresses. This way one can clear and add IPs one by one without causing ARPd to stop (if IPs are cleared) and resume if IPs are added.
|void recv (const Mac& src, const PAYLOAD& payload)
This method notifies the reception of an ARP packet.
|mac||the source MAC address of the packet.|
|payload||the ARP header and data.|
|void set_mac (const Mac& mac)
Sets the MAC address of the ARP daemon, used when generating replies.
|mac||the MAC address.|