perfuração e STUN são coisas bem diferentes.
O STUN permitirá que um sistema calcule qual é o endereço IP externo (se, como é comum, ele estiver localizado atrás de um firewall NAT ou equivalente). É realmente útil quando o endereço IP da conexão com a Internet é dinamicamente atribuído.
[UDP] perfuração permite um mapeamento de um endereço IP do mundo real para uma caixa específica atrás de um firewall NATing - Isso é uma coisa de segurança, mas muito mais importante é necessário por causa do relacionamento NAT: roteador precisa saber qual cliente enviar o pacote também. [Para respostas ao tráfego regular, ele mantém uma tabela de consulta de associações entre o IP, o IP de destino e as portas usadas (e as portas relacionadas, se estiver fazendo bem o seu trabalho)]