Upnp или nat pmp не найдены. Преимущества использования UPnP

30.03.2019 Ios

Эта служба позволяет в автоматическом режиме вести поиск периферийных устройств работающих с локальной сетью, а так же обеспечивает их подключение и настройку. Еще обеспечивает беспроводную настройку сети.

Немного теории

Подключая один или несколько ПК к сети Интернет через DSL, преимущественно используют технологию NAT (преобразование сетевого адреса). NAT позволяет нескольким ПК частной сети пользоваться общим IP-адресом, который обеспечивает выход в сеть. NAT дополнительно защищает частную сеть, хотя это не сетевой экран (firewall).

Пользователь доступа DSL должен понимать, что NAT присутствует только в модеме с возможностью роутера, то есть к модему одновременно можно подключить два и более ПК. В подобном случае все настройки для соединения с интернетом (пароль, логин) прописываются в самом модеме. В случае использования модема без функции роутера функция NAT отсутствует.

Для того чтобы входящее соединение могло беспрепятственно проходить к внутрисетевым службам нужно соответствующее сопоставление портов. Если сопоставление не соответствует или не выполнено, то связь с программой (службой) из сети Интернет станет недоступна. Зачастую в подобном случае прибегают к ручной настройке по сопоставлению портов.

Сопоставлять порты вручную довольно трудоемкое занятие. Это достаточно сложно, требуется определенный опыт и знания. Большинство пользователей не в состоянии справиться с подобной задачей без посторонней помощи специалиста. Они и не предполагают, что становятся «жертвами» NAT. При любой попытке воспользоваться приложением, которое принимает внешний вызов, пользователю не удается осуществить поставленную задачу.

Для решения подобной проблемы был разработан технологический процесс NAT Traversal. Он позволяет сетевому приложению определять, что оно находиться за устройством NAT, идентифицирует внешний адрес IP, настраивает сопоставление портов. Все это выполняется в автоматическом режиме. Функциональный процесс NAT Traversal опирается на протоколы управления и обнаружения, которые являются неотъемлемой частью Universal Plug and Play. Upnp избавляет пользователя от ручной настройки таблиц сопоставления NAT, не нужно дополнительно устанавливать настройки в роутере. Нужно только активировать возможности UPnP.

Большое количество роутеров и кабельных модемов, которые выпускаются на сегодняшний день, обладают встроенной поддержкой UPnP. Выбирая подобное устройство нужно обращать внимание на наличие функции UPnP. Эта поддержка может в дальнейшем сильно уменьшить вашу головную боль при возникновении проблемы связанной с ручной настройкой роутера.

Правильная работа UPnP приложения должна осуществляться как приложением, так и модемом или роутером. Не все приложения имеют поддержку этого технологического процесса. В некоторых модемах UPnP отключен, его нужно включать вручную.

Если у вас есть такие приложения, то вам обязательно нужно активировать поддержку, как в самой системе, так и в модеме.

Включить поддержку UPnP в Windows, можно выполнив такие действия:

  1. Нажать меню Пуск, выбрать панель Управления.
  2. В панели управления нажать на ярлык Установка удаление программ и Установка компонентов Windows.
  3. В пункте Компоненты выбрать Сетевые службы. Поставить галочку напротив и нажать Состав.
  4. В диалоговом окне сетевых служб следует поставить галочку напротив Клиент обнаружения и управления устройствами шлюза Интернет. Так же нужно отметить и Пользовательский интерфейс UPnP.
  5. Нажимаем Ок и Далее.

Возможно, потребуется установочный диск Windows. Подобный процесс установки пригоден для большинства систем Windows XP. Настойки в роутере выполняются согласно его технической документации.

Наверное, многие пользователи компьютеров, ноутбуков и мобильных гаджетов хоть раз хотели бы посмотреть любимые фильмы, фотографии, телепередачи, скажем, на большом экране телевизионной панели или, наоборот, синхронизировать интернет-трансляцию того же ТВ, радио с мобильным устройством, а также послушать музыку на хорошей акустической системе. Для этого нам понадобится так называемый медиа-сервер UPnP. Что это такое и как его настроить, мы сейчас и рассмотрим. Нет ничего сложного.

UPnP - что это?

Вообще, UPnP представляет собой аббревиатуру термина Universal Plug & Play. Иными словами, это некая виртуальная система, объединяющая подключения интеллектуальных устройств, находящихся в одной сети, между собой на основе протоколов TCP/IP, UDP, HTTP и т.д.

Разбираясь в теме «UPnP: что это такое?», простым языком можно описать это как создание возможности передачи и приема данных всеми устройствами, поддерживающими этот стандарт. В качестве простейшего примера можно привести, допустим, просмотр фото на том же телевизоре вместо смартфона. Как уже понятно, достаточно просто синхронизировать устройства между собой, чтобы произвести обоюдный доступ к данным.

Предварительные настройки Windows

Прежде чем приступать к рассмотрению вопроса о том, как настроить и включить UPnP, следует выполнить некоторые предварительные настройки в самой «операционке».

В ОС Windows, в зависимости от версии, это осуществляется несколько разнящимися способами, но общий принцип один и тот же.

Итак, нужно активировать сервер UPnP (Windows 7). Как включить его? Нет ничего проще. Нужно просто зайти в раздел программ и компонентов (в прошлых версиях Windows меню установки и удаления программ), находящийся в стандартной Панели управления, после чего выбрать параметры установки компонентов Windows. Здесь выбирается пункт сетевых служб, на котором ставится галочка, а справа используется пункт их состава. При входе в это меню обязательно нужно задействовать включение клиента обнаружения и управления, а также отметить UPnP. Далее просто сохраняются изменения, которые вступают в силу без перезагрузки. Это в равной степени относится и к системам XP, Vista, 8 или 10.

Тут стоит обратить внимание, что в некоторых случаях может понадобиться установочный диск Windows.

Как включить UPnP на роутере

Но и это еще не все. Если между устройствами предполагается осуществлять при помощи беспроводного соединения с использованием придется проверить настройки UPnP и на нем.

Хотя, как правило, практически все самые распространенные модели роутеров поставляются с уже включенной службой UPnP, тем не менее лучше все-таки проверить настройки. Для большинства моделей вход в меню роутера осуществляется при помощи введения в любом интернет-браузере адреса 192.168.1.1. В зависимости от модели меню могут разниться названиями или расположением отдельных элементов управления. Но в любом случае нужно найти параметр «Включить UPnP» или сделать доступным (в английском варианте - меню Enable UPnP Protocol или Enable UPnP Settings).

Включение UPnP в Skype

Теперь рассмотрим пример популярной программы для общения с использованием IP-телефонии Skype. Здесь тоже используется технология UPnP. Что это такое применительно к самому приложению? Это та же система для установления связи с другим устройством. Намного ведь приятнее общаться с друзьями, видя их изображение, скажем, на большом экране телевизионной панели.

Включение UPnP производится очень просто. Здесь нужно зайти в основные настройки программы и выбрать дополнительные параметры, после чего использовать меню «Соединение». В нем имеется специальное поле включения UPnP, напротив которого и нужно поставить галочку, а затем сохранить изменения.

Простейшая утилита для создания домашнего медиасервера

Собственно, вот мы и подошли к основному вопросу настройки и включения UPnP-сервера. Для начала, как уже понятно, нужно определиться с программой (UPnP-клиентом). В качестве самой простой, не требующей ручной настройки утилиты можно посоветовать Samsung PC Share Manager.

В этой программе практически все настройки автоматизированы, определение устройств и способа подключения не требует участия пользователя, но единственное, что потребуется, это указание папок общего доступа с хранящимися в них файлами мультимедиа. По умолчанию приложение выбирает свои параметры, но предпочитаемые программой директории можно удалить или задать вместо них собственные.

Тут важно проверить, открыт ли к ним тот самый общий доступ. Делается это из меню свойств, которое вызывается правым кликом на директории. Ну а после запуска сервер UPnP включится автоматически, и произойдет синхронизация всех устройств, на данный момент присутствующих в домашней сети. Иногда может потребоваться внести программу в список исключений файрволла.

Единственным недостатком приложения, пожалуй, можно назвать только невозможность просмотра онлайн телевидения или прослушивания радио. Воспроизвести можно исключительно контент, хранящийся в папках общего доступа.

Использование программы "Домашний медиасервер"

Другое дело - использование более серьезного приложения Home Media Server (российская разработка). Тут, правда, в настройках придется покопаться.

Хотя автоматическое определение и включено, в некоторых случаях придется добавить устройства вручную. Так, например, программа четко определяет искомый компьютерный терминал, на котором установлена, а также маршрутизатор, отвечающий за соединение. Если нужно передать сигнал, скажем, на телевизионную приставку IPTV с последующей трансляцией на телевизионную панель, IP- или MAC-адрес устройства придется вводить самому.

Далее - вопрос транскодирования. В большинстве случаев выбирается режим «Фильмы (основной)», но если в системе установлена специальная утилита Ace Stream (один из компонентов Ace Player), лучше задействовать именно ее.

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

Попутно стоит отметить, что и на телевизионной приставке придется вручную включить использование сервера UPnP. Чаще всего для его задействования используется режим LAN. Может быть и другой, все зависит только от модификации самой приставки.

А вообще, настроек в программе очень много. С основными можно разобраться без проблем. Но если требуется использование каких-либо дополнительных параметров, придется потратить определенное время. Зато потом пользователь получает в свое распоряжение мощнейший инструмент синхронизации устройств любого типа. Попутно отметим, что для мобильных устройств может потребоваться установка специальных приложений и активация UPnP. Без этого ни о какой синхронизации и речи быть не может.

Да, и обратите внимание вот еще на что. В отличие от предыдущей утилиты, включение сервера производится только в ручном режиме при помощи специальной кнопки запуска или, если требуется, перезапуска.

Вместо послесловия

Вот мы вкратце и рассмотрели тему «UPnP: что это такое?». Здесь указаны наиболее распространенные ситуации и правила настройки и работы с домашним медиасервером. Естественно, можно использовать и любые другие утилиты, однако изначальные принципы настройки и включения практически у всех UPnP-клиентов одинаковы. Если изучить хотя бы пару простейших программ, разобраться с остальными труда не составит.

Прежде чем узнать, как включить upnp, давайте поговорим немного о теории.

Итак, что же такое Upnp. Это набор сетевых протоколов, представленный одноименной организацией. Основная цель — максимально автоматизировать процесс настройки сетевых узлов и устройств в самых разных сетях, от дома до крупного офиса.

Набор протоколов в основе своей работы использует популярные технологии и сетевые архитектуры: TCP/IP, HTTP и т.д.

Включение upnp в Windows 7

Алгоритм предельно прост. Первым делом вам необходимо перейти в панель управления: Пуск -> Панель управления .

Нам необходимо добраться до раздела, в котором собраны все настройки и параметры сетевой среды. Если у вас выбрано отображение по категориям, щелкайте кнопку «Сеть и интернет «. Если же перед вами отображены все значки, то сразу запускаем «Центр управления сетями и общим доступом «. Перед вами появиться главное окно сетевых настроек. В его левой части будет меню настроек. В нем находим и щелкаем «Изменить дополнительные параметры общего доступа «.

Перед нами появиться список доступных опций. Нас интересует область «Сетевое обнаружение»:

Выбираем пункт «Включить сетевое обнаружение » (это и есть Upnp). Нажимаем кнопку «Сохранить изменения «, затем «Ок «. Вам осталось только перезагрузить компьютер. При следующем запуске функции Upnp включаться автоматически.

Ранее я много раз слышал, что 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. Останавливаем перехват пакетов, смотрим результаты.

У меня получилось следующее:

Первые 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. Для добавления трансляции используется функция с названием AddPortMapping .

Также можно отметить, что, в противоположность NAT-PMP, Inside Local-адрес указывается внутри самого протокола.

Аналогично NAT-PMP, при закрытии торрент-клиента маппинги проброшенных портов удаляются. Делается это функцией DeletePortMapping :

Можно заметить, что для удаления правила достаточно указать только тип протокола (UDP) и номер внешнего порта, не указывая остальные параметры.

Заключение

В данной статье мы рассмотрели два достаточно простых способа по созданию на домашнем роутере правил Port Forwarding по команде от хоста из локальной сети. Остается лишь отметить, что если вы считаете работу данных протоколов угрозой безопасности вашей домашней сети, то их можно попытаться выключить (хотя, конечно, гораздо лучше доверить вопросы безопасности утилите, которая для этого предназначена - файрволу). В случае моего Zyxel Giga II, на котором, к слову, и проводились все тесты, это делается CLI-командой no service upnp (примечательно, что в веб-интерфейсе опция включения/отключения UPnP отсутствует).