Что такое nat pmp

Что такое nat pmp

The NAT Port Mapping Protocol (NAT-PMP) is a network protocol for establishing network address translation (NAT) settings and port forwarding configurations automatically without user effort. [1] The protocol automatically determines the external IPv4 address of a NAT gateway, and provides means for an application to communicate the parameters for communication to peers. NAT-PMP was introduced in 2005 by Apple as an alternative to the more common ISO Standard [2] Internet Gateway Device Protocol implemented in many NAT routers. The protocol was published as an informational Request for Comments (RFC) by the Internet Engineering Task Force (IETF) in RFC 6886.

NAT-PMP runs over the User Datagram Protocol (UDP) and uses port number 5351. It has no built-in authentication mechanisms because forwarding a port typically does not allow any activity that could not also be achieved using STUN methods. The benefit of NAT-PMP over STUN is that it does not require a STUN server and a NAT-PMP mapping has a known expiration time, allowing the application to avoid sending inefficient keep-alive packets.

NAT-PMP is the predecessor to the Port Control Protocol (PCP). [3]

Читайте также:

  1. Q.1.1. Прохождение света через кристаллы.
  2. XI. Чему научил меня Бог через Зулу
  3. XI. Чему научил меня Бог через зулу
  4. XI. ЧЕМУ НАУЧИЛ МЕНЯ БОГ ЧЕРЕЗ ЗУЛУ
  5. А Андрей хотел жить, как его «батя»: быть веселым и беспечным, уметь легко шагать через свои годы, обманывать житуху, уметь выкручиваться и не терять бодрость духа и молодость.
  6. А утром вся казарма ахнула: Фархада и еще одного азербайджанца в кочегарке засыпало углем. А еще через день.
  7. Апеляційна скарга на ухвалу слідчого судді розглядається не пізніш як через три дні після її надходження до суду апеляційної інстанції.
  8. В 1965г. ввёл новую схему — «Крымские связки». Однако через 13 лет от этой схемы пришлось
  9. В вытяжных системах удаляемый воздух возмещается в помещении за счет притока через воздухопроницаемые конструкции, неплотности притвора окон, форточки и фрамуги.
  10. В експерименті у жаби було зруйновано гіпофіз. Внаслідок цього через деякий час її шкіра посвітлішала. Відсутність якого гормону викликала таку реакцію шкірного покриву?
  11. В ОБРАТНЫЙ ПУТЬ ЧЕРЕЗ ОКЕАН

И еще одна задачка про сети и сетевые атаки. Да-да! А то все веб да веб.

Относительно недавно появилась (стандартом стала вроде в 2013 году) новая технология — NAT PMP (NAT Port Mapping Protocol). Если в общем, то она используется для автоматического проброса портов, в основном на SOHO-роутерах. Казалось бы, кто ей будет пользоваться? Ан нет, продвигает ее компания Apple, и это как бы говорит нам о том, что поддержка будет только расти. А потому умение «ломать» такие девайсы представляет приличный интерес, особенно оттого, что уязвимости, связанные с NAT-PMP, в основном конфигурационные (а значит, вряд ли будут «пропатчены»).

Читайте также:  Мтс драйвер модель модема

Но что-то я разошелся. Давай по порядку и с начала.

Вот есть весь диапазон IPv4-адресов. Он меньше, чем общее количество всех сетевых устройств. Да даже если бы и выдать каждому по одному — это была бы неуправляемая каша. Поэтому достаточно давно выделили ряд диапазонов приватных/«серых» IP-адресов. Обычные же адреса называются публичными/«белыми».

Теперь представим себе, что ты сидишь дома с ноутом и смартфоном, у тебя есть Wi-Fi-роутер, все подключено к интернету. Представим, что у Wi-Fi-роутера есть «белый» IP (66.55.44.33), который ему назначил твой провайдер. Твой же ноут имеет IP-адрес из приватной сети, 192.168.0.123 например, а смартфон — 192.168.0.56. И ты хочешь подключиться к хосту 8.8.8.8 (белый IP). Но подключиться «напрямую» со своего серого IP не получится, 8.8.8.8 не сумеет отправить тебе ответ. Но ты же можешь отправить пакет через свой роутер (у него-то есть белый IP, и пакет вернется от 8.8.8.8 к нему). Но как же сделать, чтобы мы отправили пакет через роутер от IP роутера и при этом ответ бы пришел через роутер к нам? И здесь нам поможет NAT (Network Address Translation). Вообще, есть несколько видов NAT’а, но мы коснемся только конфигурации many-to-one (самой распространенной).

Итак, когда ты с ноута отправляешь запрос на 8.8.8.8, роутер получает Наш пакет (так как он стоит шлюзом по умолчанию у тебя на ноуте), видит, что запрос идет во внешнюю сеть, после через начинается процесс NAT’а:

1. Роутер запоминает, с какого IP-адреса (192.168.0.123) и порта (1234) пришел запрос от тебя.

2. Меняет в твоем пакете IP-адрес отправителя на свой публичный (66.55.44.33) и порт отправителя на свой незанятый внешний порт (5678).

3. Запоминает это соотношение: 192.168.0.123:1234 = 66.55.44.33:5678

4. Получив ответ от 8.8.8.8, роутер проверяет порт (5678), на который пришел запрос, и видит, что это соотношение сохранено у него.

5. Роутер проводит обратное изменение: в IP-адрес назначения указывает 192.168.0.123, а в порт — 1234 и отправляет пакет на ноут.

Таким образом, для твоего ноута эти преобразования остаются незамеченными.

При этом твой смартфон также может ходить в интернет, и последовательность преобразований будет такой же. Разница лишь в том, что роутер выделит другой внешний порт для подключения со смартфона. То есть NAT-таблица будет выглядеть примерно так:

Читайте также:  Dlna dmr что это

В зависимости от порта, куда придет пакет с ответом, он будет переслан на тот или иной хост. Кстати, именно поэтому такой вид NAT’а называется еще Port Address Translation. Все вполне просто.

Но NAT решает одну проблему — подключение из серого диапазона в белый. Снаружи (из интернета) практически нет возможности подключиться к какому-то сервису на твоем ноутбуке. Решение этой задачи — проброс портов. Мы можем указать на роутере, что все подключения, приходящие на 66.55.44.33 на порт 7777, должны быть перекинуты на веб-сервер на ноуте 192.168.0.123:80. При этом роутер выполняет почти аналогичную операцию: подменяет в пакете IP назначения со своего внешнего на 192.168.0.123 и порт назначения с 7777 на 80. Ответные пакеты от нашего веб-сервера подвергаются обратному изменению.

Окей. Проброс портов — отличное решение. И я думаю, все современные роутеры позволяют настраивать его ручками через админку. Но полагаю, среднестатистический пользователь вряд ли знает, что такое порт или где у роутера админка. С другой стороны, многие сервисы, типа файлообмена или игр, требуют возможности внешних подключений.

Решением будет автоматический проброс портов, когда приложение на твоем ноуте само попросит роутер пробросить для него такой-то порт и роутер выполнит его желание. Для этого может быть использован протокол (точнее, набор протоколов) UPnP. Там есть расширение Internet Gateway Device (IGD), которое создано специально для управления пробросом портов.

Не знаю, с чем точно были связаны потребности Apple в новом протоколе для замены UPnP IGD. Возможно, дело в том, что он был чересчур универсальный, а потому очень толстый (настройка происходит через три подключения к различным портам). К тому же в нем были найдены пучки уязвимостей (переполняшки), о чем тут некогда писалось. Но в любом случае Apple создала новый протокол и поддерживает его в большинстве своих современных продуктов (насколько мне известно).

Главная его черта — простота. Используется UPD-порт 5351 для общения. Протокол бинарный. Никакой аутентификации не предусмотрено. И содержит, по сути, две команды (на деле чуть больше): пробрасывай данные с такого-то порта на такой-то хост и порт, скажи свой внешний IP-адрес.

Примерный, упрощенный алгоритм такой:

1. Приложение ноута отправляет запрос на роутер «Пробрасывай TCP-порт 80 с внешнего интерфейса на 192.168.0.123 на 80».

Читайте также:  Узнать знаменитость по фотографии

2. Если внешний порт 80 не занят, то роутер ответит, что данные будут пересылаться с 80-го порта на 192.168.0.123 на 80.

3. Если внешний порт 80 занят, то роутер подставит какой-то свободный порт и ответит, что данные будут пересылаться с 4444-го порта на 192.168.0.123 на 80.

4. Приложение с ноута запрашивает, какой внешний IP у роутера.

5. Роутер отвечает со своим внешним IP-адресом 66.55.44.33.

6. Приложение с ноута теперь знает, что коннекты на 66.55.44.33: 4444 будут приходить именно ему, и может «опубликовать» эти данные где-то в сети.

Казалось бы, что тут такого может случиться? Что тут вообще ломать, в особенности если ты находишься во внешней сети (интернете) и хочешь атаковать пользователей, находящихся за роутером?

Ребятки из Rapid7 провели goo.gl/xnEMWb на эту тему и выявили ряд проблем. Основная была связана с некорректной настройкой конечных девайсов (роутеров). По стандарту, запросы NAT-PMP должны обрабатываться, когда они приходят с внутреннего диапазона, но на многих девайсах разрешена конфигурация и с WAN-интерфейса (то есть из сети Интернет). Данная и некоторые другие тонкости дают возможность для атак. Причем тут важно знать, что во многом это не проблемы конечных пользователей, а некорректная настройка из коробки, от вендоров роутеров. В итоге Rapid7 обнаружила в интернете порядка миллиона по-разному уязвимых устройств. Заметь, это было сканирование интернета, а если вспомнить, что очень многие пользователи находятся за NAT’ом от провайдеров, то число может возрасти в разы (правда, для атаки на них необходимо быть подключенными к данному провайдеру).

Самое же вкусное здесь — потенциальные векторы атак через эту технологию, а они тут, должен признаться, выглядят впечатляюще.

Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.007 сек.)

Nat pmp что это

Автор Minato Nanikaze задал вопрос в разделе Другие языки и технологии

что такое NAT-PMP и UPnP и получил лучший ответ

Ответ от Апельсин[гуру]
Исправить просто, нужно в настройках роутера разрешить эти опции, либо сделать проброс порта. Возможно порт закрыт провайдером и вам нужен будет внешний белый айпи.
UPnP — Universal plug and play — набор протоколов позволяющий без лишних копаний в настройках получить рабочую систему, дословно подключи и играй!
NAT-PMP — Network Address Translation Port Mapping Protocol — сетевой протокол, обеспечивающий правильную работу совместимых программ во внутренних локальных сетях, по сути тот же проброс портов.

Ссылка на основную публикацию
Что означает охват в статистике вконтакте
Что такое охват подписчиков во Вконтакте Как посмотреть охват? Для сообщества Перейдите в сообщество, на панели управления нажмите кнопку «Статистика»,...
Что делать если взломали сим карту
Подавляющее большинство современных телефонов оборудовано лотком под сим-карту, вытащить который очень легко с помощью скрепки или иглы. Какие-то телефоны после...
Что делать если забыл название игры
В сообществе Лига Геймеров очень часто всплывают посты "Помогите найти игру". Там их не очень жалуют. Для этого и создано...
Что означает ошибка esp
Однажды ни с того ни с сего во время достаточно спокойной езды загорелась ошибка: "Сервис: ESP", затем следом появилось сообщение...
Adblock detector