NAT (Network Address Translation)

botond küldte be 2019. 01. 03., cs – 17:42 időpontban

A NAT (Network Address Translation), magyarul Hálózati címfordítás egy hálózati szolgáltatás, ami a külső hálózat számítógépei (pl. interneten lévő szerverek, webkiszolgálók, stb) és a belső hálózat (pl. otthoni vagy munkahelyi LAN hálózat gépei) közötti közvetlen kommunikációt biztosítja úgy, mintha azok ugyanazon a hálózaton lennének. Ezt úgy valósítja meg, hogy az adatcsomagok IP-fejléceiben módosítja a hálózati címek információit, amikor a csomagok áthaladnak a hálózati (NAT) eszközön. Egy ilyen eszköz lehet például egy router, tűzfal, stb. Ebből következik, hogy a belső (otthoni, vagy munkahelyi) hálózat gépeinek nem szükséges nyilvános IP-cím, mert a hálózati router vagy tűzfal átfordítja azokat a megfelelő címre, amikor kommunikálnak a külső hálózattal (internet).

A címfordítás segítségével tehát megvalósítható, hogy egyetlen nyilvános IP-címet használhasson egy egész magánhálózat. Ez a lehetőség nagy népszerűségre tett szert az internetszolgáltatók körében, mivel az interneten kiosztható IPv4 szabványú címek rohamosan fogyni kezdtek az internet terjedésével, és az internetre kapcsolható hálózati eszközök szaporodásával.

A NAT kifejezés szinonimájaként említik az IP-maszkolást, ami az a technika, ami elrejti a magán IP-címekből álló teljes IP-címteret a nyilvános címtartományban lévő egyetlen IP-cím mögött. A rejtett címet egyetlen (nyilvános) IP-címre változtatja, mint a kimenő IP-csomag "új" forráscíme, így kintről a csomagban nem a hálózatban lévő valódi küldő számítógép kerül feladóként, hanem a NAT eszköz maga. Így a külvilág számára úgy látszik, mintha a hálózati eszköz maga lenne a csomag küldője.

A NAT technológiának az IPv6 címek esetén nincs jelentősége, mivel az IPv6 létrehozásának fő célja, hogy az internetre kapcsolódó minden hálózati eszköz (beleértve a mai modern háztartási eszközöket is, pl. tévé, IP kamerák, riasztó, stb) egyedi, nyilvános címmel rendelkezzen, ezáltal lehetőséget biztosítva minden eszköz számára a pont és pont típusú kapcsolatok kialakításához. Azonban az IPv6-os címek világméretű elterjedése még nagyon sok idő (akár hosszú évekbe is telhet), ezért amíg megtörténik a teljes átállás, addig ez a módszer mentőövként szolgál a fogyásban lévő IPv4 címek fenntartásában.

 

 

Carrier-grade NAT (CGN)

A Carrier-grade NAT (CGN), más néven nagyszabású NAT egy olyan IPv4 hálózat tervezési megközelítés, amelyben főképpen a lakossági internetszolgáltatási végpontok magánhálózati címekkel vannak konfigurálva, amelynél a címfordítás már az internetszolgáltató hálózatában lévő eszközökön történik meg, lehetővé téve a nyilvános IP-címek kisebb tartományainak megosztását, újrahasznosíthatóságát több végpont között. Ez a NAT funkciót és konfigurációját az ügyfél helyiségeiből az internetszolgáltató hálózatába kapcsolja. Ezzel a technikával elérhető, hogy egy nyilvános IP-cím mögé akár több előfizetői magánhálózat is maszkolható. A folyamat lényegében ugyanaz, mint egy otthoni router esetén, csak itt nagyban, a szolgáltatói szinten történik a címfordítás. Az ilyen módon kiosztott IPv4 címek a 100.64.0.0/10 CIDR tartományban vannak (RFC 6598).

 

Hátrányok

A címfordításnak sajnos hátrányai is vannak, többek között, hogy a nyílt internetről elérhetetlenné válnak a NAT eszköz mögött lévő számítógépek, így például távolról elérhetetlenné válnak az otthoni gépek.

Az egyszerű NAT esetén, amikor csak a magánhálózatban lévő router végzi a címfordítást, még nem jelentene gondot, mert a routerben beállított port átirányítási funkció segítségével elérhetővé válnak a kézzel beállított szolgáltatások a megadott magánhálózati címen lévő számítógép megfelelő portján, azonban a Carrier-grade típusú címfordítás esetén már ez sem működik, mert ilyenkor a szolgáltatói oldalon (is) már megtörténik egy címfordítás, így a routerben beállított port átirányítások jelentőségüket veszítik, mivel a magánhálózat routerébe már nem a publikus IP-címről érkeznek a csomagok, hanem a szolgáltató által már átfordított 100.x.x.x címről. Ilyen esetben a különböző tunneling technikák segítségével van lehetőség elérni a Carrier-grade NAT mögött lévő számítógépeket, ilyen például az SSH tunneling is.

Ebből eredően egy Carrier-grade NAT mögött lévő számítógépről nincs lehetőség például nyilvános webes szolgáltatásokat üzemeltetni, mivel a különböző webes szolgáltatások portjait csak a fentebb említett tunneling technikák segítségével lehet elérhetővé tenni és továbbítani, ami viszont csak egy külső relay-szerver igénybevételével lehetséges.

Web üzemeltetői oldalról is van ennek hátránya, mégpedig hogyha egy weboldalról kitiltanak egy Carrier-grade NAT mögül érkező látogatói IP címet, akkor fennáll a kockázat, hogy több másik potenciális látogató is kitiltásra kerül oktalanul, akik ugyanazt az IP-címet használják.

A hazai nagyobb internetszolgáltatók nagy része már így osztja ki az ügyfeleknek a dinamikus IPv4-címeket, ezért itthon így is nevezik, hogy NAT-olás, vagy NAT-olt hálózat.

 

Belső IP-cím tartomány szabványok

A belső, azaz a NAT eszközök mögötti hálózatok számára kiosztandó címtartományokat az RFC 1918 szabvány rögzíti, amiket a különböző hálózati eszközök is ennek megfelelően ismernek fel. Így elkerülhető, hogy egy hálózatra kapcsolt eszköz a nyilvános hálózatra küldjön adatokat közvetlenül. Ezekben a tartományokban az internetszolgáltatók nem osztanak ki előfizetői publikus címeket. A tartományok az alábbiak:

  • 10.0.0.0 – 10.255.255.255: 24 bites címtartomány (16 777 216 darab IP-cím)
  • 172.16.0.0 – 172.31.255.255: 20 bites címtartomány (1 048 576 darab IP-cím)
  • 192.168.0.0 – 192.168.255.255: 16 bites címtartomány (65 536 darab IP-cím)

Ezek közül az utolsó tartomány a legelterjedtebb az otthoni hálózatok építésénél használt routerek beállításaiban.