Brána na aplikační úrovni
Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od
verze recenzované 16. dubna 2018; ověření vyžaduje
1 úpravu .
Application-level gateway nebo ALG (z angličtiny - "application level gateway") - součást NAT routeru , která rozumí jakémukoliv aplikačnímu protokolu , a když jím projdou pakety tohoto protokolu, upraví je tak, aby uživatelé za NAT může používat protokol.
Popis
Směrovač NAT přenáší pakety přicházející z místní sítě a odesílá je do vnější sítě pomocí své vnější adresy IP jako zdrojové adresy. Port lze také změnit . Ale některé síťové protokoly v obsahu svých paketů přenášejí a snaží se použít místní IP adresu nebo zdrojový port. Po projití NATu a nahrazení lokální IP externí se tyto parametry samozřejmě stanou nesprávnými – což znamená, že vzdálená strana nemůže navázat spojení.
ALG poté, co identifikuje paket jako součást tohoto protokolu, nahradí jeho adresu a port jako IP adresu a port. Pokud podle protokolu vzdálený počítač naváže spojení na tomto portu, přenos se automaticky zapne.
ALG je jako proxy ; obvykle termín "proxy" odkazuje na server, který provádí další operace, jako je ukládání do mezipaměti , zatímco úkolem ALG je zajistit, aby klienti mohli používat protokol.
Protokoly vyžadující ALG
- FTP bez pasivního režimu ( PASV). Předá IP adresu a číslo portu na klientovi v příkazu PORT.
- PPTP . Protokol je založen na GRE (v podstatě PPTP je PPP přes GRE s dodatečným řídicím TCP spojením, které se nepoužívá pro data), což znamená nezpracovanou IP. Protože nezpracovaná IP nemá žádnou koncepci čísla portu, dochází k problémům s mapováním NAT tohoto protokolu do vnějšího světa. Bez PPTP ALG v NAT (jako natd ve starších verzích FreeBSD ) je možné pouze jedno připojení PPTP k vnějšímu světu z celé vnitřní sítě, pokus kohokoli v interní síti vytvořit další odchozí připojení PPTP má za následek chyba (chyba 619 ve Windows).
- H.323
- Protokoly přenosu souborů v některých messengerech (jako je MSN Messenger )
- Vytvoření serveru v některých hrách
- Některé sítě pro sdílení souborů
Implementace OS
Okna
Vestavěný NAT v OS Windows (ipnat.sys, v uživatelském rozhraní nazvaný Sdílení připojení k Internetu) používá moduly ALG v uživatelském režimu, které se načítají do adresního prostoru procesu ALG.EXE (neboli služba nazývaná alg). Platform SDK obsahuje hlavičkové soubory pro vývoj modulů ALG pro dříve nepodporované protokoly. Dokumentace pro tato rozhraní však nebyla zveřejněna.
linux
Firewall netfilter vestavěný do jádra podporuje protokoly jako
AMANDA ,
FTP ,
TFTP ,
IRC ,
PPTP ,
H.323 ,
SIP ,
SNMP ,
DCCP ,
GRE a další, stávající i budoucí. Vzhledem k volnému stavu samotného Linuxu je veškerá dokumentace rozhraní volně a volně dostupná všem.
Implementace v routerech
Téměř všechny routery s NAT umí pracovat s PPTP, IPsec, RTSP, SIP, H.323, SMTP, DNS, TFTP.
Odkazy