Linux UPnP

Запись создана июня 8, 2011

Для того чтобы клиенты могли прозрачно открывать порты на шлюзе, был разработан набор протоколв Universal Plug and Play (UPnP), например для того чтобы можно было раздавать торренты.

На днях я снял дома старый добрый Linksys WRT54G, теперь раздачей интернета занимается linux-овая машинка. Для раздачи торррентов например, нужно разрешить соединения внутрь сети. Для этого можно пробросить разные порты на разные машины, и в случае добавления клиентов/машин это придется делать вручную. Это не самый удобный спопосб, но можно использовать UPnP который будет сам пробрасывать нужные порты через iptables.

Установка:

sudo apt-get install linux-igd -y

Настраиваем:

cat /etc/default/linux-igd
# External interface name.  If undefined then upnpd will not be started.
EXTIFACE=ppp0
 
# Internal interface name.  If undefined then upnpd will not be started.
INTIFACE=eth0

Добавляем правила в iptables:

iptables -N UPNP
iptables -N UPNP iptables -A FORWARD -j UPNP
 
iptables-save > /etc/iptables.up.rules

Запускаем upnpd

/etc/init.d/linux-igd start

Перезапускаем, например, торрент клиент с включенным UPnP и видим появившиеся правила в iptables:

-A FORWARD -d 192.168.1.106/32 -p tcp -m tcp --dport 51413 -j ACCEPT 
-A PREROUTING -i ppp0 -p tcp -m tcp --dport 51413 -j DNAT --to-destination 192.168.1.106:51413

На этом всё.

» Запись из раздела Debian | 2 комментария

Комментарии



2 комментария to “Linux UPnP”

  1. Warstar on июня 17, 2011 13:01

    Почему не воспользовался Микротиком? Зачем держать отдельную машину?

  2. Артур Шакиров on ноября 17, 2011 9:55

    ну по тому что отдельная машина у меня еще и сторадж и IP-PBX и dlna сервер и многое другое, а вместо микротика стояла циска одно время.




Ответить