Технология UPnP представляет собой набор протоколов для автоматической настройки сетевых устройств, прежде всего бытового назначения. Действительно, вашим домашним совсем не обязательно становиться администраторами, чтобы подключить к сети очередной гаджет или настроить сетевую программу. Поэтому важно обеспечить поддержку UPnP на ключевых узлах сети, в первую очередь на роутере.
Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.
В частности UPnP позволяет автоматически открывать необходимые для сетевых приложений порты на роутере, что в домашних условиях актуально для торрент-клиентов и некоторых сетевых игр, делая работу с сетью абсолютно прозрачной для конечных пользователей.
В данной статье мы добавим поддержку UPnP для домашнего медиа-сервера, настроку которого мы рассматривали здесь.
Для чего это нужно? Простой пример: запустим Помощник настройки популярного торрент-клиента uTorrent и выполним тест сети:
Результаты теста сообщают нам, что порт для внешних подключений не открыт, а следовательно вы не сможете раздавать уже загруженные торренты. Конечно можно открыть нужный порт вручную, но зачем, если можно настроить поддержку UPnP.
Перед написанием данного материала мы изучили, что пишут в русскоязычном сегменте сети по этому поводу и пришли к неутешительному выводу: с сайта на сайт кочует один и тот-же материал и тот неправильный. К сожалению авторы большинства ресурсов не утруждают себя пониманием публикуемых инструкций, не говоря о их проверке на практике.
Но не стоит расстраиваться, все гораздо проще, чем кажется. Для поддержки UPnP в Linux, в нашем случае это Ubuntu Server 12.04 LTS, предназнечен пакет linux-igd который мы и установим:
sudo apt-get install linux-igd
После установки откроем конфигурационный файл /etc/default/linux-igd и укажем внешний и внутренний интерфейсы, в нашем случае:
EXTIFACE=eth0
INTIFACE=eth1
Теперь запустим службу:
sudo service linux-igd start
При первом запуске вы можете получить ошибку, связанную с log-файлом, в этом случае выполните данную команду еще раз.
Собственно на этом настройка UPnP закончена. Чтобы убедиться, что все работает как надо, запустим тест сети в торрент-клиенте повторно:
Отлично, теперь пользователи могут как качать, так и раздавать торренты, причем настройка необходимых правил на роутере произошла без всякого вмешательства со стороны администратора.
Можем проверить таблицу iptables, чтобы посмотреть какие правила были добавлены:
iptables -L
Как видим добавились две цепочки разрешающие транзитные пакеты для нашего домашнего ПК (192.168.30.192) от любого источника по протоколам tcp и udp приходящие на порт 32575, что соответствует настройкам торрент-клиента.
Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.
Последние комментарии