The -d flag is used enable debugging. This also inhibits forking into the background and emailing the reports. Instead, they are sent to stderr.
The -f flag is used to set the ethernet/ip address database filename. The default is arp.dat.
The -i flag is used to override the default interface.
The -n flag specifies additional local networks. This can be useful to avoid "bogon" warnings when there is more than one network running on the same wire. If the optional width is not specified, the default netmask for the network's class is used.
The -N flag disables reporting any bogons.
The -r flag is used to specify a savefile (perhaps created by tcpdump(1) or pcapture(1)) to read from instead of reading from the network. In this case, arpwatch does not fork.
(Debian) The -s flag is used to specify the path to the sendmail program. Any program that takes the option -odi and then text from stdin can be substituted. This is useful for redirecting reports to log files instead of mail.
(Debian) The -p flag disables promiscuous operation. ARP broadcasts get through hubs without having the interface in promiscuous mode, while saving considerable resources that would be wasted on processing gigabytes of non-broadcast traffic. OTOH, setting promiscuous mode does not mean getting 100% traffic that would concern arpwatch . YMMV.
(Debian) -a By default, arpwatch reports bogons (unless -N is given) for IP addresses that are in the same subnet than the first IP address of the default interface. If this option is specified, arpwatch will report bogons about every IP addresses.
(Debian) The -m option is used to specify the e-mail address to which reports will be sent. By default, reports are sent to root on the local machine.
(Debian) The -u flag instructs arpwatch to drop root privileges and change the UID to username and GID to the primary group of username . This is recommended for security reasons, but username has to have write access to the default directory.
(Debian) The -R flag instructs arpwatch to restart in seconds seconds after the interface went down. By default, in such cases arpwatch would print an error message and exit. This option is ignored if either the -r or -u flags are used.
(Debian) The -Q flags prevents arpwatch from sending reports by mail.
(Debian) The -z flag is used to set a range of ip addresses to ignore (such as a DHCP range). Netmask is specified as 255.255.128.0.
Note that an empty arp.dat file must be created before the first time you run arpwatch.
/var/lib/arpwatch - default directory arp.dat - ethernet/ip address database /usr/share/arpwatch/ethercodes.dat - vendor ethernet block list
The current version is available via anonymous ftp:
Attempts are made to suppress DECnet flip flops but they aren't always successful.
Most error messages are posted using syslog.