Add Linux exp firewall support for virt_node_public_addr addresses.
A new tmcd command, publicaddrinfo, just dumps the relevant bits of virt_node_public_addr to any node in an experiment that has addrs allocated (we don't want to restrict based on calling node_id or pool_id). Then the generic getfwconfig() function calls that, and sets some bits. I also extended this function to add some dynamic clientside vars (EMULAB_DOMAIN, EMULAB_EXPDOMAIN, EMULAB_PUBLICADDRS) so that user firewall rule writers can use them to refer to the control net IPs of nodes in their experiment (i.e., node-0.EMULAB_EXPDOMAIN); and so that rules can be written over EMULAB_PUBLICADDRS -- a command-delineated list of IP addrs). Finally, I extended the Linux firewalling code to allow any experiment node to answer ARPs for the public IP addresses; we can't know a priori which node should answer -- and it could change. This closes #353 .
Showing with 120 additions and 5 deletions