RFC 3489 был разделен на три различных RFC:
RFC 5389 - базовый протокол STUN. Базовый протокол запроса привязки STUN и ответ привязки в основном совпадают с RFC 3489. Заголовок протокола обновляется волшебным файлом cookie, занимающим часть поля идентификатора транзакции. Некоторые атрибуты STUN переопределяются. Добавлено несколько новых (в частности - XOR_MAPPED_ADDRESS). Некоторые изменения в том, как выполняется аутентификация STUN. Обсуждение поведения и классификации NAT перенесено в RFC 5780.
RFC 5780 - «Обнаружение поведения Ната с использованием STUN». Основное изменение в обнаружении типа NAT состояло в том, чтобы отличать поведение сопоставления портов NAT от поведения фильтрации NAT. Принимая во внимание, что RFC 3489 попытался бы классифицировать NAT в одно из нескольких сегментов («конус», «ограниченный порт», «симметричный») - что было слишком общим для описания NAT.
RFC 5769 - просто излагается, как будет выглядеть шестнадцатеричный дамп нескольких различных типов сообщений STUN.
Из любопытства, я полагаю, полезно знать, работает ли ваше приложение за NAT. Но как знание поведения NAT повлияет на ваш путь к коду?
Бесстыдный плагин - используйте код моего сервера STUN , который размещен на GitHub.