“does the dual external IP addresses mean that UDP hole punching will never be reliable?” UDP hole punching is never reliable in the first place.
How does UDP hole punching work?
UDP hole punching is a method for establishing bidirectional UDP connections between Internet hosts in private networks using network address translators. After that the NAT device has a record of having sent a packet to the other machine, and will let any packets coming from this IP address and port number through.
Is TCP hole punching possible?
The availability of TCP hole punching depends on the type of computer port allocation used by the NAT. For two peers behind a NAT to connect to each other via TCP simultaneous open, they need to know a little bit about each other….Types of NAT.
| A predictable | A non-predictable | |
|---|---|---|
| B non-predictable | YES | NO |
What is a STUN server used for?
The STUN server enables clients to find out their public IP address, NAT type, and the Internet-facing port associated by the NAT device with a particular local port. This information is used to set up a UDP communication session between the client and the VoIP provider to establish a call.
Can UDP be bidirectional?
They are TCP or Transmission Control Protocol and UDP or User Datagram Protocol. TCP is connection oriented – once a connection is established, data can be sent bidirectional. UDP is a simpler, connectionless Internet protocol.
What is port punching?
To punch a hole, each client connects to an unrestricted third-party server that temporarily stores external and internal address and port information for each client.
Why is NAT bad for P2P?
Abstract: Network Address Translation (NAT) causes well-known difficulties for peer-to-peer (P2P) communication, since the peers involved may not be reachable at any globally valid IP address.
Does FaceTime use STUN?
Apple’s FaceTime is based on standards such as STUN and H. 264, but also includes unique features.
Are Google STUN servers free?
The Google STUN server is something you can freely use for development purposes, but, as a free service, there is no SLA. If you are deploying a commercial application, you should plan to deploy your own STUN/TURN servers.