I have tested when one sits behind a NAT and gets connect from WAN via NAT forwarding (there were problems with IP-numbers, the local IP got transfered instead of the router IP and so on).
I wasn't able to test yet, if it is possible for two nodes behind firewalls to connect to each other if both can talk to a third (I haven't got enough firewall seperated nodes)