Well, I'll take a crack at answering your first question. There's a command line version of Wireshark, called tshark, that may fit your needs. It's installed in BT5, and seems scriptable. You could probably use some combination of looping, along with send & awk, to look for an ARP request. Tshark has a pretty good man page.