Autor: sutrus
Datum: 27 lis 2021 23:25
Zobrazení: 178
Popis: Universal Plug and Play


Úvod
MikroTik RouterOS podporuje architekturu Universal Plug and Play pro transparentní síťové připojení osobních počítačů a inteligentních zařízení nebo přístrojů se síťovým připojením.
UPnP umožňuje datovou komunikaci mezi libovolnými dvěma zařízeními pod příkazem libovolného řídicího zařízení v síti. Technologie Universal Plug and Play je zcela nezávislá na konkrétním fyzickém médiu. Podporuje síť s automatickým zjišťováním bez jakékoli počáteční konfigurace, čímž se zařízení může dynamicky připojit k síti. Servery DHCP a DNS jsou volitelné a použijí se, pokud jsou v síti k dispozici. UPnP implementuje jednoduché, ale výkonné řešení pro překonávání sítě NAT, které umožňuje klientovi získat plnou obousměrnou podporu sítě peer-to-peer zpoza sítě NAT.

Pro UPnP existují dva typy rozhraní: interní (to, ke kterému jsou připojeni místní klienti) a externí (to, ke kterému je připojen internet). Směrovač může mít pouze jedno aktivní vnější rozhraní s "veřejnou" IP adresou a tolik vnitřních rozhraní, kolik je potřeba, všechna s "vnitřními" IP adresami se zdrojovým NATem. Protokol funguje tak, že vytváří dynamické položky NAT.

Protokol UPnP se používá pro mnoho moderních aplikací, jako je většina her DirectX, a také pro různé funkce Windows Messengeru, jako je vzdálená pomoc, sdílení aplikací, přenos souborů, hlasu a videa zpoza firewallu.


Konfigurace
Obecné vlastnosti

Kód: Vybrat vše

/ip upnp
VlastnostPopis
allow-disable-external-interface (yes / no ; Výchozí: yes)zda je uživatelům povoleno zakázat vnější rozhraní směrovače. Tato funkce (aby uživatelé mohli vypnout vnější rozhraní směrovače bez jakékoli ověřovací procedury) je vyžadována standardem, ale protože se někdy neočekává nebo je nežádoucí v nasazeních UPnP, pro které standard nebyl navržen (byl navržen především pro domácí uživatele, kteří si vytvářejí vlastní místní sítě), můžete toto chování zakázat.


enabled (yes / no ; Výchozí: no)Povolení služby UPnP


show-dummy-rule (yes / no ; Default: yes)Povolení řešení pro některé nefunkční implementace, které nesprávně řeší absenci pravidel UPnP (například zobrazují chybové zprávy). Tato volba dá serveru pokyn, aby nainstaloval fiktivní (nesmyslné) pravidlo UPnP, které mohou klienti, kteří jinak odmítají pracovat správně, dodržovat.


 ! Varování:
Pokud nezakážete příkaz allow-disable-external-interface, bude moci kterýkoli uživatel z místní sítě (bez jakýchkoli ověřovacích postupů) zakázat vnější rozhraní směrovače.


Rozhraní UPnP

Kód: Vybrat vše

/ip upnp interfaces
VlastnostPopis
interface (string; Default: )Název rozhraní, na kterém bude spuštěn uPnP


type (external / internal; Default: )Typ rozhraní UPnP:
  • externí - rozhraní, kterému je přiřazena globální IP adresa
  • interní - místní rozhraní směrovače, ke kterému jsou klienti připojeni


forced-external-ip (Ip; Default: )Umožňuje určit, jaká veřejná IP adresa se má použít, pokud má vnější rozhraní k dispozici více než jednu IP adresu.


 ! Varování:
Ve složitějších konfiguracích s VLAN, kde je rozhraní VLAN považováno za rozhraní LAN, by mělo být samotné rozhraní VLAN zadáno jako interní rozhraní, aby UPnP fungovalo správně.


Příklad konfigurace
UPnP.png

Kód: Vybrat vše

[admin@MikroTik] ip upnp> /ip firewall src-nat print
Flags: X - disabled, I - invalid, D - dynamic
  0   chain=srcnat action=masquerade out-interface=ether1
[admin@MikroTik] ip upnp>

Povolení funkce UPnP:

Kód: Vybrat vše

[admin@MikroTik] ip upnp> set enable=yes
[admin@MikroTik] ip upnp> print
                             enabled: yes
    allow-disable-external-interface: yes
                     show-dummy-rule: yes
[admin@MikroTik] ip upnp>

Nyní stačí přidat rozhraní:

Kód: Vybrat vše

[admin@MikroTik] ip upnp interfaces> add interface=ether1 type=external
[admin@MikroTik] ip upnp interfaces> add interface=ether2 type=internal
[admin@MikroTik] ip upnp interfaces> print
Flags: X - disabled
  #   INTERFACE TYPE
  0 X ether1    external
  1 X ether2    internal
 
[admin@MikroTik] ip upnp interfaces> enable 0,1

Jakmile klient ze strany vnitřního rozhraní odešle požadavek UPnP, budou na routeru vytvořena dynamická pravidla NAT a příklad pravidel může vypadat takto:

Kód: Vybrat vše

[admin@MikroTik] > ip firewall nat print
Flags: X - disabled, I - invalid, D - dynamic
 
0 chain=srcnat action=masquerade out-interface=ether1
 
1 D ;;; upnp 192.168.88.10: ApplicationX
chain=dstnat action=dst-nat to-addresses=192.168.88.10 to-ports=55000 protocol=tcp
dst-address=10.0.0.1 in-interface=ether1 dst-port=55000
 
2 D ;;; upnp 192.168.88.10: ApplicationX
chain=dstnat action=dst-nat to-addresses=192.168.88.10 to-ports=55000 protocol=udp
dst-address=10.0.0.1 in-interface=ether1 dst-port=55000