libutp (µTP) and NAT traversal (UDP hole punching)

2.4k Views Asked by At

According to the Wikipedia article the Micro Transport Protocol supports NAT traversal using UDP hole punching. But looking at the libutp's project page I can't find any such reference in the header files. Am I missing something obvious? Or has the NAT traversal been implemented somewhere else?

1

There are 1 best solutions below

0
the8472 On

UDP hole punching is not really specific to any protocol, it does not even need to be supported by the protocol that needs to traverse the NAT. I.e. it can happen out of band or at a higher protocol layer.

In the case of bittorrent-over-utp it is negotiated and initiated with the BEP55 ut_holepunch extension message. In addition to the specification you could also read libtorrent's implementation.