<issue_start><issue_comment>Title: Fix testing over NAT
username_0: Doesn't work over NAT in some cases, due to the way that agent IP addresses are being discovered. Maybe don't mention this in your preso, since this can be overcome easily. Need to test that this works in your integration tests once fixed (use multiple docker bridges maybe?)

You may be able to solve the NAT problem by offering a discovery service on the server. You probably want to have a default interface on the server so the agents know what IP address it has, but they can then connect to a TCP or HTTP service offered by the server, and the server can simply add the source IP to that agent's metadata

(more from earlier)
testlet/service discovery integration for agents, to get around the NAT limitation (might need to do stuff like docker port mappings here as well)
<issue_comment>username_0: Adding to rebuild project so that's it's considered. But it should be noted that since we're getting rid of middleware like RMQ, we can detect the incoming IP address of the agent directly, so this becomes a lot easier.
<issue_comment>username_0: Also, want to make sure IPv6 is supported here.