The code can reference the project [erigon](https://github.com/erigontech/erigon/blob/main/p2p/nat/nat.go) and the stun server can use the same as [trin](https://github.com/ethereum/trin/blob/master/portalnet/src/socket.rs)