

Because you won’t determine the type of NAT during hole punching. This requires the client sending two UDP packets to two different IP addresses, then comparing their source addresses on the server.
Normally yes, you can just assume that two clients you are trying to connect both have port restricted cone NAT, and run the hole punching algorithm, and if the connection fails after ten seconds, show message to the users ‘Error 418: your router is a teapot’.
mcedit, because I’m not nerdy enough for vim.