Открываем порты за NAT при помощи NAT-PMP и UPnP IGD / Хабр
Ранее я много раз слышал, что UPnP каким-то образом умеет самостоятельно открывать порты (производить Port Forwarding на роутере) по запросу от хоста из локальной сети. Однако, то, каким именно образом это происходит, и какие протоколы для этого используются, доселе было покрыто для меня пеленой тумана.
В данной статье я хочу кратко рассказать, как работают два механизма для проброса портов, а именно NAT Port Mapping Protocol и Internet Gateway Device (IGD) Protocol, входящий в набор протоколов UPnP. К своему удивлению я обнаружил, что в рунете информация по данному вопросу более чем скудна, что и сподвигло меня на написание данной заметки.
Для начала приведу краткий FAQ:
Q: Для чего нужны данные протоколы?
A: Для формирования на маршрутизаторе правила проброса определенного TCP/UDP порта (Port Forwarding) не вручную, а «автоматически», т.е. по запросу от хоста во внутренней сети.
Q: Как это реализуется?
A: Устройство за NAT отправляет маршрутизатору запрос с указанием внутреннего и внешнего номеров портов и типа протокола (TCP/UDP). Если указанный внешний порт свободен, маршрутизатор формирует у себя правило трансляции и рапортует запросившему компьютеру об успешном выполнении запроса.
Q: Проводится ли на маршрутизаторе аутентификация/авторизация запросов на открытие порта?
A: Нет, не проводится.
Теперь же рассмотрим работу данных протоколов более подробно (под катом).
Port Mapping Protocol
NAT-PMP описан в RFC 6886. Для своей работы он использует UDP-порт сервера 5351.
Рассмотрим работу протокола на конкретном примере — торрент-клиенте Vuze 5.7 для Windows 7.
Примечание: NAT-PMP во Vuze по умолчанию выключен. Его необходимо активировать в настройках плагинов.
1. Запускаем Wireshark. В строке фильтра вводим nat-pmp
2. Запускам Vuze.
3. Останавливаем перехват пакетов, смотрим результаты.
У меня получилось следующее:
Всего видим 6 пакетов (3 запроса и 3 ответа).
Первые 2 это запрос внешнего адреса маршрутизатора и ответ с указанием этого самого адреса. Не будем на них подробно останавливаться и лучше рассмотрим, как происходит маппинг портов на примере пакетов 3-4.
Запрос:
Здесь мы видим, что запрашивается проброс внешнего UDP порта 48166 на такой же внутренний порт. Интересно, что внутри протокола не указывается адрес хоста, на который должна происходить трансляция (Inside Local в терминологии Cisco). Это означает, что маршрутизатор должен взять адрес источника пакета из IP-заголовка и использовать его в качестве Inside Local.
Параметр Requested Port Mapping Lifetime ожидаемо означает время жизни записи в таблице трансляций.
Ответ:
Как мы видим, маршрутизатор предполагаемо создал запрашиваемую трансляцию и ответил кодом Success. Параметр Seconds Since Start of Epoch означает время с момента инициализации таблицы трансляций (т.е. с момента последней перезагрузки роутера).
Маппинг TCP-портов происходит точно также и отличается только значением поля Opcode.
После того, как приложение прекратило использовать данные порты, оно может послать маршрутизатору запрос на удаление трансляции.
Главное отличие запроса на удаление от запроса на создание заключается в том, что параметр Lifetime устанавливается в ноль.
Вот что произойдет, если мы закроем Vuze.
Запрос:
Ответ:
На этом рассмотрение NAT-PMP закончено, предлагаю перейти к несколько более «мудреному» UPnP IGD.
Internet Group Device Protocol
Для обмена своими сообщениями данный протокол использует SOAP.
Однако, в отличие от NAT-PMP, IGD не использует фиксированный номер порта сервера, поэтому перед тем, как обмениваться сообщениями, нужно сперва этот порт узнать. Делается это при помощи протокола SSDP (данный протокол является частью UPnP и используется для обнаружения сервисов).
Запускаем торрент-клиент. Он формирует SSDP-запрос и отсылает его на мультикастовый адрес 239.255.255.250.
Маршрутизатор формирует ответ и отправляет его уже юникастом:
Внутри ответа мы можем увидеть URL для взаимодействия с маршрутизатором по протоколу IGD.
Далее Vuze подключается к маршрутизатору по указанному URL и получает XML с информацией о данном устройстве, в том числе содержащую набор URI для управления некоторыми функциями маршрутизатора. После того, как нужный URI найден в rootDesc.xml, Vuze отправляет SOAP-запрос на содание NAT-трансляции по найденному URI.
Примечание: до того, как запросить создание трансляции, Vuze заставил маршрутизатор перечислить все имеющиеся Port Forwarding’и. Для чего это было сделано, я могу лишь догадываться.
SOAP-запрос на создание трансляции UDP-порта:
Как говорилось ранее, нужный URI (идет сразу после POST) Vuze взял из rootDesc.xml. Для добавления трансляции используется функция с названием
Также можно отметить, что, в противоположность NAT-PMP, Inside Local-адрес указывается внутри самого протокола.
Аналогично NAT-PMP, при закрытии торрент-клиента маппинги проброшенных портов удаляются. Делается это функцией DeletePortMapping:
Можно заметить, что для удаления правила достаточно указать только тип протокола (UDP) и номер внешнего порта, не указывая остальные параметры.
Заключение
В данной статье мы рассмотрели два достаточно простых способа по созданию на домашнем роутере правил Port Forwarding по команде от хоста из локальной сети. Остается лишь отметить, что если вы считаете работу данных протоколов угрозой безопасности вашей домашней сети, то их можно попытаться выключить (хотя, конечно, гораздо лучше доверить вопросы безопасности утилите, которая для этого предназначена — файрволу). В случае моего Zyxel Giga II, на котором, к слову, и проводились все тесты, это делается CLI-командой no service upnp (примечательно, что в веб-интерфейсе опция включения/отключения UPnP отсутствует).
Что такое UPnP и почему его нужно отключить?
Автор Исхаков Максим На чтение 4 мин. Просмотров 12k. Опубликовано
Вы бы предпочли выбрать удобство или безопасность? UPnP помогает быстро подключать устройства к сети – нет необходимости в ручной настройке. Однако он также может позволить хакерам входить в вашу сеть для выполнения вредоносных действий. Стоит узнать, как хакеры используют UPnP и что можно сделать, чтобы защитить себя.
Что такое переадресация портов?
Чтобы понять, что такое UPnP, нужно сначала разобраться, что такое переадресация портов. Она используется для установления прямого подключения между домашним устройством или сервером и удаленным устройством. Например, вы можете подключить ноутбук к видеокамере и следить за ним, пока находитесь вдали.
Как это работает? Все ваши домашние устройства, включая маршрутизатор, вместе создают локальную сеть (LAN). Все, что находится за пределами локальной сети, например, серверы сайта или компьютер вашего друга, расположено в глобальной сети (WAN). Как правило, никто за пределами вашей локальной сети не может получить доступ к устройствам в вашей сети, если вы не позволите им воспользоваться переадресацией портов.
Что такое UPnP?
Это протокол, который позволяет приложениям и другим устройствам в вашей сети автоматически открывать и закрывать порты для подключения друг к другу. Например, если вы решили подключить принтер ко всем устройствам в доме без UPnP, то вам потребуется сделать это вручную, уделяя внимание каждому отдельному девайсу. Но благодаря UPnP можно автоматизировать этот процесс.
UPnP предлагает нулевую конфигурацию, что означает, что ни одно из устройств в вашей сети не нуждается в ручной настройке для обнаружения нового устройства. С поддержкой UPnP они могут автоматически подключаться к сети, получать IP-адрес, находить другие устройства в сети и подключаться к ним, и это очень удобно.
Для чего используется UPnP?
- Игры. Подключение Xboxes и других игровых приставок для потоковой передачи онлайн игр;
- Дистанционное видеонаблюдение. Вы можете использовать UPnP для подключения к домашним камерам, когда находитесь не дома;
- Цифровые голосовые помощники;
- Устройства IOT, такие как интеллектуальное освещение, смарт-замки и т.д.;
- Потоковая передача мультимедиа;
Почему UPnP небезопасен?
Первоначально предполагалось, что UPnP будет работать только на уровне локальной сети, что означает, что устройства только в вашей сети могут подключаться друг к другу. Однако многие производители маршрутизаторов теперь включают UPnP по умолчанию, что делает их доступными для обнаружения из WAN, а это приводит к многочисленным проблемам безопасности.
UPnP не использует аутентификацию или авторизацию (только некоторые устройства), предполагая, что устройства, пытающиеся подключиться к нему, являются надежными и поступают из вашей локальной сети. Это означает, что хакеры могут найти бэкдоры в вашей сети. Например, они отправят UPnP-запрос на ваш маршрутизатор и он откроет им порт без лишних вопросов.
Как только хакер получит доступ к сети, он сможет:
- Получить удаленный доступ к другим устройствам, подключенным к той же сети;
- Установить вредоносное ПО на ваши устройства;
- Украсть вашу конфиденциальную информацию;
- Использовать ваш маршрутизатор в качестве прокси-сервера для сокрытия других вредоносных действий в интернете. Они могут использовать его для распространения вредоносных программ, кражи информации о кредитных картах и проведения фишинговых атак или атак типа DDoS. Использование вашего маршрутизатора в качестве прокси означает, что все эти атаки будут выглядеть так, будто они исходят от вас, а не от хакера.
Как защитить себя?
Когда дело доходит до уязвимостей UPnP, есть два варианта, которые вы можете выбрать для собственной защиты.
Во-первых , вы можете включить UPnP – UP, который обеспечивает механизмы аутентификации и авторизации для устройств и приложений UPnP. Однако, этот метод не считается очень надежным, так как многие устройства не поддерживают его и могут предполагать, что другие устройства, подключаемые к вашему маршрутизатору, заслуживают доверия.
Другим более безопасным методом является полное отключение UPnP. Перед этим рекомендуется проверить, уязвим ли ваш маршрутизатор к UPnP-эксплойтам. Также нужно подумать о том, хотите ли вы отказаться от удобства UPnP и сможете ли вы настроить свои устройства вручную. Для этого может потребоваться некоторые технические знания.
На видео: Как включить на роутере UPnP?
Всем привет! Сегодня мы поговорим про функцию UPnP (Universal Plug and Play) – что это такое, для чего нужна эта функция, и как она включается (или выключается) на роутере. Давайте рассмотрим конкретный пример – представим, что у нас есть домашняя сеть с роутером. В ней есть подключенные устройства – не важно какие, это могут быть телефоны, планшеты, телевизоры, принтеры или IP-камеры.
Все они подключены к маршрутизатору (роутеру), который также аналогично подключен к глобальной сети интернет. В итоге у нас есть:
- Локальная сеть всех домашних устройств (LAN).
- Интернет от провайдера или глобальная сеть всех устройств в мире (WAN).
- И домашний Wi-Fi роутер, который связывает две эти сети.
Для того, чтобы в локальной сети все устройства работали нормально, обнаруживали друг друга и быстро подключались, и нужна технология UPnP. В противном случае всем этим телефонам, планшетам и телевизорам нужно было вручную прописывать настройка и открывать порты. Во время подключения таких устройств, на них постоянно открываются и закрываются порты – прям как на морском берегу для кораблей.
Например, вы решили посмотреть с телевизора фильм, находящийся на компьютере. Тогда нужна технология DLNA, которая позволяет передавать видео в потоковом режиме. При подключении к компьютеру, он в свою очередь открывает определенный порт. В общем, если бы не было у нас UPnP, то для каждого подключения к любому устройству дома вам нужно было бы прописывать вручную настройки, открывать или закрывать порты.
Про порты вы можете более детально почитать тут.
UPnP в глобальной сети
Мы рассмотрели понятие на примере домашней сети, но ведь не все используют прямое подключение в локальной сетке. Обычно к роутеру подключаются, чтобы выйти в интернет. И тут также включается функция UPnP, которая при запросе в интернет к определенному серверу также открывает определенные порты.
Например, всем известный uTorrent также использует эту технологию, и она должна по умолчанию быть включена на роутере. Когда мы включаем эту программу, она делает запрос в интернет и открывает порт для данного потока информации.
По сути UPnP открывает и закрывает порты для внешних запросов, для тех устройств, которые и делали эти запросы в интернет. Я думаю с понятием мы разобрались. Но бывают проблемы, когда данная функция выключена на роутере. Тогда некоторые программы, игры, утилиты не будут работать на компьютере или телефоне. Также могут быть проблемы с подключением игровых приставок тип Xbox или PlayStation.
Но существует и «обратная сторона монеты». Как вы понимаете, при запросе к серверу при подключении открываются порты на ваше устройство. Понятное дело, что данным подключением могут воспользоваться хакеры и взломщики. Для обычного пользователя шанс, конечно, не велик, но все же… В интернатах до сих пор идут «холивары» по поводу того, надо ли отключать UPnP или нет. Поэтому отключать функцию или включать – решать вам. Но как я и говорил ранее, при выключенном UPnP нужно будет для отдельных программ или устройств делать ручной проброс портов на роутере.
Далее я расскажу, как включить UPnP, отключить и настроить на вашем домашнем маршрутизаторе.
Вход в интерфейс роутера
Нам нужно попасть в Web-интерфейс аппарата – для этого с подключенного устройства к локальной сети нужно открыть браузер и вписать в адресную строку IP или DNS адрес роутера. Данный адрес находится на этикетке под роутером. Чаще всего используют 192.168.1.1. или 192.168.0.1. Если у вас будут какие-то проблемы со входом в маршрутизатор – смотрите инструкцию тут.
Далее инструкции будут немного отличаться в зависимости от модели роутера.
D-Link
Старая прошивка
«Дополнительно» – «UPnP IGD».
Новая прошивка
«Расширенные настройки» – «UPnP IGD» – включаем галочку.
TP-Link
Новая прошивка
«Дополнительные настройки» – «NAT переадресация» – далее выбираем нашу функцию и включаем её в дополнительном окне.
Старая прошивка
Переходим в раздел «Переадресация», находим UPnP и включаем.
ASUS
«Интернет» – «Подключение» – тут уже должен быть выбран один из типов подключения, найдите нужную строку и включите функцию.
ZyXEL Keenetic
Новая прошивка
«Общие настройки» – кликаем «Изменить набор компонентов» – далее нам нужно найти данную службу и убедиться, что она установлена. Также её можно удалить.
Старая прошивка
Netis
Включить функцию можно на вкладке «Переадресация».
LinkSys
«Administration» – «Management» – листаем в самый низ.
В нужно разделе переводим в состояние: «Enable» (Включено) или «Disable» (Выключено).
Tenda
Версия 1, 2, 3
Нужная функция находится в «Расширенных настройках».
Версия 4
Слева в меню выбираем «Advanced».
Листаем в самый низ и включаем функцию в режим «Enable».
При настройке сети часто появляется вопрос по поводу функции UPnP — что такое в роутере, как работает, и какие риски несет для пользователя ее включение. Ниже рассмотрим назначение опции, как ее активировать, отключать и настраивать. Поговорим о преимуществах и недостатках, а также опасности для пользователя Сети.
Что такое UPnP
Для начала разберемся с терминологией — в чем суть UPnP в роутер, и что это такое. Аббревиатура UPnP расшифровывается как Universal Plug and Play и представляет собой расширение популярного стандарта. С ее помощью программа на ПК может подать запрос к роутеру на упомянутом языке, а после перенаправить на себя порт. Архитектура построена на базе действующих технологий Интернет-сети и стандартов, среди которых XML, HTTP, TCP/IP и другие.
Простыми словами, UPnP — протокол, позволяющий программам и другим устройствам сети открывать или закрывать порты для подключения. К примеру, для коммутации МФО ко всему оборудованию в квартире придется вбивать настройки для каждого девайса отдельно.
Для чего он нужен
С помощью службы UPnP происходит автоматическое перенаправление портов. Такая опция используется в Скайпе, торрент-клиентах, XBOX Live и т. д. После включения функции автоматически задает требуемый набор правил NAT и межсетевого экрана, что экономит время пользователя на настройку.
Для нормальной работы UPnP должна быть активна не только в роутере, но и в приложении, для которого осуществляется проброс портов. Правила для переадресации формируются в автоматическом режиме путем подачи запроса через механизм рассматриваемой службы. Установленные правила работают только в период сессии и исключительно для хоста, с которого идет запрос. После окончания сессии правило убирается.
Включение UPnP в роутере необходимо в следующих случаях:
- подключение игровых приставок для передачи онлайн-игр;
- организация видеонаблюдения на расстоянии;
- применением цифровых голосовых помощников;
- подключение умных замков;
- потоковая передача мультимедиа и т. д.
Зная особенности UPnP IGD, и что это в роутере, можно быстро активировать опцию и использовать ее возможности для соединения нескольких устройств без ввода настроек вручную.
Как пользоваться: включение, отключение, настройка
Применение UPnP подразумевает три этапа — активация нужной функции в роутере, ее включение на ПК (если требуется), а также настройка в приложении. Рассмотрим каждый подробнее.
Включение в роутере
Для начала рассмотрим, как включить UPnP на роутере, если служба не активирована по умолчанию или была выключена ранее.
Инструкция к действию (на примере TP-Link):
- Войдите в любой веб-обозреватель и вбейте в адресной строке IP роутера. Информацию для входа можно найти на этикетке в нижней части устройств.
- В поле идентификации введите логин и пароль. Если ранее пользователь не вносил изменения, достаточно два раза ввести admin.
- Переместитесь в раздел Дополнительные настройки и найдите необходимые данные.
- В блоке расширенных настроек найдите пункт Переадресация NAT и войдите в него для внесения правок в установки роутера.
- В появившемся меню найдите название службы UPnP и кликните по ней.
- Переместите ползунок в правую сторону и тем самым включите опцию на роутере.
В дальнейшем можно отключить функцию UPnP, сделав те же самые шаги. Разница только в том, что на завершающем этапе тумблер нужно будет перевести влево.
Для разных роутеров настройка может отличаться. В частности, в ZyXEL необходимо перейти в раздел Домашняя сеть, а далее найти отметку UPnP и установить галочку Разрешить, а после сохранить изменения.
Включение на ПК
После внесения настроек в роутере необходимо изменить конфигурацию и на компьютере. Ниже рассмотрим пример для ПК с установленной на нем ОС Виндовс 8. В остальных версиях принцип действия такой же, но с небольшими особенностями.
Для включения UPnP сделайте следующее:
- Кликните правой кнопкой на Пуск, а в появившемся окне найдите ссылку Панель управления. Перейдите в этот раздел.
- Направляйтесь в секцию Сеть и Интернет, где найдите необходимые настройки.
- На странице Сеть и Интернет жмите левой кнопкой по ссылке Центр управления сетями…
- Выберите строчку изменения дополнительных параметров общего доступа и жмите на ее.
- В свойствах профиля включите сетевое обнаружение, а также автонастройку на сетевом оборудовании.
- Сохраните изменения и перезапустите компьютер.
Теперь функция включена в роутере и на компьютере.
Настройка программ
Для пользования службой необходимо настроить на сервис используемые программы. Здесь все зависит от того, какое ПО вы планируете использовать. Рассмотрим несколько вариантов:
- Торрент-клиент. Войдите в настройки ПО, выберите Соединение, а после этого Настроить. На следующем этапе жмите ОК и Применить, чтобы торрент работал только с UPnP.
Убедитесь в правильности ввода информации. Для этого войдите в Свойства соединения в Шлюзе, кликните на кнопку Параметры и убедитесь в появлении правила для uTorrent. Если торрент установлен на двух и более «станциях», для каждой программы задается свой порт. В дальнейшем ни в коем случае нельзя использовать случайное значение.
- Скайп. Войдите в настройки Скайпа и перейдите в раздел соединения. Там уберите отметку с пункта Enable UPnP. В дальнейшем необходимо следить, чтобы параметры порта не пересекались.
По похожему принципу можно настроить и другие программы для работы с UPnP.
Плюсы и минусы использования
В любой технологии можно найти преимущества и недостатки. В том числе UPnP.
Плюсы:
- Высокая скорость обмена между P2P-клиентами. Этот показатель давно перешагнул за отметку в 100 Мбит/с.
- Легкость настройки. После включения UPnP на роутере, ПК и в других программах больше не нужно вручную настраивать порты. Эта работа происходит в автоматическом режиме, что экономит время.
Минусы:
- Ошибки в программе. Режим UPnP работает много лет, поэтому разработчики постоянно занимаются его усовершенствованием. Главные проблемы удалось убрать в течение первых лет деятельности. Несмотря на это, риск ошибок программирования все еще остается. Этим могут воспользоваться злоумышленники для обхода защиты.
- Подключение к общественной сети. При соединении с такой сетью человек должен быть внимательным, чтобы избежать потери конфиденциальной информации. Подключение к общественной сети — всегда риск.
Несмотря на ряд недостатков, технология считается одной из самых востребованных в роутере. Не удивительно, что многие пользователи часто включают ее на постоянной основе.
Безопасно ли использование UPnP
При появлении технологии планировалось, что UPnP будет функционировать на локальном уровне для подключения устройств внутри сети. Но некоторые производители включили опцию в роутерах по умолчанию, что делает устройство доступным из WAN, а это ведет к уязвимости в сфере безопасности. Во время работы UPnP не применяется авторизация или аутентификация. Считается, что все подключаемые устройства имеют высокую степень надежности.
Хакеры пользуются такой уязвимостью и могут найти слабые места в сети. Распространенная ситуация — отправка UPnP запроса на роутер с последующем открытием порта. После подключения к сети злоумышленник получает доступ к другому оборудованию, находящемуся в сети. В дальнейшем он может установить вирус, украсть конфиденциальные сведения или использовать маршрутизатор в роли прокси-сервера. Негативных сценариев много. При этом выявить хакера трудно, ведь, по сути, атаки идут изнутри сети.
Для защиты можно использовать следующие методы:
- Активируйте UPnP-UP на роутере, подразумевающий авторизацию и аутентификацию. Минус в том, что такой режим многие устройства не поддерживают.
- Отключите опцию вообще. В таком случае придется вносить настройки вручную, но при этом можно быть уверенным в безопасности.
UPnP для роутера — удобная функция, упрощающая процесс настройки портов. Но нужно помнить о рисках и предусмотреть дополнительные способы защиты.
Как включить UPnP на роутере
При использовании роутера у юзеров иногда возникают проблемы с доступом к торрент-файлам, онлайн-играм, аське и другим популярным ресурсам. Решить данную проблему может применение UPnP (Universal Plug and Play) — специального сервиса для прямого и быстрого поиска, подключения и автоматической настройки всех устройств в локальной сети. Фактически эта служба является альтернативой ручного проброса портов на маршрутизаторе. Нужно только включить функцию UPnP на роутере и на компьютере. Как это сделать?
Включаем UPnP на роутере
Если у вас нет желания вручную открывать порты для различных сервисов на своём роутере, то можно попробовать в деле UPnP. Данная технология имеет как достоинства (простота использования, высокая скорость обмена данными), так и недостатки (пробелы в системе безопасности). Поэтому подходите к включению UPnP обдуманно и осознанно.
Включение UPnP на роутере
Для того чтобы задействовать функцию UPnP на своём роутере, необходимо войти в веб-интерфейс и внести изменения в конфигурацию маршрутизатора. Сделать это несложно и вполне по силам любому владельцу сетевого оборудования. В качестве примера рассмотрим такую операцию на роутере TP-Link. На маршрутизаторах других брендов алгоритм действий будет похожим.
- В любом интернет-обозревателе вводим в адресной строке IP-адрес роутера. Обычно он указан на этикетке с тыльной стороны устройства. По умолчанию чаще всего применяются адреса
192.168.0.1
и192.168.1.1
, далее нажимаем клавишу Enter. - В окне аутентификации набираем в соответствующих полях действующие имя пользователя и пароль доступа к веб-интерфейсу. В заводской конфигурации эти величины одинаковы:
admin
. Затем жмём на кнопку «OK». - Попав на главную страницу веб-интерфейса вашего роутера, в первую очередь перемещаемся на вкладку «Дополнительные настройки», где мы обязательно найдём нужные нам параметры.
- В блоке расширенных настроек маршрутизатора ищем раздел «Переадресация NAT» и переходим в него для внесения изменений в конфигурацию роутера.
- В выпавшем подменю наблюдаем название столь необходимого нам параметра. Кликаем левой кнопкой мыши по строке «UPnP».
- Передвигаем ползунок в графе «UPnP» вправо и включаем данную функцию на роутере. Готово! При необходимости в любой момент вы можете движением ползунка влево отключить функцию UPnP на своём роутере.
Включение UPnP на компьютере
С конфигурацией маршрутизатора мы разобрались и теперь нужно задействовать службу UPnP на ПК, подключенном к локальной сети. Для наглядного примера возьмём ПК с Windows 8 на борту. В других версиях самой распространенной операционной системы наши манипуляции будут аналогичными с незначительными отличиями.
- Щёлкаем правой кнопкой мыши по кнопке «Пуск» и в появившемся контекстном меню выбираем графу «Панель управления», куда и перемещаемся.
- Далее отправляемся в блок «Сеть и интернет», где находятся интересующие нас настройки.
- На странице «Сеть и интернет» кликаем ЛКМ по разделу «Центр управления сетями и общим доступом».
- В следующем окне жмём по строке «Изменить дополнительные параметры общего доступа». Мы почти добрались до цели.
- В свойствах текущего профиля включаем сетевое обнаружение и автоматическую настройку на сетевых устройствах. Для этого ставим галочки в соответствующих полях. Жмём на значок «Сохранить изменения», перезагружаем компьютер и пользуемся технологией UPnP в полной мере.
В заключение обратите внимание на одну важную деталь. В некоторых программах, например uTorrent, также необходимо будет настроить использование UPnP. Но полученные результаты могут вполне оправдать ваши усилия. Поэтому дерзайте! Удачи!
Читайте также: Открытие портов на роутере TP-Link
Мы рады, что смогли помочь Вам в решении проблемы.Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.
Помогла ли вам эта статья?
ДА НЕТПоделиться статьей в социальных сетях:
что такое в роутере: зачем нужна эта функция?
Опубликовано 22.08.2019 автор Андрей Андреев — 0 комментариев
Всех приветствую и рад видеть! Сегодня разберем протокол UPnP: что такое в роутере, зачем нужен и нужен ли вообще, как включить эту опцию и правильно ее настроить, а также какие могут возникнуть ошибки при работе устройства.
Что такое UPnP
Аббревиатура расшифровывается как Universal Plug and Play и является логическим продолжением технологии PnP. Так называют набор сетевых протоколов и аппаратных решений, задача которых – облегчить и автоматизировать настройку сетевых устройств в корпоративной среде или при домашнем использовании.
Неважно, сколько девайсов коннектится к маршрутизатору и какие операционные системы или прошивки они используют – благодаря этой опции, подключение выполняется в несколько кликов.
Технология оперирует принятыми стандартами и технологиями, обеспечивающими функционирование Глобальной паутины – XML, HTTP и TCP/IP, обеспечивая автоматизацию подключения и бесперебойную работу однородных устройств в сетевой среде.
Это упрощает настройку для обычного пользователя: не нужно обладать глубокими познаниями в компьютерной технике, чтобы самостоятельно запустить сетевое соединение.
UPnP, в основном, используется для компактных сетей. На эффективность работы не влияют ни среда для передачи сигнала, ни используемые языки программирования. Функция поддерживается большинством популярных программ – например, Skype, uTorrent или TOR.
Для правильной работы достаточно настроить только саму программу – все остальные задачи ОС берет на себя. Принцип прост – после активации маршрутизатор автоматически выдает устройству или отдельному ПО собственный сетевой адрес и порт для подключения.
Как включить функцию в настройках роутера
В современных маршрутизаторах эта опция почти всегда доступна в настройках, независимо от бренда – она присутствует в Tp-link, в asus, в Zyxel или Keenetic. Для активации необходимо перейти в меню настроек роутера, введя в браузере IP-адрес в адресной строке и авторизовавшись с помощью логина и пароля.Как правило, вкладка UPnP размещается в дополнительных настройках (Advanced). Называться необходимый раздел может по-разному, но в любом случае для активации необходимо установить галочку Enable UPnP.
После сохранения этих настроек, девайсу может потребоваться перезагрузка. Хочу уточнить, что как правило, эта опция активирована по умолчанию уже «с коробки».
Как отключить – убрать галочку или переместить флажок в положение Disabled. Как настроить эту опцию – ничего дополнительно настраивать, кроме самой активации, нет необходимости: технология полностью автоматизирована и требует от пользователя минимального вмешательства.
Изменение настроек компьютера
При неправильных настройках ПК или ноутбука сеть бывает недоступна. В таком случае может потребоваться изменить дополнительные настройки. Выполняется по следующему алгоритму:
- Перейдите на Панель управления;
- Откройте вкладку «Центр управления сетями и общим доступом»;
- Выберите раздел «Изменить дополнительные параметры» в меню слева;
- В разделе «Сетевое обнаружение» переместите флажок в положение «Включить»;
- Нажмите кнопку «Сохранить изменения».
В Windows 10 процедура выполняется аналогично, за исключением того что пара пунктов называется по другому.
Не исключен вариант, что отдельно придется настраивать необходимые программы – например, UTorrent или Skype. Как правило, необходимая опция находится в разделе «Соединение» или Connection. Для активации достаточно установить галочку или переместить флажок в положение Enabled.
Надеюсь вам было интересно. Также рекомендую вам почитать публикации о «WDS в роутере – что это за функция» и «Нужно ли обновлять прошивку», можете почитать тут. Если статья была вам полезна, буду вам благодарен, если поделитесь этим постом в социальных сетях. Пока!
С уважением, автор блога Андрей Андреев.
Привет! Очень часто бывает, что после установки роутера отказываются работать такие программы как uTorrent, DC++ и подобные клиенты для P2P сетей. Это происходит по той причине, что программа не может получить файл на компьютер который находится в локальной сети (за роутером). Но проблема может возникнуть не только с клиентами P2P сетей, но и с онлайн играми, настройкой WEB, или FTP серверов и т. д.
Для того, что бы все работало, необходимо делать перенаправленние портов. Если делать это вручную, то сам процесс немного сложный и непонятный. Нужно присваивать каждому компьютеру статический IP, затем навастривать перенаправленные портов в настройках маршрутизатора.
Есть такая полезная функция, как UPnP. Это такой себе автоматический переброс портов. В большинстве случаев, достаточно включить UPnP в настройках роутера (если он еще не включен) и все будет работать отлично. Но иногда, без ручного переброса портов не обойтись. Каждый способ имеет свои плюсы и минусы.
Ручной переброс портов, или UPnP?
В этой статье я хотел написать только о UPnP. О том как включить эту функцию на роутере и в программах DC++ и uTorrent (о ручной настройке постараюсь написать в отдельной статье). Но давайте сначала разберемся, что лучше UPnP, или все же стоит настроить переброс вручную.
- UPnP – это просто, не нужно что-то там прописывать, долго настраивать и т. д. Если вы боитесь что-то натворить в настройках маршрутизатора, то UPnP это то что нужно. Из минусов: может не работать в некоторых программах, серверах, играх. Ну и безопасность, UPnP может перебросить то, что перебрасывать как бы не нужно 🙂 (но это спорное мнение и оно не должно Вас пугать).
- Ручная настройка перенаправления портов требует более серьезных настроек. И этот способ немного неудобен тем, что при появлении новых программ, или каких-то изменениях существующих, придется постоянно настраивать перенаправление. Это не очень удобно.
Включаем UPnP в настройках роутера
Обычно, по умолчанию в настройках роутера сервис UPnP уже включен (в Tp-Link, точно). Да и программы типа uTorrent даже через роутер работают без дополнительных настроек. А вот с DC++, насколько я заметил, бываю частые проблемы.
Давайте сначала проверим, активна ли функция UPnP в вашем маршрутизаторе.
Зайдите в настройки маршрутизатора. Обычно это адрес http://192.168.1.1, или http://192.168.0.1.
В Tp-Link:
Перейдите на вкладку Forwarding – UPnP (Переадресация – UPnP). Должен быть статус Enabled (Включено).
Asus:
Может быть по-разному, но обычно это вкладка Интернет – Подключение и там есть переключатель UPnP.
Эта функция может называться немного по другому. Вкладка WAN – Port Trigger. Пункт Enable Port Trigger должен быть включен.
D-Link:
Переходим вверху на вкладку Advanced, затем слева выбираем Advanced Network и смотрим, стоит ли галочка возле Enable UPnP.
ZyXel:
Пункты меню могут немного отличатся, в зависимости от версии устройства, прошивки и т. п. Если не сможете найти, то напишите в комментария, разберемся :).
Проверяем настройки DC++ и uTorrent
Я покажу, как проверить включена ли функция UPnP в этих программах.
В DC++ зайдите в настройки на вкладку Настройки соединения и посмотрите, отмечен ли пункт Фаэрвол с UPnP (только WinXP+).
В uTorrent переходим в пункт Настройки – Настройки программы. Вкладка Соединение. Смотрим, что бы стояла галочка возле Переадресация UPnP.
Послесловие
Надеюсь, мне удалось немного прояснить ситуацию с перебросом портов. На первый взгляд эта тема кажется непонятной и сложной. Но функция UPnP создана для того, что бы немного упростить этот процесс и облегчить нашу жизнь.
Хотя, как я уже писал, иногда без ручной настройки переброса не обойтись.
Всего хорошего!
Функция межсетевого взаимодействия универсального устройства Plug-and-Play (UPnP) — протокола управления портом (PCP)
draft-bpw-pcp-upnp-igd-interworking-01
Этот документ определяет поведение функции межсетевого взаимодействия UPnP IGD (устройство интернет-шлюза) / PCP.Требуется встроить функцию взаимодействия UPnP IGD-PCP (IGF-PCP IGF) в маршрутизаторы CP, чтобы обеспечить прозрачное управление NAT в средах, где UPnP используется на стороне LAN, а PCP — на внешней стороне маршрутизатора CP.
Ключевые слова «ДОЛЖЕН», «НЕ ДОЛЖЕН», «ТРЕБУЕТСЯ», «ДОЛЖЕН», «НЕ ДОЛЖЕН», «СЛЕДУЕТ», «НЕ СЛЕДУЕТ», «РЕКОМЕНДУЕТСЯ», «МОЖЕТ» и «ДОПОЛНИТЕЛЬНО» в этом документе должны интерпретироваться как описано в RFC 2119 [RFC2119] .
Данный интернет-проект представлен в полном соответствии с положениями BCP 78 и BCP 79.
Internet-Drafts — рабочие документы Инженерной группы по Интернету (IETF). Обратите внимание, что другие группы могут также распространять рабочие документы как Интернет-проекты. Список текущих интернет-проектов находится по адресу http: / & # 8288; / & # 8288; datatracker.ietf.org / & # 8288; drafts / & # 8288; current / & # 8288 ;.
Интернет-черновики являются черновыми документами, действительными не более шести месяцев, и могут быть обновлены, заменены или устаревшими другими документами в любое время. Неуместно использовать Интернет-проекты в качестве справочного материала или ссылаться на них, кроме как «в процессе разработки».»
Срок действия этого интернет-проекта истекает 24 июня 2011 года.
Copyright (c) 2010 IETF Trust и лица, указанные в качестве авторов документа. Все права защищены.
Данный документ регулируется BCP 78 и правовыми положениями IETF Trust, касающимися документов IETF (http: / & # 8288; / & # 8288; trustee.ietf.org / & # 8288; лицензия — & # 8288; информация) в Влияние на дату публикации этого документа. Пожалуйста, внимательно ознакомьтесь с этими документами, так как они описывают ваши права и ограничения в отношении этого документа.Компоненты кода, извлеченные из этого документа, должны включать в себя текст упрощенной лицензии BSD, как описано в разделе 4.e Правил доверия, и предоставляются без гарантии, как описано в упрощенной лицензии BSD.
PCP [ID.ietf-pcp-base] обсуждает реализацию функций управления NAT, которые используют устройства NAT операторского класса, такие как DS-Lite AFTR [ID.ietf-softwire-dual-stack-lite] или NAT64 [ID.ietf -behave-v6v4-xlate-отслеживание состояния]. Тем не менее, в средах, где UPnP используется в локальной сети, в маршрутизатор CP необходимо встроить функцию взаимодействия между UPnP IGD и PCP (пример показан на рисунке 1).
Рассматриваются две конфигурации:
- В маршрутизаторе CP отсутствует функция NAT. Это требуется, например, в развертываниях DS-Lite или NAT64;
- Маршрутизатор CP встраивает функцию NAT.
UPnP-PCP УПНП Контроль Взаимодействие Точка Функция PCP Сервер | | | | (1) AddPortMapping | | | ---------------------> | | | | (2) PCP запрос PINxy | | | --------------------------> | | | |
Рисунок 1: Пример потока
Функция взаимодействия IGD-PCP UPnP (IWF IGD-PCP) поддерживает локальную таблицу сопоставлений, в которой хранятся все активные сопоставления, заданные внутренними контрольными точками UPnP.Этот выбор дизайна ограничивает количество сообщений PCP, подлежащих обмену с сервером PCP.
Триггеры для деактивации функции взаимодействия UPnP IGD-PCP с маршрутизатора CP и использования режима только PCP выходят за рамки этого документа.
В остальном PINxy относится к одному из кодов операций PCP PIN44, PIN46, PING64 и PIN66, определенных в [I-D.ietf-pcp-base].
В этом документе используются следующие сокращения:
CP | Маршрутизатор помещения клиента |
---|---|
DS-Lite | Dual-Stack Lite |
IGD | Устройство интернет-шлюза |
IWF | Функция взаимодействия |
NAT | Трансляция сетевых адресов |
PCP | Протокол управления портом |
UPnP | Универсальный Plug and Play |
В качестве напоминания на рисунке 2 показана модель архитектуры, принятая UPnP IGD [IGD2].На рисунке 2 используется следующая терминология UPnP:
- Клиент относится к хосту, расположенному в локальной сети.
- Контрольная точка IGD — это контрольная точка UPnP, использующая UPnP для управления IGD (устройством интернет-шлюза).
- Хост представляет собой удаленный узел, доступный в Интернете.
+ ------------- + | IGD Control | | Точка | ----- + + ------------- + | + ----- + + ------ + + --- | | | | | IGD | ------- | Хост | + --- | | | | + ------------- + | + ----- + + ------ + | Клиент | ----- + + ------------- +
Рисунок 2: UPnP IGD Модель
Эта модель недопустима, когда PCP используется, например, для управления NAT операторского класса (a.к.а., провайдер NAT), в то время как внутренние хосты продолжают использовать UPnP. В таких сценариях на рисунке 3 показана обновленная модель.
+ ------------- + | IGD Control | | Точка | ----- + + ------------- + | + ----- + + -------- + + ------ + + --- | IGD- | | Поставщик | | | | PCP | ------- | NAT | - <Интернет> --- | Пэр | + --- | IWF | | | | | + ------------- + | + ----- + + -------- + + ------ + | Локальный хост | ----- + + ------------- + Сторона LAN Внешняя сторона <====== UPnP IGD ===============> <====== PCP =====>
Рисунок 3: Модель взаимодействия UPnP IGD-PCP
В обновленной модели, изображенной на рисунке 3, один или два уровня NAT могут встречаться в тракте данных.Действительно, в дополнение к NAT операторского класса, маршрутизатор CP может встроить функцию NAT (рисунок 4).
+ ------------- + | IGD Control | | Точка | ----- + + ------------- + | + ----- + + ---- + + ------ + + --- | IGD- | | | | Удаленное | | PCP | ------- | NAT2 | - <Интернет> --- | Хост | + --- | IWF | | | | | + ------------- + | + ----- + + ---- + + ------ + | Локальный хост | ----- + NAT1 + ------------- +
Рисунок 4. Сценарий каскадного NAT
Чтобы обеспечить успешное взаимодействие между UPnP IGD и PCP, в маршрутизатор CP встроена функция взаимодействия.В модели, определенной на фиг.3, все серверно-ориентированные функции UPnP IGD, клиент PCP [I-D.ietf-pcp-base] и функция взаимодействия UPnP IGD-PCP встроены в маршрутизатор CP (то есть IGD). В остальной части документа функция взаимодействия IGD-PCP относится к клиенту PCP и функции взаимодействия UPnP IGD-PCP.
Функция взаимодействия UPnP IGD-PCP отвечает за генерацию правильно сформированного сообщения PCP (соответственно, UPnP IGD) из полученного сообщения UPnP IGD (соответственно, PCP).
Для указания соответствия между IGD UPnP и PCP предоставляются три таблицы:
- В таблице 1 показано соответствие между параметрами WANIPConnection и параметрами PCP;
- В таблице 2 основное внимание уделяется соответствию между поддерживаемыми методами;
- В таблице 3 перечислены сообщения об ошибках IGD и их соответствующие сообщения PCP.
Обратите внимание, что некоторые улучшения были интегрированы в WANIPConnection, как описано в [IGD2].
WANIPConnection | PCP | Комментарии |
---|---|---|
PortMappingEnabled | Не применимо | При значении 1 этот параметр НЕ ДОЛЖЕН воспроизводиться в качестве аргумента в сообщениях PCP.Если установлено значение 0, это режим PCP по умолчанию (явного указания в сообщениях PCP нет). PCP не поддерживает деактивацию динамического сопоставления NAT, поскольку первоначальная цель PCP — облегчить обход NAT операторского класса. Поддержка такой функции для каждого абонента может перегрузить NAT операторского класса. |
PortMappingLeaseDuration | Запрошенное время жизни картографирования | PCP рекомендует 7200 в качестве значения по умолчанию. Когда PortMappingLeaseDuration установлен в 0, максимальное значение времени жизни МОЖЕТ быть включено в соответствующее сообщение PCP.PCP допускает максимальное значение 65536 секунд, в то время как UPnP IGD допускает 604800 секунд (то есть одну неделю) в качестве максимальной границы. 3600s — это рекомендуемая стоимость аренды в IGD UPnP: 2 [IGD2]. |
Внешний порт | Внешний порт номер | PCP не поддерживает явные значения подстановочных знаков. Если ExternalPort является подстановочным значением, случайное значение номера внешнего порта ДОЛЖНО быть включено в соответствующее сообщение PCP. |
InternalPort | Внутренний порт № | |
PortMappingProtocol | Транспортный протокол | IGD поддерживает только TCP и UDP. |
InternalClient | Внутренний IP-адрес | InternalClient может быть IP-адресом или полным доменным именем. В PCP поддерживается только схема IP-адреса. Если FQDN используется контрольной точкой IGD, оно должно быть преобразовано в IP-адрес функцией взаимодействия при передаче сообщения на сервер PCP. |
ExternaIPAddress | Внешний IP-адрес | |
PortMappingDescription | Не применимо | Не поддерживается в базовом PCP.При наличии в сообщениях UPnP IGD этот параметр НЕ ДОЛЖЕН распространяться в соответствующих сообщениях PCP. Если локальный клиент PCP поддерживает опцию PCP для передачи описания, эта опция МОЖЕТ использоваться. |
RemoteHost | REMOTE_PEER | PCP РЕКОМЕНДУЕТ настроить брандмауэр CP-маршрутизатора вместо перегрузки NAT операторского класса. Можно использовать опцию REMOTE_PEER PCP. |
ВозможныеСоединенияТипов | Не применимо | выходит за рамки PCP |
ConnectionStatus | Не применимо | выходит за рамки PCP |
PortMappingNumberOfEntries | Не применимо | Управляется локально с помощью функции межсетевого взаимодействия UPnP IGD-PCP |
SystemUpdateID | Не применимо | Управляется локально с помощью функции межсетевого взаимодействия UPnP IGD-PCP |
Оба метода IGD: 1 и IGD: 2 перечислены в таблице 2.
WANIPConnection | PCP | Комментарии |
---|---|---|
GetGenericPortMappingEntry | Не применимо | Этот запрос не передается на сервер PCP. Функция взаимодействия IGD-PCP поддерживает обновленный список активных отображений, созданных на сервере PCP внутренними хостами. См. Раздел 5.8 для получения дополнительной информации. |
GetSpecificPortMappingEntry | Не применимо | В нормальных условиях функция взаимодействия IGD-PCP поддерживает обновленный список активных сопоставлений, созданных на сервере PCP. Функция взаимодействия IGD-PCP локально обрабатывает этот запрос и предоставляет запись сопоставления портов на основе ExternalPort, PortMappingProtocol и RemoteHost. См. Раздел 5.8 для получения дополнительной информации |
AddPortMapping | PINxy | Мы рекомендуем использовать AddAnyPortMapping () вместо AddPortMapping ().Обратитесь к разделу 5.7.2 |
DeletePortMapping | PINxy с запрошенным временем жизни, установленным на 0 | См. Раздел 5.9 |
GetExternalIPAddress | PCP пока не поддерживает метод получения внешнего IP-адреса. Выдача PINxy может использоваться как средство для извлечения внешнего IP-адреса | .|
DeletePortMappingRange () | PINxy со сроком службы до 0 | Индивидуальные запросы выдаются функцией взаимодействия IGD-PCP.Обратитесь к разделу 5.9 для получения более подробной информации. |
GetListOfPortMappings () | Не применимо | Функция межсетевого взаимодействия IGD-PCP поддерживает обновленный список активных сопоставлений, созданных на сервере PCP. Функция взаимодействия IGD-PCP локально обрабатывает этот запрос. См. Раздел 5.8 для получения дополнительной информации |
AddAnyPortMapping () | PINxy | Не обнаружено проблем для передачи этого запроса на сервер PCP.Обратитесь к Разделу 5.7.1 для более подробной информации. |
В таблице 3 перечислены коды ошибок UPnP IGD и соответствующие коды PCP. Коды ошибок, специфичные для IGD: 2 помечены соответствующим образом.
Код ошибки IGD | код ошибки PCP |
---|---|
401 (недействительное действие) | 129 (UNSUPP_OPCODE) |
402 (InvalidArgs) | в день (MALFORMED_REQUEST) |
501 (ActionFailed) | 154 (UNABLE_TO_DELETE_ALL) (??) |
606 (ActionNotAuthorized) (только для IGD: 2) | 151 (NOT_AUTHORIZED) |
713 (указано ArrayIndexInvalid) | Не применимо, поскольку запросы Get * не передаются на сервер PCP | .
714 (NoSuchEntryInArray) | PCP всегда возвращает положительный ответ, даже если удаляемое сопоставление не существует.Этот код ошибки не применим для запросов Get *, которые не передаются на сервер PCP |
715 (WildCardNotPermitedInSrcIP) | в день (MALFORMED_REQUEST) |
716 (WildCardNotPermitedInSrcExtPort) | Не применимо |
718 (ConflictInMappingEntry) | Не применимо |
724 (SamePortValuesRequired) | Не применимо |
725 (OnlyPermanentLeaseSupported) | Не применимо |
726 (RemoteHostOnlySupportsWildcard) | 130 (UNSUPP_OPTION) |
727 (ExternalPortOnlySupportsWildcard) | Не применимо |
728 (NoPortMapsAvailable) (только для IGD: 2) | 4 (NO_RESOURCES) или 152 (USER_EX_QUOTA) |
729 (конфликт с другими механизмами) (только для IGD: 2) | в сутки (MECHANISM_CONFLICT) |
730 (PortMappingNotFound) (только для IGD: 2) | Не применимо |
732 (WildCardNotPermittedInPort) (только для IGD: 2) | в день (MALFORMED_REQUEST) |
733 (InconsistentParameter) (только для IGD: 2) | Не применимо |
В этом разделе рассматриваются сценарии с или без NAT в маршрутизаторе CP.
Функция взаимодействия IGD-PCP реализует один из методов обнаружения, указанных в [I-D.ietf-pcp-base] (например, DHCP [I-D.bpw-pcp-dhcp]). Функция взаимодействия IGD-PCP ведет себя как клиент PCP при обмене данными с предоставленным сервером PCP.
Чтобы не влиять на доставку локальных услуг, требующих управления локальным IGD во время любого события сбоя для достижения сервера PCP (например, IP-адрес / префикс не назначен маршрутизатору CP), функция взаимодействия IGD-PCP НЕ ДОЛЖНА НЕ БЫТЬ быть призван.Действительно, механизм UPnP используется для управления этим устройством и, следовательно, приводит к успешной работе внутренних служб.
Как только сервер PCP доступен, функция взаимодействия IGD-PCP ДОЛЖНА синхронизировать свои состояния, как указано в разделе 5.10.
Для настройки политик безопасности, применяемых к входящему и исходящему трафику, UPnP IGD можно использовать для управления механизмом локального брандмауэра.
Поэтому для этой цели не требуется функция взаимодействия IGD-PCP.
Внутренние контрольные точки UPnP не знают о наличии функции взаимодействия IGD-PCP в маршрутизаторе CP (IGD). В частности, контрольные точки UPnP НЕ ДОЛЖНЫ знать о деактивации NAT в маршрутизаторе CP.
Никаких изменений не требуется в контрольной точке UPnP.
Функция взаимодействия IGD-PCP ДОЛЖНА хранить локально все отображения, созданные внутренними контрольными точками UPnP на сервере PCP. Перенаправления портов ДОЛЖНЫ храниться в постоянном хранилище.В противном случае после сброса или перезагрузки функция взаимодействия IGD-PCP ДОЛЖНА синхронизировать свои состояния, как указано в разделе 5.10.
После получения ответа PCP PINxy от сервера PCP, функция взаимодействия IGD-PCP ДОЛЖНА извлечь вложенные сопоставления и ДОЛЖНА сохранить их в локальной таблице сопоставлений. Локальная таблица сопоставления — это изображение таблицы сопоставления, поддерживаемое сервером PCP для данного абонента.
Если в маршрутизатор CP не встроен NAT, содержимое полученных сообщений WANIPConnection и PCP не изменяется функцией взаимодействия IGD-PCP (i.содержание сообщений WANIPConnection копируется в сообщения PCP (и наоборот) согласно таблице 1).
В отличие от сценария с одним уровнем NAT (раздел 5.5), функция межсетевого взаимодействия IGD-PCP ДОЛЖНА обновлять свое содержимое принятых сообщений отображения с помощью IP-адреса и / или номера порта, принадлежащего внешнему интерфейсу маршрутизатора CP (т. Е. После работа NAT1 на рисунке 4), а не так, как первоначально было установлено контрольной точкой UPnP.
Все сообщения WANIPConnection, отправленные контрольной точкой UPnP (соответственно, PCP Server) перехватывается функцией взаимодействия IGD-PCP. Затем соответствующие сообщения (см. Таблицу 1, таблицу 2 и таблицу 3) генерируются функцией взаимодействия IGD-PCP и отправляются на подготовленный сервер PCP (соответственно, соответствующая точка управления UPnP). Содержимое сообщений PCP, полученных сервером PCP, отражает информацию о сопоставлении, примененную в первом NAT. В частности, внутренний IP-адрес и / или номер порта запросов заменяются на IP-адрес и номер порта, назначенные NAT маршрутизатора CP.Для обратного пути ответные сообщения PCP перехватываются функцией взаимодействия IGD-PCP. Содержимое соответствующих сообщений WANIPConnection обновлено:
- Внутренний IP-адрес и / или номер порта, которые изначально были расположены контрольной точкой UPnP и сохранены в NAT маршрутизатора CP, используются для обновления соответствующих полей в полученных ответах PCP.
- Внешний IP-адрес и номер порта не изменяются функцией взаимодействия IGD-PCP.
- Запись сопоставления NAT в первом NAT обновляется в соответствии с результатом запроса PCP.
Время жизни отображений, созданных во всех задействованных NAT, ДОЛЖНО быть назначенным конечным сервером PCP. В любом случае время жизни ДОЛЖНО быть меньше или равно времени, назначенному конечным сервером PCP.
Для создания сопоставления можно использовать два метода: AddPortMapping () или AddAnyPortMapping ().
AddAnyPortMapping () — РЕКОМЕНДУЕМЫЙ метод.
Когда контрольная точка UPnP выдает AddAnyPortMapping (), этот запрос принимается сервером UPnP.Затем запрос передается в функцию взаимодействия IGD-PCP, которая генерирует запрос PINxy PCP (см. Таблицу 1 для сопоставления параметров WANIPConnection и PCP). После получения ответа PCP PINxy от сервера PCP сопоставление XML возвращается запрашивающей контрольной точке UPnP (содержимое сообщений соответствует рекомендациям, перечисленным в разделе 5.6 или разделе 5.5 в соответствии с развернутым сценарием). Пример потока изображен на рисунке 5.
Если ошибка PCP получена от сервера PCP, соответствующий код ошибки WANIPConnection Таблица 3 генерируется функцией взаимодействия IGD-PCP и отправляется запрашивающей контрольной точке UPnP.
UPnP-PCP УПНП Контроль Взаимодействие Точка Функция PCP Сервер | | | | (1) AddAnyPortMapping | | | ---------------------> | | | | (2) PCP запрос PINxy | | | (запрошенный внешний порт = 0) | | | ----------------------------> | | | | | | (3) PCP PINxy Ответ | | | (назначенный внешний порт = 6598) | | | <---------------------------- | | (4) AddAnyPortMapping | | | ReservedPort = 6598 | | | <--------------------- | |
Рисунок 5: Пример потока при использовании AddAnyPortMapping ()
Специальная опция с именем HONOR_EXTERNAL_PORT определена в [I-D.ietf-pcp-base] для переключения поведения в сообщении запроса PCP. Эта опция вставляется IWF IGD-PCP при отправке запросов на сервер PCP, только если контрольная точка UPnP запрашивает конкретный внешний порт. Когда используется подстановочный знак (т. Е. 0), параметр HONOR_EXTERNAL_PORT не требуется вставлять в запросе PCP к серверу PCP (см. Рисунок 6). В остальном мы предполагаем, что конкретный внешний порт запрашивается контрольной точкой UPnP.
UPnP-PCP УПНП Контроль Взаимодействие Точка Функция PCP Сервер | | | | (1) AddPortMapping | | | ExternalPort = 0 | | | ---------------------> | | | | (2) PCP запрос PINxy | | | (запрошенный внешний порт = 0) | | | ----------------------------> | | | | | | (3) PCP PINxy Ответ | | | (назначенный внешний порт = 1365) | | | <---------------------------- | | (4) AddPortMapping | | | ExternalPort = 1356 | | | <--------------------- | |
Рисунок 6: Пример AddPortMapping () с подстановочным символом внешнего порта
После получения AddPortMapping () от контрольной точки UPnP, функция взаимодействия IGD-PCP сначала проверяет, не используется ли запрошенный номер внешнего порта другой внутренней контрольной точкой UPnP.В случае, если сопоставление, привязанное к запрошенному номеру внешнего порта, найдено в локальной таблице сопоставления, IWF IGD-PCP ДОЛЖНА отправить обратно ошибку ConflictInMappingEntry запрашивающей контрольной точке UPnP (см. Рисунок 7).
UPnP-PCP УПНП Контроль Взаимодействие Точка Функция PCP Сервер | | | | (1) AddPortMapping | | | ExternalPort = 2356 | | | ---------------------> | | | | | | (2) Ошибка: | | | ConflictInMappingEntry | | | <--------------------- | | | | | | (3) AddPortMapping | | | ExternalPort = 4586 | | | ---------------------> | | | | | | (4) Ошибка: | | | ConflictInMappingEntry | | | <--------------------- | | | | |
Рисунок 7. Локальное поведение IWF
Этот обмен (рисунок 7) повторяется до тех пор, пока точка управления UPnP не запросит номер внешнего порта, который не используется.Затем IGF IGD-PCP генерирует запрос PINxy PCP со всей запрашиваемой информацией о сопоставлении, как указано контрольной точкой UPnP, если в маршрутизаторе CP не встроен NAT или не обновлено, как указано в разделе 5.6. Кроме того, IWF IGD-PCP вставляет опцию HONOR_EXTERNAL_PORT в сгенерированный запрос PCP.
Если запрашиваемый внешний порт используется, сообщение об ошибке PCP ДОЛЖНО быть отправлено сервером PCP на IWF IGD-PCP с указанием CANNOT_HONOR_EXTERNAL_PORT в качестве причины ошибки. IWF IGD-PCP передает отрицательное сообщение в контрольную точку UPnP, указывая ConflictInMappingEntry в качестве кода ошибки.Контрольная точка UPnP повторно выдает новый запрос с новым запрошенным номером внешнего порта. Этот процесс повторяется до тех пор, пока не будет получен положительный ответ или не будет достигнута максимальная повторная попытка.
Если сервер PCP способен удовлетворить запрошенный внешний порт, положительный ответ отправляется запрашивающей IWF IGD-PCP. После получения ответа от сервера PCP, возвращаемое отображение ДОЛЖНО быть сохранено функцией взаимодействия IGD-PCP в ее таблице локальных отображений, и положительный ответ ДОЛЖЕН быть отправлен запрашивающей контрольной точке UPnP.Этот ответ прекращает этот обмен.
На рисунке 8 показан пример обмена потоками, который происходит, когда сервер PCP удовлетворяет запросу IWF IGD-PCP. На рисунке 9 показан обмен сообщениями при использовании запрошенного внешнего порта.
UPnP-PCP УПНП Контроль Взаимодействие Точка Функция PCP Сервер | | | | (1) AddPortMapping | | | ExternalPort = 8080 | | | ---------------------> | | | | (2) PCP запрос PINxy | | | запрошенный внешний порт = 8080 | | | HONOR_EXTERNAL_PORT | | | ----------------------------> | | | | | | (3) PCP PINxy Ответ | | | назначенный внешний порт = 8080 | | | <---------------------------- | | (4) AddPortMapping | | | ExternalPort = 8080 | | | <--------------------- | |
Рисунок 8: Пример потока (положительный ответ)
UPnP-PCP УПНП Контроль Взаимодействие Точка Функция PCP Сервер | | | | (1) AddPortMapping | | | ExternalPort = 8080 | | | ---------------------> | | | | (2) PCP запрос PINxy | | | запрошенный внешний порт = 8080 | | | HONOR_EXTERNAL_PORT | | | ----------------------------> | | | (3) PCP PINxy Ответ | | | CANNOT_HONOR_EXTERNAL_PORT | | | <---------------------------- | | (4) Ошибка: | | | ConflictInMappingEntry | | | <--------------------- | | | (5) AddPortMapping | | | ExternalPort = 5485 | | | ---------------------> | | | | (6) PCP запрос PINxy | | | запрашиваемый внешний порт = 5485 | | | HONOR_EXTERNAL_PORT | | | ----------------------------> | | | (7) Ответ PCP PINxy | | | CANNOT_HONOR_EXTERNAL_PORT | | | <---------------------------- | | (8) Ошибка: | | | ConflictInMappingEntry | | | <--------------------- | | ,... | (а) AddPortMapping | | | ExternalPort = 6591 | | | ---------------------> | | | | (б) PCP PINxy запрос | | | запрошенный внешний порт = 6591 | | | HONOR_EXTERNAL_PORT | | | ----------------------------> | | | (c) Ответ PCP PINxy | | | CANNOT_HONOR_EXTERNAL_PORT | | | <---------------------------- | | (d) Ошибка: | | | ConflictInMappingEntry | | | <--------------------- | |
Рисунок 9: Пример потока (отрицательный ответ)
Чтобы составить список активных сопоставлений, контрольная точка UPnP может выполнить GetGenericPortMappingEntry (), GetSpecificPortMappingEntry () или GetListOfPortMappings ().
Эти методы НЕ ДОЛЖНЫ передаваться на сервер PCP, поскольку функция межсетевого взаимодействия IGD-PCP поддерживает локальное отображение.
Контрольная точка UPnP переходит к удалению одного или списка сопоставлений с помощью DeletePortMapping () или DeletePortMappingRange (). Когда одно из этих сообщений получено функцией взаимодействия IGD-PCP, она сначала проверяет, присутствует ли запрошенное сопоставление, которое нужно удалить, в локальной таблице сопоставления. Если сопоставление, соответствующее запросу, не найдено в локальной таблице, ошибка отправляется обратно в контрольную точку UPnP (см. Рисунок 10).
UPnP-PCP УПНП Контроль Взаимодействие Точка Функция PCP Сервер | | | | (1) DeletePortMapping | | | ---------------------> | | | | | | (2) Ошибка: | | | NoSuchEntryInArray | | | <--------------------- | | | | |
Рисунок 10. Локальное удаление (IGD-PCP IWF)
, если сопоставление в локальной таблице совпадает, генерируются запросы на удаление PINPPPPP с учетом входных аргументов:
- , как включено в DeletePortMapping (), если в маршрутизаторе CP не включен NAT; В случае использования DeletePortMappingRange () IWF IGD-PCP генерирует индивидуальные запросы для охвата всего диапазона;
- [[Примечание: Добавьте рисунок, чтобы проиллюстрировать поведение для обработки DeletePortMappingRange ()]]
- или соответствующий локальный IP-адрес и номер порта, назначенные локальным NAT, если NAT включен в маршрутизаторе CP.
После получения сервером PCP он переходит к удалению соответствующей записи. Ответ PCP PINxy об удалении отправляется обратно, если удаление соответствующей записи было успешным; если нет, ошибка PCP отправляется обратно в функцию межсетевого взаимодействия IGD-PCP, включая соответствующую причину ошибки (например, не авторизована).
Когда положительный ответ получен от сервера PCP, функция взаимодействия IGD-PCP обновляет свою локальную таблицу сопоставления (то есть удаляет соответствующую запись (записи)) и уведомляет контрольную точку UPnP о результате операции удаления.
[[Примечание: этот раздел требует дальнейшего обсуждения среди авторов]]
При нормальных условиях, поскольку действительная копия таблицы сопоставления хранится локально в маршрутизаторе CP, функция взаимодействия IGD-PCP НЕ ДОЛЖНА выдавать любой последующий запрос PCP для обработки запроса, полученного от контрольной точки UPnP, для вывода списка активных сопоставлений. Тем не менее, в случае потери синхронизации (например, перезагрузки, сбоев системы, сбоя питания и т. Д.), Функции взаимодействия IGD-PCP СЛЕДУЕТ генерировать метод get для извлечения всех активных сопоставлений на сервере PCP и обновления его локальной таблицы сопоставлений без ожидание явного запроса от контрольной точки UPnP.При этом функция взаимодействия IGD-PCP поддерживает обновленную таблицу сопоставления.
В случае массовой перезагрузки маршрутизаторов CP (например, явление лавинного перезапуска) следует избегать посылок запроса PCP. Для этой цели мы рекомендуем использовать данный таймер, обозначенный как PCP_SERVICE_WAIT. Этот таймер может быть предварительно настроен в маршрутизаторе CP или настроен с использованием специальных средств, таких как DHCP. После перезагрузки маршрутизатора CP сообщения PCP НЕ ДОЛЖНЫ отправляться немедленно. Случайное значение выбирается между 0 и PCP_SERVICE_WAIT.Это значение называется RAND (PCP_SERVICE_WAIT). По истечении RAND (PCP_SERVICE_WAIT) маршрутизатор CP ДОЛЖЕН приступить к своим операциям синхронизации (то есть извлечь все активные сопоставления, которые были заданы внутренними контрольными точками UPnP).
[[Примечание: квота на подписчика может быть исчерпана из-за неограниченного срока службы и устаревших сопоставлений в IGD из-за перезагрузок и т. Д.]]
Этот документ не запрашивает IANA.
Примечание для редактора RFC: этот раздел может быть удален при публикации как RFC.
В этом документе определяется процедура инструктирования сопоставлений PCP для сторонних устройств, принадлежащих одному и тому же абоненту. Идентификация означает, что злоумышленник не должен давать указания на сопоставления от имени третьей стороны. Такие средства уже обсуждались в разделе 7.4.4 [I-D.ietf-pcp-base].
Должны быть приняты во внимание соображения безопасности, разработанные в [I-D.ietf-pcp-base] и [Sec_DCP].
Авторы хотели бы поблагодарить F. Fontaine и C. Jacquenet за их обзор и комментарии.
[RFC2119] | Брэднер С., «Ключевые слова для использования в RFC для указания уровней требований», BCP 14, RFC 2119, март 1997 г. |
[I-D.ietf-pcp-base] | Wing, D, Cheshire, S, Boucadair, M, Penno, R and P Selkirk, "Port Control Protocol (PCP)", Интернет-проект draft-ietf-pcp-base-17, октябрь 2011 г. |
[I-D.ietf-softwire-dual-stack-lite] | Дюран, А., Дромс, Р., Вудьятт, Дж и Й Ли, «Развертывание широкополосных сетей с двумя стеками Lite после исчерпания IPv4», Интернет-проект draft-ietf-softwire-dual-stack-lite-11, май 2011 года. |
[I-D.ietf-ведут себя-v6v4-xlate-stateful] | Bagnulo, M, Matthews, P и I Beijnum, «Stateful NAT64: трансляция сетевых адресов и протоколов с клиентов IPv6 на серверы IPv4», Internet-Draft draft-ietf-поведенческий-v6v4-xlate-stateful-12, июль 2010 г. |
[I-D.bpw-pcp-dhcp] | Boucadair, M, Penno, R and D Wing, «Опции DHCP и DHCPv6 для протокола управления портами (PCP)», Internet-Draft draft-bpw-pcp-dhcp-04, апрель 2011 г. |
[Sec_DCP] | UPnP Forum, «Защита устройств: 1», ноябрь 2009 г. |
[IGD2] | UPnP Forum, "WANIPConnection: 2 Service" (http: // upnp.org / specs / gw / UPnP-gw-WANIPConnection-v2-Service.pdf) ", сентябрь 2010 года. |
UPnP
UPnP
щелчок здесь, чтобы перейти к таблице, которая описывает метки на этом экране.
Что
такое универсальный подключи и играй?
Универсальный Plug and Play (UPnP) является распределенным, открытым
сетевой стандарт, который использует TCP / IP для простой одноранговой сети
связь между устройствами. Устройство UPnP может динамически присоединяться к
сети, получить IP-адрес, передать свои возможности и узнать о
другие устройства в сети.В свою очередь, устройство может покинуть сеть
плавно и автоматически, когда он больше не используется.
Как
узнать, использую ли я UPnP? Аппаратное обеспечение UPnP
идентифицируется как значок в сети
Папка «Подключения» (Windows XP). Каждое установленное UPnP-совместимое устройство
в вашей сети появится отдельный значок. Выбор значка
устройства UPnP позволит вам получить доступ к информации и свойствам
этого устройства.
UPnP и ZyXEL
ZyXEL получил сертификат UPnP от Универсального форума Plug and Play Создает корпорацию разработчиков UPnP ™ (UIC). Внедрение ZyXEL в UPnP поддерживает IGD 1.0 (устройство интернет-шлюза). На момент написания Внедрение ZyXEL UPnP поддерживает Windows Messenger 4.6 и 4.7 Windows Messenger 5.0 и Xbox все еще тестируются.
Только ZyWALL отправляет групповые адреса UPnP в ЛВС.
Пожалуйста см. руководство пользователя для примеров установки UPnP в Windows XP и Windows Me, а также пример использования UPnP в Windows.
NAT Обход
UPnP NAT Traversal автоматизирует процесс предоставления приложению работать через NAT. Сетевые устройства UPnP могут автоматически настраиваться сетевая адресация, объявляют о своем присутствии в сети другим Устройства UPnP и позволяют обмениваться простыми описаниями продуктов и услуг.NAT обход позволяет:
Windows Messenger является Пример приложения, которое поддерживает NAT Traversal и UPnP.
Смотрите сетевой адрес Глава по переводу (NAT) в вашем Руководство пользователя для дальнейшего информация о NAT.
Аре
Есть ли какие-либо предостережения относительно UPnP?
Автоматизированный характер приложений NAT Traversal при создании
их собственные услуги и открытие портов брандмауэра может представить сеть
проблемы с безопасностью.Сетевая информация и конфигурация также могут быть
получены и изменены пользователями в некоторых сетевых средах.
Все UPnP с поддержкой устройства могут свободно общаться друг с другом без дополнительных конфигурации. Отключите UPnP, если это не ваше намерение.
,