Maybe I don’t understand what you are trying to do but will this not work:
- Client A starts Listen server
- Listen server uses a STUN service to get the external IP and Port and reports it to the nodejs server.
- Client B gets the IP and port from the nodejs server and connects to the listen server