Ühenduse tüüp nat. Kuidas NAT töötab

/05.07.2004 20:43/

Viimastel aastatel on Venemaa võrguadministraatorite seas mood FireWall ja NAT. Eservi kasutajad on teadnud minu suhtumist nendesse tehnoloogiatesse juba 90ndate keskpaigast, kuid mõnikord esitavad sellised küsimused FireWalli / NAT-i kohta algajad ja ma pean ennast kordama. Seetõttu kirjutasin umbes aasta tagasi eraldi artikli FireWalist ja täna on NAT-i kord.

Epigraaf

Lisatud 28.12.2005. Google tegi NAT-i probleemist hea kokkuvõtte: "NAT-seadmed, mis muutuvad kodudes ja kontorites üha populaarsemaks, võimaldavad mitmel masinal jagada ühte Interneti-aadressi. Järelikult muutub see rakenduste (nt häälvestlus) jaoks üha keerulisemaks, mis nõuavad kaaslastelt Pöörduge otse üksteise poole, et luua võrdne ühendus usaldusväärselt." (NAT-seadmed, mille populaarsus kodudes ja kontorites kasvab, võimaldavad mitut masinat jagada üks Interneti-aadress. Selle tulemusena on sellised rakendused nagu häälvestlus mis nõuavad poolte otsest pöördumist, üha raskem on luua usaldusväärseid ühendusi punkt-punkt.)

Dokumendi sisukord

NAT ajalugu

Esmalt paar sõna puhverserveri / väravastamise / tunnelimise vajaduse tekkimise ajaloost Internetis, siis saavad selgemaks erinevate lähenemiste võimalused ja nende "hierarhia". Teatavasti ennustati IP-aadresside nappust 4-baidises aadressiruumis juba 90ndate alguses (pluss rahapuudus mõnes ettevõttes aadressiplokkide rentimiseks. Seetõttu lepiti juba 1994. aasta märtsis aadressis kokku " segmenteerimine" kogu ruumist – kohalike võrkude jaoks eraldatakse eraldi IP-aadresside vahemikud ja välistatakse need IP-aadressid Internetis kasutamisest (http://www.ietf.org/rfc/rfc1597.txt märts 1994 Aadressi eraldamine privaatsete Interneti jaoks; tsitaat selle dokumendi eesmärgi kohta "Autorid loodavad, et nende meetodite kasutamine aitab oluliselt kokku hoida aadresside eraldamisel"). See lahendus võimaldas ettevõtetel eraldada oma Interneti-serveritele väikeseid IP-aadresside plokke ning LAN-is eraldasid ettevõtted ise oma vajaduste jaoks mõeldud IP-aadressid kohalike võrkude vahemikest. Tänu sellele olid ettevõtete internetiserverid (mail ja www/ftp) hõlpsasti ligipääsetavad nii internetist kui ka kohtvõrgust ning LAN-i piires suhtlesid arvutid probleemideta samade IP-protokollide abil. Kuid see otsus pani tõkke kohalike võrkude ja Interneti vahele: sama IP-aadressi saab kasutada erinevates kohtvõrkudes ja seetõttu sel põhjusel lõpetas Internet pakettide suunamise kohtvõrkude jaoks eraldatud aadressiplokkidele. Need. tegelikult "füüsiline barjäär" (ilma juhtmete lõikamiseta, mis oli lõbus Venemaa pangad pärast esimesi häkkimisi ja ilma FireWalli installimata, millest nad on nüüd sõltuvuses). Võrgud on isoleeritud, nagu tänapäevastes operatsioonisüsteemides on ülesanded isoleeritud – igaühel on oma aadressiruum. See barjäär ei olnud posti jaoks probleem, sest ettevõtte meiliserverid paigutati võrkude servale ja olid nähtavad nii Internetist kui ka kohtvõrgust. Kuid juurdepääsuga kohtvõrgust välistele ressurssidele – ftp- ja http-serveritele, mis neil aastatel veel populaarsust kogusid, algasid probleemid. Kui varem oli võimalik suvalisest arvutist otse serveriga suhelda, siis nüüd ainult arvutitega tõelised Interneti-aadressid, sest millisele kohtvõrgule saata vastus IP-paketile, mille tagastusaadressis on kohalik aadress – ruuter ei saa seda kindlaks teha.

Selle probleemi lihtsaim lahendus - tagastusaadressi asendamine võrkude serval - oli pinnal ja selle avaldamine ei olnud aeglane: 1994. aasta mais, s.o. kaks kuud pärast "võrkude sektsiooni" pakuti välja NAT-i spetsifikatsioon: http://www.ietf.org/rfc/rfc1631.txt Võrguaadressi tõlkija (NAT) mai 1994 Autorid kuulutasid seda "lühiajalise lahendusena", s.o. ajutine lahendus määratletud probleemist omamoodi "häkkimine", kuni tavalised lahendused levivad. Kuid nagu teate, pole miski nii püsiv kui ajutine IPv6, vastupidiselt ootustele, ei juurdunud kiiresti ning viimase 10 aasta jooksul oleme olnud tunnistajaks üha rohkematele lahingutele kohtvõrgu ja Interneti piiridel. NAT on laialt levinud, sest. Sellele probleemile polnud neil aastatel muud vastuvõetavat lahendust: FTP-kliendid ja HTTP-kliendid (brauserid) ei jõudnud muutunud maailmapildiga kohaneda, ei saanud töötada LAN-ist väliste ressurssidega, nii et nende jaoks läbipaistev piir, nad lihtsalt "petsid" programmiliselt NAT-i abil - kõik LAN-ist väljapoole suunatud IP-paketid allutati piiril kõige lihtsamale töötlemisele: vastupidise IP-aadressi asendamine "piiri" arvuti tegeliku aadressiga. ja tagurpidi asendades selle sissetulevates pakettides. Lisaks asendati tavaliselt ka LAN-allika pordi number. paketid võivad pärineda erinevatest LAN-i masinatest samade pordinumbritega. Need. tõlgitakse mitte ainult IP-aadresse, vaid ka pordinumbreid (mõnikord nimetatakse porditõlkeid eraldi lühendiks PAT). Tingimuslikus klassifikatsioonis jaguneb NAT "staatiliseks, dünaamiliseks ja maskeeritavaks (maskerdamiseks)", kuid praktikas kasutatakse peamiselt kolmandat tüüpi, mis võimaldab teenindada LAN-ist tuhandeid ühendusi ühe reaalse aadressi kaudu (ideaaljuhul), samas kui alati kasutatakse pordi tõlget. NAT-arvutis või ruuteris + NAT-i jaoks eraldatakse tõlkimiseks kasutatavate portide vahemik, näiteks numbritega, mis on suuremad kui 60 000 (et kiiresti eristada neid porte selle arvuti enda vajadusteks eraldatud portidest) ja praeguste seansside dünaamiline tabel / aadresside kaardid. Port ja port kontrollivad iga läbivat paketti selle tabeli suhtes ning tehakse vastavad asendused. Tehnoloogia on nii lihtne, et nüüd on üha harvem leida ruuterit või kaabelmodemit, millel pole sisseehitatud NAT-i (ja tulemüüri, mis on sama primitiivne kui NAT), ning NAT-i võib juba leida isegi jaoturitest, mille hind algab 40 dollarist. mainida "tasuta" NAT-i, mis sisaldub mitmes Windowsi värskes versioonis nime all " ühenduse jagamine" ja " ühenduse jagamine". NAT-i teenitult populaarseks muutis just kättesaadavus, mõistmise/kasutamise lihtsus ja klienditarkvara vähenõudlikkus.

NAT Interneti-programmide "silmade kaudu".

Kui praktikas oleks kõik nii lihtne, siis poleks see huvitav.Kuid loomulikult, nagu iga teise tarkvaralise nipi puhul, hakkasid NAT-is kohe välja hiilima erinevad ebameeldivad kõrvalmõjud. NAT-i ilmumise ajal oli üks populaarsemaid protokolle FTP ja just sellest protokollist sai esimene NAT-i mitteseeditav protokoll. See paljastas probleemi, mida polnud NAT-is viimase 10 aasta jooksul kunagi edukalt lahendatud. Ja üldjuhul seda NAT-i sees lahendada ei saa, saab teha ainult konkreetsete protokollide kohandusi, aga usaldusväärseks lahenduseks neid kohandusi pidada ei saa. Probleem on selles, et mõnes protokollis, mille hulgas on FTP vanim, edastatakse klientmasina IP-aadress ja server kasutab seda IP-aadressi andmete edastamiseks kliendile. Kuna NAT-i puhul on LAN-ist töötav klientprogramm NAT-i poolt "lolli" tehtud, siis saab ta serverile saata vaid oma kohaliku IP-aadressi, millega välisserver ei saa ühendust luua, kuna see on nähtamatuse tõttu võimalik. Kohalikud võrgud Internetist. Teisteks näideteks on protokollid ICQ, MS NetMeeting, RealAudio ja paljud teised protokollid, mille arendajad ilmselt istusid võrkudes ilma
NAT NAT suudab sellele probleemile pakkuda vaid ühte lahendust – pordinumbrite põhjal arvake ära konkreetne tõlgitav protokoll ja asuge jälgima IP-pakettide sisu. Kui nad kohtavad käsku PORT FTP, mis määrab : kohaliku kliendi port ( teksti käsk paketi põhiosas, mitte IP-paketi päises), siis asendage mitte ainult päised, vaid kogu pakett kontrollsumma ümberarvutamise ja teise sissetuleva pordi kuulamise korraldamisega. Kahjuks on NAT-i jaoks TCP-protokoll, milles FTP-protokolli käske edastatakse, voogedastusprotokoll, mis on organiseeritud - IP-kihile jõudes saab käsu PORT jagada kaheks paketiks (või isegi enamaks, olenevalt FTP-kliendist ja puhverdamine OS-is). Seetõttu peate NAT-i võltsimise usaldusväärseks tuvastamiseks rekonstrueerima algse TCP-voo, puhverdama ja paketid uuesti kokku panema. Naaseme NAT-i "protokollide rekonstrueerimise" juurde, kuid praegu märgime ainult võimalike vigade mitmetasandilist taset. ja selle protsessi ebausaldusväärsus. Praktikas toob see kaasa asjaolu, et standardne FTP-režiim, mis kasutab käsku PORT over NAT, tavaliselt EI tööta.

Seetõttu tuleb FTP-protokolli "NAT-probleem" FTP-klientide või mõne muu vahepealse spetsialiseeritud FTP-puhverserveri puhul erilisel viisil ümber töötada. FTP kliendis tuleb selleks lülituda nn. "passiivne režiim" - käsu PORT asemel kasutage käsku PASV. PASV palub FTP-serveril avada enda jaoks täiendav port ja öelda kliendile selle :port. Seejärel loob klient ühenduse määratud kasutajaga (NAT petab selle uuesti, edastab selle) ja seanss õnnestub. Lisaks vajadusele toetada PASV-režiimi FTP-kliendis (seda pole standardses ftp.exe-s), nõuab see ka FTP-serveri administraatori pingutusi - eriti kui ta on osaliselt blokeeritud ka tulemüüride ja NAT-ide poolt. (nagu Eservi FTP arendaja-serverid teavad neid probleeme omast käest). Üldiselt siin NAT ühendust ei aita, vaid segab.

Nüüd NAT-i sees oleva protokolli rekonstrueerimisest, et klient oleks probleemist mööda hiiliv "läbipaistev". Need vähesed NAT-id, mis seda suudavad (kuigi praktikas nad ka deklareerivad, mitte ei suuda, tõusevad tegelikult ühe võrgukihi kõrgemale – lihtsaima paketi edastamise asemel koos aadressi tõlkega päises hakkavad nad tegema sama, mida TCP-pinn teeb - TCP-pakettide kokkupanemine, muutes need ülearenenud ruuterist vähearenenud TCP-rakenduse puhverserveriks. sel juhul FTP-puhverserverile või FTP-väravale. Vähearenenud, kuna klient ei tea sellest puhverserverist ja NAT omakorda jätkab protokolli äraarvamist ja tegeleb ülesandega, mida on selle tasemel (IP-pakettide tasemel) ebamugav lahendada.

Seda ülesannet on palju lihtsam lahendada, kui kasutate NAT-i asemel või lisaks sellele kohe spetsiaalset puhverserverit (FTP-värav) või universaalseid TCP-puhverservereid nagu Socks või äärmisel juhul httpS (see äärmuslik juhtum töötab siiski parem kui NAT). Nad töötavad esialgu TCP tasemel ja ei peta FTP klienti, vaid teevad sellega koostööd. Kolm probleemide kihti kaovad korraga: FTP-klient saab kasutada mis tahes režiimi - aktiivset või passiivset (HTTPS-is ainult passiivne, nagu ka NAT-is), pole vaja protokolli ja topelt TCP-koostu ära arvata. Lisaks on administraatoril rohkem võimalusi protsessi mõjutada (sellest pikemalt hiljem).

Kui klientprogramm ei oska spetsiaalse puhverserveri kaudu töötada (pole praktiliselt jäänud, aga räägime kõige hullematest juhtumitest), siis Socksi puhverserveri kasutamisel saab kliendi töö läbipaistvaks muuta ka SocksCapture või kodumaise abil. FreeCapi programmid. Piiri läbipaistvus on alati nipp, aga SocksCapture või FreeCap ei peata IP-pakette, vaid programmikutseid OS-ile, nii et nad teavad alati täpselt ega arvuta paketivoost, mis toimingut programm täpselt teha tahab. ja suunake need toimingud Socks -puhverserveri kaudu ümber.

NAT vs sokid

Kuna me räägime Sokkidest, peame selle puhverserveri protokolli kohta paar sõna ütlema. Veelgi enam, ajalooliselt oli sokid NAT-i järel järgmine vahend kohtvõrgu ja Interneti vahelise piiri ületamiseks: esimene ülevaateartikkel "mis on sokid" ilmus 1994. aasta oktoobris, peagi ilmus Socks4 spetsifikatsioon (varasemaid "versioone" ei kasutatud üheski tooted) http ://www.socks.nec.com/protocol/socks4a.protocol ja alles märtsis 1996 oli see 5. versiooniks valmis avaldamiseks ietfis RFC-na: http://www.ietf.org/rfc/ rfc1928.txt. Sellest dokumendist on venekeelne versioon - tõlke tegi Aleksandr Gorlatš, kes siis (97 ja 98) töötas meie ettevõttes ja osales Eserv /2 loomisel, vt Sokid5 lehekülge.

Sokid on ületanud kõik NAT-i piirangud ning lisanud vähemalt kolm mugavat tööriista, mis võimaldavad mitte ainult "puhverserveerida" peaaegu kõiki TCP- ja UDP-protokolle, vaid ka parandada LAN-i Interneti-kasutuse kontrolli:

  1. Socks mitte ainult ei käsitle väljaminevaid ühendusi, vaid võimaldab luua puhverserveril (BIND meetod) puhverserveri nõudmisel sissetulevaid kuulamispesasid – just seda nõuavad FTP ja sarnased võrguprotokollid.
  2. Socks4a ja Socks5 võimaldavad teil eemaldada kliendi domeeninimede lahendamise ülesande ja teha seda otse puhverserveris. Need. DNS-server või DNS-i vastendamine (NAT-i või spetsiaalse UDPMAP-i kaudu) muutub LAN-i sees olevas masinas tarbetuks, administraatorilt eemaldatakse üks tema murede “linnuke”, lisaks töötab serveri DNS-i vahemällu tõttu klient kiiremini.
  3. Socks5 toetab erinevaid võimalusi selgesõnaliseks kliendi autentimiseks ja autoriseerimiseks. NAT-is oli võimalik sõpru võõrastest eristada ainult .
Kuid Socks, kuigi sellel on NAT-iga võrreldes parem kasutatavus, jääb universaalseks "programmeeritavaks kaardistamiseks". Mõned NAT-probleemid jäid selles lahendamata. Ja neid ei saa lahendada madalal tasemel, ilma konkreetse volitatud protokolli üksikasjadesse laskumata. Nii nagu näiteks telefon on võimeline edastama inimkõnet, kuid ei suuda seda mõista ja kuritarvitamist välja filtreerida, seetõttu kasutavad administraatorid, kes soovivad oma võrgus toimuva üle täielikku kontrolli, spetsiaalseid puhverservereid.

NAT ja spetsiaalsed puhverserverid süsteemiadministraatori pilgu läbi

Kõigepealt jälle väike kõrvalekalle ajalukku. HTTP-protokoll töötati välja 90ndate alguses (nn "versioon 0.9") ja 90ndate keskpaigaks sai sellest Interneti "tapjarakendus" - see, mille jaoks ei hakanud ühendust looma mitte ainult teadlased ja sõjaväelased. internetti, aga ka "tavalisi ärimehi ja võhikuid". Seetõttu on vaja standardimist. 1996. aasta mais anti välja HTTP/1.0 spetsifikatsioon maamärgi võidunumbri RFC:1945 all. Spetsifikatsiooni autorid on juba arvestanud interneti uute reaalsustega, sh. vajadus LAN-ide jaoks protokolli puhverserveri järele. Lisaks on praktikas HTTP eksisteerinud juba üle aasta ja omanud "puhverserveri kogemust". Seetõttu on dokumendis tehtud vajalikud definitsioonid ja kommentaarid puhverserverite, lüüside ja tunnelite kohta. Ja tegelikult ei määratletud seal mitte ainult HTTP-protokolli ennast (tavalise veebiserveri seisukohalt), vaid kirjeldati ka HTTP-puhverserveri ja HTTPS-puhverserveri protokolle. "CONNECT" meetod, mis võeti kasutusele HTTP-protokollis spetsiaalselt selleks, et võimaldada ühenduse loomist turvaliste HTTP-serveritega puhverserveri kaudu, võimaldas siiski mitte piirduda pordiga 443, vaid määrata ühenduse jaoks mis tahes pordi. Seega saame HTTPS-i puhverserveriga silmitsi seistes mis tahes protokolli jaoks teise "programmeeritava TCP-kaardistuse", kuigi palju piiratumate võimalustega kui Socks5. HTTP-puhverserver on selle "natiivse" HTTP-protokolli jaoks hoopis teine ​​asi. See suudab seda töödelda asja täieliku teadmisega – vahemällu salvestada, URL-i ja sisu järgi filtreerida, piirata, marsruutida, autoriseerida jne. Sageli nõuavad need toimingud selliseid mittetriviaalseid toiminguid TCP ja muude OS-i komponentide tasemel, mis on NAT-i paketi tasemel või Sokkide pimekaardistusel praktiliselt võimatud.

Sama on kõigi teiste rakendusprotokollidega, mille jaoks on olemas spetsiaalsed puhverserverid – need on alati suurusjärgu võrra paremini hallatavad kui tavalised madala tasemega protokollid. Näiteks võimaldavad paljud POP3 puhverserverid rämpsposti filtreerimist, näiteks PopFile (kuigi palju õigem on rämpsposti filtreerida mitte puhverserveris, vaid SMTP-serveris). Sokid ja NAT selleks vajaksid erioskusi edastatava protokolli mõistmisel, st. tegelikult POP3 puhverserveri "emuleerimine" vahenditega, mis pole selleks eriti mugavad.

Seetõttu võib kaaluda Socksi või NAT-i kasutamist nende protokollidega, mille jaoks on olemas spetsiaalsed puhverserverid (HTTP, HTTPS, FTP, SMTP, POP3, IMAP) või üldtunnustatud vaheserverite arhitektuur (SMTP, POP3, IMAP, DNS). pealesunnitud mitteoptimaalne lahendus. Sunnitud - kas suutmatusest kasutada soovitud tüüpi puhverserverit organisatsioonilistel põhjustel (soovitavat tüüpi puhverserverit pole kuhugi panna või ühenduse tüüp ei näe ette tõelise IP-aadressi olemasolu, nagu see juhtub Internet GPRS-i või koduvõrgu kaudu - sellistel juhtudel on NAT või "sunnitud HTTP puhverserver" juba pakkuja poolel) või vastutavate isikute ebapiisava teadlikkuse tõttu, sh. administraatorid. Ma ei arvesta rahaliste piirangutega, sest kõigi nende protokollide jaoks on palju võimalusi tasuta või väga odavate puhverserverite jaoks.

Mõnel juhul on Socks5 kasutamine üsna õigustatud - näiteks ICQ ja muude sõnumitoojate jaoks. Nende protokollide jaoks spetsiaalseid puhverservereid lihtsalt ei arendata, sest need on võrgu kasutamise üldisel taustal peaaegu nähtamatud. LAN-i puudumisel meiliserver või pop3/smtp-puhverserver, on ka järgmine kandidaat Socks5, kuigi selle tugi ei ole kõigis meiliklientides saadaval ja mõnes on sellel ka mitteilmseid funktsioone (vt Mozilla ThunderBird).

Valikute sortimisel on NAT "viimase abinõuna" - juhul kui midagi paremat ei leitud või kui teenusepakkuja määras NAT-i algselt - kaabelmodemis, ruuteris, mobiilne ühendus(NAT on installitud nendesse rauatükkidesse, mitte populaarsete protokollide spetsiaalsetesse puhverserveritesse, selle põhirakenduse äärmise lihtsuse tõttu: Eproxy sarnase NAT UDPMAP pistikprogrammi lähtekoodi suurus on vaid 4 Kb). Osa protokolle ei tööta, tööd on raske juhtida. Kuid sellistel äärmuslikel juhtudel on parem töötada vähemalt kuidagi, kui mitte töötada.

Siin on üksikasjalik selgitus minu teada-tuntud seisukoha kohta viimase 8 aasta kohta - "Eserv ei saa kunagi NAT-i" Valdav enamus juhtudest ei vaja te NAT-i või on see juba karistuseks pakkuja A valimise eest. , saate kasutada sisseehitatud Windowsi ühenduse jagamist, see töötab täpselt nagu NAT.

Vaadake ka Microsofti saidil NAT-i "krutk": NAT-i läbimine - NAT-i läbimine rakenduse kohandamise kaudu, NAT-i/tulemüüri konfigureerimine UPnP kaudu. Kui kuulete fraasi NAT-i läbimine esimest korda, on põhjuseks see, et arendajad eelistavad plaastrite jaoks karkude asemel Socks5 ja see algatus pole saanud "koodi tuge". Kuid artikkel on oma piltide jaoks hea (erinevalt minu omast ja teisest sõltumatust NAT-i probleemide kirjeldusest.

NAT, ICS on juba kõigisse Windowsi uutesse versioonidesse sisse ehitatud



Kõik Windowsi versioonid välja antud alates 1999. aastast, NAT on lisatud. Esmalt ICS (Internet Connection Sharing – ühenduse jagamine) nime all ja hiljem oma NAT nime all. Siin on dialoog NAT-i lubamiseks opsüsteemis Windows 2003 (marsruutimise ja kaugjuurdepääsu kaudu system32rrasmgmt.msc).


Windows XP-s on Interneti-ühenduse atribuutides NAT/ICS lubatud.


Kui kuvatakse teade "Jagamist ei saa lubada. Viga: 1722: RPC-server pole saadaval." ("Jagatud juurdepääsu ei saa lubada. Viga: 1722: RPC-server pole saadaval."), siis olete tõenäoliselt DHCP-klienditeenuse peatanud või keelanud, peate selle enne ICS-i lubamist käivitama.

NAT Linuxi pakkuja süsteemiadministraatori pilgu läbi

(Lisa 6. juuli 2004 – esimene vastus artiklile. Nagu FireWalli käsitlevas artiklis, anname sõna tõelisele süsteemiadministraatorile

Tsiteeri Kui võrrelda NAT-i kaudu töötamist päris omaga, siis seni on mul NAT-iga probleeme olnud ainult kõne-, video- ja failiedastusega programmides nagu MSN Messenger. Võib-olla on mõnes NAT-rakenduses probleeme ka aktiivse ftp-ga, väliste VPN-serveritega ühenduse loomisega jne, kuid Linuxis NAT-i kaudu töötades (sobivate sätetega) sellega probleeme pole. NAT-i eeliseks on sel juhul IP-aadresside ja tulemüüri salvestamine.

Kui võrrelda NAT-i puhverserveriga (Internetti pääsemise viisina, st päringute ümbersuunamiseks, arvestamata vahemällu salvestamise, URL-i sõelumise jms funktsioone), siis NAT töötab. rohkem rakendusi ja protokollid (kõik); pole NAT jaoks vajalik eriseaded kasutaja poolt; puhverserver on riistvara suhtes nõudlikum. Puhverserverid ei paku tavaliselt sihtkoha NAT (DNAT) funktsioone, kuigi Eserve'is saate tcp / udp kaardistamise abil saavutada DNAT osalise sarnasuse. Tsitaadi lõpp.

See tsitaat näitab, et ka pakkujatel on ettevõtetes administraatoritest väga erinevad nõuded.

tagasilingid

See pole ammu uudis võrguaadressid Kõigi Internetis olla soovivate seadmete IP-st ei piisa. Praeguseks on sellest olukorrast väljapääs leitud IPv6 protokolli väljatöötamisega, milles aadressi pikkus on 128 bitti, samas kui praegune IPv4 on vaid 32 bitti. Kuid 2000. aastate alguses leidsid nad teise lahenduse – kasutada võrguaadressi tõlkimist, lühendatult nat. Artiklis edaspidi tehakse ruuteri nat-säte.

Ruuteri sätete menüüsse sisenemine

Võtame näiteks ZyWALL USG ja NXC5200 seeria ZyXEL ruuteri.

Kõigepealt minge ruuteri sätetesse. Selleks tippige mis tahes veebibrauseris aadressiribale 192.168.1.1. (ruuteri standardaadress), ilmub aken, milles palutakse sisestada oma sisselogimine ja parool.

Sisestage väljale "Kasutajanimi" admin, väljale "Parool" 1234. Klõpsake "OK".

Nat seadistamine ruuteris

Avanevas menüüaknas minge vahekaardile "Konfiguratsioon" (kahe hammasrattaga ikoon), seejärel "Võrk", seejärel "Marsruutimine". Valitud aknas minge vahekaardile "Poliitika marsruutimine".

ZyXEL-i ruuteri seadete menüü

AT see menüü marsruutimispoliitika konfigureerimine. Jaotises “Kriteeriumid” paneme paika liikluse valiku kriteeriumid – millist liiklust tuleb edastada (tegelikult seadistada nat) ja millist liiklust lihtsalt suunata. Liiklust saab valida mitme kriteeriumi järgi:

  1. Kasutaja (kasutaja);
  2. Liidese järgi (sissetulev);
  3. Lähte IP-aadressi järgi (Source Address);
  4. Saaja IP-aadressi (Sihtkoha aadress) järgi;
  5. Sihtpordi (teenus) järgi.

Määrake alal "Next-Hop" liikluse ümbersuunamiseks objekt:

ZyXEL-i ruuteri ümbersuunamisobjekti valimine

Kus "Automaatne" - liiklus suunatakse vaikimisi globaalsele liidesele; Gateway – seadetes määratud lüüsi aadressile; VPN Tunnel – IPSec virtuaalne privaattunnel; Pagasiruumi - marsruut "pagasiruumi", kus "pagasiruumi" on mitu liidest, mis on konfigureeritud töötama koos või koondamisrežiimis; Liides – suunata määratud liidesele:

Oluline on mitte unustada ruuteri sätete muudatuste tegemisel vajutada nuppu "OK", et seaded salvestada, mitte lihtsalt sulgeda veebibrauser.

Nati seadistamine arvutis

Nagu teate, võib personaalarvuti olla ka ruuter. Sageli on olukord, kus arvutivõrk koosneb mitmest arvutist, millest ühel on juurdepääs Internetile. Sellises olukorras ei saa te ruutereid üldse osta, vaid seadistage ruuteriks Interneti-juurdepääsuga arvuti ja konfigureerige sellel juba nat. Vaatleme sellist juhtumit üksikasjalikumalt.

Internetti vaatavas põhiarvutis (nimetagem seda SERVERiks) määrati väärtuseks 2 võrgukaardid- esimene ühendub kohaliku võrguga, teine ​​teenusepakkujaga. Näidis kasutab operatsiooni Windowsi süsteem Server 2012.

Konfigureerimiseks käivitage kõigepealt "Serverihaldur" (Start -\u003e Administrative Tools -\u003e Server Manager). Ilmub seadete aken:

Siit hakkame haldama oma serverit. Konfigureerimise jätkamiseks klõpsake nuppu Lisa Rolle ja funktsioone, mis avab Rollide lisamise viisardi akna. Esimene samm – paigaldustüüp:

Järgmises aknas peame valima rolli, mille me serverisse installime. Märkige ruut valiku "Kaugjuurdepääs" kõrval.

Ilmub järgmine aken, kus kuvatakse tööks vajalike komponentide loend. Klõpsake "Lisa komponendid", see aken kaob. Klõpsake nuppu "Järgmine".

Järgmises aknas palub viisard teil lisada serverikomponendid. Te ei pea midagi muutma, klõpsake nuppu "Järgmine".

peal järgmine lehekülg viisard lihtsalt teavitab meid rolli "Kaugjuurdepääs" toimimisest. Klõpsake nuppu "Järgmine".

Järgmine samm on valida "Rolliteenused". Tehke linnuke valiku "Marsruutimine" ette, klõpsake nuppu "Järgmine".

Järgmine aken on jällegi informatiivne, midagi ei pea valima, vaid saab teha linnukese "Automaatne taaskäivitamine valitud serveris ..." kõrval, mille tulemusena server käivitub pärast installimist automaatselt. Kuid saate seda teha ka käsitsi. Klõpsake nuppu "Järgmine".

Ja viimane samm on serveri otsene installimine. Kui olete lõpetanud, klõpsake nuppu "Sule".

Serveri installimine

Niisiis, oleme konfigureerinud arvuti, mis on serverirežiimis Internetiga ühendatud. Nüüd peate selle nat-i ​​konfigureerima.

Avage Start / Haldustööriistad / Marsruutimine ja kaugjuurdepääs. Ilmuvas aknas leiame vasakpoolses servas üksuse "SERVER (locally)", paremklõpsake sellel ja rippmenüüs klõpsake "Seadista ja luba marsruutimine ja kaugjuurdepääs".

Ilmub marsruutimise ja kaugjuurdepääsu serveri konfiguratsiooniviisard, milles konfigureerime nat.

Esimesel lehel tutvustatakse meile lühidalt viisardit - klõpsake nuppu "Järgmine". Järgmine samm on valida üks teenustest, mis töötavad see server. Valige Network Address Translation (NAT) ja klõpsake nuppu Edasi.

Järgmisena palub viisard teil valida võrguühendus mis internetist paistab. Mõlemad võrgukaardid on loendis olemas (vähemalt olenevalt sellest, kui palju neist on serverisse installitud). Valige see, millega olete ühendatud võrgukaabel pakkuja. Klõpsake nuppu "Järgmine".

Järgmises aknas hakkab viisard vanduma, et ta ei leia kohalikust võrgust DHCP- või DNS-teenuseid. Jätkamiseks on kaks võimalust – lubada põhiteenused või installida teenused hiljem.

Valige esimene üksus, klõpsake nuppu "Järgmine". Järgmisel lehel annan teada, millises vahemikus nat töötab. Häälestusviisard valib selle vahemiku automaatselt kohaliku võrguga ühendatud võrguühenduse konfiguratsiooni alusel. Klõpsake nuppu "Järgmine".

nat vahemikus

See on kõik, häälestusviisard lõpetab nat seadistamise. Klõpsake nuppu "Järgmine" ja järgmises aknas "Lõpeta".

Viimasena jääb üle seadistada klientarvutid, st kõik teised kohtvõrgu arvutid. Selleks avage klientarvutis (seda tuleb teha igas võrgus olevas arvutis) Start / Juhtpaneel / Võrgu- ja ühiskasutuskeskus / muutke adapteri sätteid. Me läheme " Võrguühendused". Paremklõpsake ikoonil ja valige rippmenüüst "Atribuudid". Ilmuvas aknas valige "Interneti-protokolli versioon 4 (TCP / IPv4)", klõpsake "Atribuudid".

Pärast "Peaväravat" kirjutame serveri arvuti IP-aadressi (mis konfigureeriti viimases etapis), väljale "Eelistatud DNS-server" kirjutame Internetis määratud pakkuja DNS-serveri IP-aadressi. ühenduse teave serveris. Klõpsake "OK" ja uuesti "OK". Kõik, kliendi arvuti Internetiga ühendatud.

Ruuteri (ruuteri) tööpõhimõte

Seda artiklit lugedes arvan, et kõik saavad aru, mis on ruuter ja miks seda vaja on, kuid kas keegi on mõelnud, kuidas see töötab? Selles artiklis proovin rääkida ruuteri põhiprintsiipidest kõige kättesaadavamas keeles. Sellest artiklist on abi süsteemiadministraatorid ja tavakasutajatele.

Peamine funktsioon, mis töötab igas ruuteris, on NAT

NAT- IP-aadresside asendamiseks kasutatakse võrguaadressi tõlkimist. LAN-id kasutavad enamasti selliseid aadresse nagu 192.168.1.XXX või sarnased ning see tekitab marsruutimise probleemi ülemaailmne võrk Internet, kuna võrgu IP-aadresse ei tohiks dubleerida. Selle probleemi lahendus on NAT - kohaliku võrgu arvutid loovad ühenduse ruuteri kohaliku liidesega, saavad sellelt IP-aadresse ja lüüsi (ruuter toimib lüüsina) ning ruuteri WAN-liides loob ühenduse Internetiga.

Nüüd kaaluge NAT-i tõlke põhimõtet:

  • Päring tehakse mis tahes arvutist kohtvõrgus, näiteks proovite minna suvalisele saidile - arvuti saadab antud palve lüüsi, st meie ruuteri aadressile;
  • Pärast selle päringu saamist registreerib ruuter teie arvuti ühenduse algatajana, misjärel luuakse teie paketi koopia ja saadetakse sihtaadressile, kuid juba ruuteri nimel ja selle IP-aadressiga ning teie pakett lihtsalt hävitatakse;
  • Server, millele päring saadeti, töötleb seda ja saadab vastuse, loomulikult ruuteri aadressile. Ja ruuter juba ootas seda, kuna lõi kirje, et teie arvuti päringule peaks tulema vastus, ja saadab selle teie arvutisse. Nagu näete, saab selle skeemi järgi ühenduse algatajaks olla ainult kohaliku võrgu arvuti ja serveri vastus jõuab arvutisse ainult siis, kui ruuter seda ootab (päringule vastamine). Teisisõnu, kõik väljastpoolt ühenduse loomise katsed peatuvad ruuteril ja on edukad ainult siis, kui ruuter pakub soovitud pordile ressurssi või sellel on konfigureeritud pordi edastamise reeglid, millest me nüüd räägime.

Pordi edastamine

Pordi edastamine- see on sisuliselt sama mis NAT, aga teises suunas ja seega ainult staatiline NAT ehk siis teatud päringud ainult teatud arvutitele, kuna globaalses võrgus ei saa nad ruuteri taga IP-aadresse teada. Näiteks olete loonud oma arvutis FTP- või HTTP-serveri ja soovite neile ressurssidele juurdepääsu võimaldada, selleks peate ruuteris registreerima selle reegli, mis näitab, et kõik sissetulevad paketid on soovitud pordis (21 või 80). meie puhul) kantakse meie arvuti IP-aadressile konkreetses pordis (porti saab muuta).

NAT-DMZ

NAT-DMZ- see on absoluutselt sama mis Port Forwarding, kuid selle erinevusega, et te ei pea iga pordi jaoks reeglit kirjutama, peate lihtsalt konfigureerima NAT - DMZ, mis edastatakse soovitud arvuti kõik sissetulevad päringud ruuteri WAN-is. Porte muidugi vahetada ei saa.

Marsruutimine

Idee lihtsustamiseks, mis see on, võime öelda, et see on sama, mis NAT, kuid ainult mõlemas suunas. Selle skeemi puhul peab ruuteril olema rohkem kui 2 LAN-liidest (mitte pordid, vaid liidesed), erinevate aadressiruumidega, näiteks üks IP-liides on 192.168.0.1 ja teine ​​192.168.1.1. Järelikult saavad ühes võrgus olevad arvutid IP-tüüpi 192.168.0.XXX ja teises võrgus 192.168.0.XXX ning nende lüüsid on vastavalt 192.168.0.1 ja 192.168.1.1. Nii saate kahesuunalise marsruudi.

Ärge unustage lahkuda

Kõigile Internetti ühendatud seadmetele unikaalsete aadresside määramiseks pole piisavalt avalikke IPv4-aadresse. Enamikul juhtudel rakendatakse võrke kasutades privaatseid IPv4-aadresse vastavalt standardile RFC 1918. Joonisel fig. Joonisel 1 on näidatud RFC 1918-s sisalduvate aadresside vahemik. Tõenäoliselt on arvutile, milles praegu kursuse materjali vaatate, määratud privaatne aadress.

Neid privaatseid aadresse kasutatakse organisatsioonis või rajatises, et võimaldada seadmetel kohapeal suhelda. Kuid kuna need aadressid ei tuvasta konkreetset ettevõtet või organisatsiooni, ei saa privaatseid IPv4-aadresse Interneti kaudu marsruutimiseks kasutada. Et võimaldada privaatse IPv4-aadressiga seadmel juurdepääs seadmetele ja ressurssidele väljaspool kohtvõrku, tuleb privaatne aadress esmalt teisendada avalikuks aadressiks.

Nagu on näidatud joonisel fig. 2, NAT pakub privaatsete aadresside tõlkimist avalikeks aadressideks. See võimaldab privaatse IPv4-aadressiga seadmel pääseda juurde ressurssidele väljaspool oma privaatvõrku, sealhulgas Internetist leitud ressurssidele. Koos privaatsete IPv4-aadressidega on NAT osutunud kasulikuks avalike IPv4-aadresside salvestamisel. Ühte avalikku IPv4-aadressi saavad jagada sajad, isegi tuhanded seadmed, millest igaüks on konfigureeritud ainulaadse privaatse IPv4-aadressiga.

Ilma NAT-i kasutamiseta oleks IPv4 aadressiruum ammendatud juba ammu enne 2000. aastat. Vaatamata oma eelistele on NAT-il mitmeid piiranguid, mida käsitletakse üksikasjalikumalt käesolevas peatükis hiljem. IPv4 aadressiruumi ammendumise ja NAT-i piirangute probleemi lahendus on lõplik üleminek IPv6-le.

NAT-i omadused

NAT-i kasutatakse erinevatel eesmärkidel, kuid selle mehhanismi peamine eesmärk on säilitada avalikke IPv4-aadresse. See saavutatakse, võimaldades võrkudel kasutada sisesuhtluseks privaatseid IPv4-aadresse ja teisendada need avalikeks aadressideks ainult vajaduse korral. NAT-i täiendav eelis on võrgu suurem privaatsus ja turvalisus, kuna see peidab sisemised IPv4-aadressid välisvõrkude eest.

NAT-toega ruuteri saab konfigureerida ühe või mitme kehtiva avaliku IPv4-aadressiga. Neid avalikke aadresse tuntakse NAT-aadresside kogumina. Kui siseseade saadab liiklust väljaspool võrku, teisendab NAT-i toega ruuter seadme sisemise IPv4-aadressi NAT-i kogumi avalikuks aadressiks. Välisseadmete jaoks näib, et kogu võrku sisenev ja sealt väljuv liiklus kasutab pakutud aadressikogumi avalikke IPv4-aadresse.

NAT-ruuter töötab tavaliselt tünnivõrgu servas. Tugivõrk on võrk, mis kasutab ühte ühendust naabervõrguga, ühte sissetulevat marsruuti ja üht väljaminevat marsruuti. Joonisel kujutatud näites on R2 piirimarsruuter. ISP seisukohast loob ruuter R2 stub võrgu.

Kui stub-võrgus olev seade vajab ühendust väljaspool võrku asuva seadmega, edastatakse pakett servaruuterile. Serva ruuter teostab NAT-i protsessi, teisendades seadme sisemise privaatse aadressi avalikuks väliseks marsruutitavaks aadressiks.

Märge. Interneti-teenuse pakkuja võrguga ühenduse loomiseks võib kasutada ka privaatset või avalikku aadressi, mida ISP kliendid jagavad. Vaadeldava teema raames tuuakse näitena avalik pöördumine.

NAT-terminoloogias viitab "sisevõrk" tõlkimisse kaasatud võrkude kogumile. Mõiste "välisvõrk" viitab kõigile teistele võrkudele.

NAT-i kasutamisel tähistavad IPv4-aadressid erinevaid sihtkohti olenevalt sellest, kas need on privaatses või avalikus võrgus (Internet) ja kas liiklus on sissetulev või väljaminev.

NAT-is on 4 tüüpi aadresse:

  • sisemine kohalik aadress;
  • sisemine globaalne aadress;
  • väline kohalik aadress;
  • väline globaalne aadress.

Kasutatava aadressitüübi määramisel on oluline meeles pidada, et NAT-i terminoloogiat kasutatakse alati lahendatava aadressiga seadme seisukohast:

  • Siseaadress on seadme aadress, mis on lahendatud NAT-mehhanismi abil.
  • Väline aadress on sihtseadme aadress.

NAT-is kasutatakse lokaalsuse või globaalsuse mõistet ka aadresside puhul:

  • Kohalik aadress on mis tahes aadress, mis kuvatakse võrgu sees.
  • Globaalne aadress on mis tahes aadress, mis kuvatakse võrgu välisküljel.

Joonisel on PC1 sisemine kohalik aadress 192.168.10.10. PC1 seisukohalt kasutab veebiserver välisaadressi 209.165.201.1. Kui paketid saadetakse PC1-st veebiserveri globaalsele aadressile, tõlgitakse PC1 sisemine kohalik aadress 209.165.200.226-ks (sisemine globaalne aadress). Välisseadme aadressi tavaliselt ei tõlgita, kuna see aadress on tavaliselt juba avalik IPv4-aadress.

Pange tähele, et PC1 kasutab erinevaid kohalikke ja globaalseid aadresse ning veebiserver kasutab mõlemal juhul sama avalikku IPv4-aadressi. Veebiserveri seisukohast näib, et arvutist PC1 pärinev liiklus pärineb sisemisest globaalsest aadressist 209.165.200.226.

NAT-ruuter (joonisel R2) on eralduspunkt sise- ja välisvõrkude ning kohalike ja globaalsete aadresside vahel.

Mõisteid "sisemine" ja "väline" kasutatakse konkreetsetele aadressidele viidates koos mõistetega "kohalik" ja "globaalne". Joonisel on R2 konfigureeritud kasutama NAT-mehhanismi. See kasutab sisemistele hostidele määratud avalike aadresside kogumit.

  • Sisemine kohalik aadress on lähteaadress sisevõrgust vaadatuna. Joonisel on PC1-le määratud IPv4 aadress 192.168.10.10. See on PC1 sisemine kohalik aadress.
  • Sisemine globaalne aadress on lähteaadress välisvõrgust vaadatuna. Joonisel, kui PC1 saadab liikluse veebiserverisse numbril 209.165.201.1, tõlgib R2 sisemise kohaliku aadressi sisemiseks globaalseks aadressiks. Sel juhul muudab R2 algse IPv4 aadressi 192.168.10.10 asemel 209.165.200.226. NAT-i terminoloogias tõlgitakse sisemine kohalik aadress 192.168.10.10 sisemiseks globaalseks aadressiks 209.165.200.226.
  • Väline globaalne aadress on sihtkoha aadress välisvõrgust vaadatuna. See on globaalselt marsruutitav IPv4-aadress, mis on määratud Interneti-hostile. Näiteks on veebiserver saadaval IPv4-aadressil 209.165.201.1. Enamikul juhtudel on välimine kohalik ja välimine globaalne aadress sama.
  • Väline kohalik aadress on sihtkoha aadress sisevõrgust vaadatuna. Selles näites saadab PC1 liikluse veebiserverisse IPv4 aadressiga 209.165.201.1. Harvadel juhtudel võib see aadress erineda globaalselt suunatavast sihtkoha aadressist.

Joonisel on näha, kuidas adresseeritakse NAT-toega ruuteri kaudu sisemisest arvutist välisse veebiserverisse saadetud liiklust. Samuti näitab see, kuidas pöördliiklust algselt käsitletakse ja teisendatakse.

Märge. Välise kohaliku aadressi kasutamine ei kuulu selle õpetuse ulatusse.

NAT-võrguaadresside tõlkimise tüübid

Võrguaadresside tõlkimise mehhanisme on kolm:

  • Staatilise võrguaadressi tõlkimine (staatiline NAT) on üks-ühele kirjavahetus kohalike ja globaalsete aadresside vahel.
  • Dünaamiline võrguaadressi tõlkimine (dünaamiline NAT) on mitu-mitmele aadresside vastendamine kohalike ja globaalsete aadresside vahel.
  • Port-aadressi tõlkimine (PAT) on mitme-ühele aadresside vastendamine kohalike ja globaalsete aadresside vahel. See meetod nimetatakse ka ülekoormuseks (NAT koos ülekoormusega).

Staatilise võrguaadressi tõlkimine (NAT)

Staatiline NAT kasutab kohalike ja globaalsete aadresside vahelist üks-ühele vastendamist. Need vastendused määrab võrguadministraator ja need jäävad muutumatuks.

Joonisel on ruuter R2 konfigureeritud sisemiste kohalike aadresside Svr1, PC2 ja PC3 staatilise vastendusega. Kui need seadmed saadavad liiklust Internetti, tõlgitakse nende sisemised kohalikud aadressid määratud sisemisteks globaalseteks aadressideks. Välisvõrkude jaoks kasutavad need seadmed avalikke IPv4-aadresse.

Staatilise võrguaadressi tõlkimise meetod on eriti kasulik veebiserveritele või seadmetele, millel peab olema Internetist juurdepääsetav püsiaadress, näiteks ettevõtte veebiserver. Staatiline NAT sobib ka seadmetele, mis peavad olema juurdepääsetavad kontorist väljas töötavatele volitatud töötajatele, kuid jäävad siiski avalikkusele suletuks. avalik juurdepääs Interneti kaudu. Näiteks saab võrguadministraator SSH-i sisestada arvutist PC4 Svr1 sisemisele globaalsele aadressile (209.165.200.226). Ruuter R2 teisendab selle sisemise globaalse aadressi sisemiseks kohalikuks aadressiks ja ühendab administraatori seansi Svr1-ga.

Staatiline NAT nõuab, et samaaegsete kasutajaseansside koguarvu jaoks oleks saadaval piisavalt avalikke aadresse.

Dünaamiline NAT

Dynamic Network Address Translation (Dynamic NAT) kasutab avalike aadresside kogumit, mis määratakse "kes ees, see mees" põhimõttel. Kui sisemine seade taotleb juurdepääsu välisele võrgule, määrab dünaamiline NAT basseinist saadaoleva avaliku IPv4-aadressi.

Joonisel pääseb PC3 Internetti, kasutades esimest saadaolevat aadressi dünaamilises NAT-i kogumis. Teised aadressid on endiselt kasutamiseks saadaval. Sarnaselt staatilisele NAT-ile nõuab dünaamiline NAT piisavalt avalikke aadresse, et toetada samaaegsete kasutajaseansside koguarvu.

Port-aadressi tõlkimine (PAT)

Seda nimetatakse ka NAT-i ülekoormuseks. See vastendab mitu privaatset IPv4-aadressi ühe või mitme avaliku IPv4-aadressiga. Seda meetodit rakendavad enamik kodusid ruuteriid. Interneti-teenuse pakkuja määrab ruuterile ühe aadressi, kuid mitu pereliiget saavad korraga Internetti juurde pääseda. Laaditud NAT on kõige levinum võrguaadressi tõlkimise meetod.

Selle meetodi abil saab mitu aadressi vastendada ühe või mitme aadressiga, kuna iga privaatset aadressi jälgib ka pordi number. Kui seade käivitab TCP/IP-seansi, loob see allika jaoks TCP- või UDP-pordi väärtuse seansi kordumatuks tuvastamiseks. Kui NAT-ruuter saab kliendilt paketi, kasutab ta konkreetse NAT-i tõlke unikaalseks tuvastamiseks oma lähtepordi numbrit.

PAT tagab, et seadmed kasutavad erinevaid TCP-pordi numbreid iga Interneti-serveriga suhtlemise seansi jaoks. Kui serverilt vastus saadetakse, määrab lähtepordi number, millest saab tagasipostituse sihtpordi number, millisesse seadmesse ruuter vastavad paketid edasi saadab. PAT-protsess tagab ka selle, et sissetulevaid pakette tõepoolest taotleti, suurendades sellega seansi turvalisust.

Kasutage animatsiooni juhtimiseks joonisel olevaid nuppe Esita ja Paus.

Animatsioon illustreerib pordiaadressi tõlkimise (PAT) protsessi. Tõlgete eristamiseks lisab PAT-mehhanism sisemisele globaalsele aadressile kordumatud allika pordinumbrid.

Kuna R2 töötleb iga paketti, kasutab see pordi numbrit (selles näites 1331 ja 1555), et tuvastada seade, kust pakett pärineb. Lähteaadress (SA) on sisemine kohalik aadress, millele on lisatud määratud TCP/IP-pordi number. Sihtkoha aadress (DA) on väline kohalik aadress, millele on lisatud teenuse pordinumber. Selles näites on teenindusport 80: HTTP.

Lähteaadressi jaoks teisendab R2 sisemise kohaliku aadressi sisemiseks globaalseks aadressiks, millele on lisatud pordi number. Sihtkoha aadress ei muutu, kuid nüüd saab sellest väline globaalne IP-aadress. Kui veebiserver vastab, läbitakse tee uuesti, ainult vastupidises järjekorras.

Eelmises näites ei muudetud NAT-i toega ruuteris kliendi pordinumbreid 1331 ja 1555. See stsenaarium ei ole väga usutav, sest on tõenäoline, et need pordinumbrid on juba muude aktiivsete seansside jaoks kasutusel.

PAT-i tõlge püüab säilitada algse lähteallika pordi. Kui algne lähteport on juba kasutusel, määrab PAT esimese saadaoleva pordi numbri, alustades vastava pordigrupi algusest - 0-511, 512-1023 või 1024-65535. Kui rohkem porte pole saadaval ja aadressikogumis on mitu välist aadressi, liigub PAT järgmisele aadressile, püüdes eraldada algse allika porti. See protsess jätkub, kuni nii saadaolevad pordid kui ka välised IP-aadressid on ammendatud.

Et teada saada, kuidas PAT töötab, klõpsake joonisel nuppu Esita.

Animatsioonis valivad sõlmed sama pordi numbri 1444. See kehtib siseaadressi puhul, kuna sõlmedele määratakse unikaalsed privaatsed IP-aadressid. Kuid NAT-i toega ruuteril tuleb pordinumbreid muuta. Vastasel juhul väljuksid kahe erineva sõlme paketid R2-st sama lähteaadressiga. Selles näites määrab PAT-protsess järgmise saadaoleva pordi (1445) teisele hostiaadressile.

NAT ja PAT võrdlus

Allpool väljatoodud erinevused NAT-i ja PAT-i vahel aitavad teil mõista kõigi nende võrguaadresside tõlkimismeetodite eripära.

Nagu joonisel näidatud, tõlgib NAT IPv4-aadressid 1:1 skeemi alusel privaatsete IPv4-aadresside ja avalike IPv4-aadresside jaoks. Samal ajal muudab PAT nii aadressi kui ka pordi numbrit.

NAT edastab sissetulevad paketid nende sisemisse sihtkohta, kasutades sissetuleva allika IPv4 aadressi, mille host annab avalikus võrgus. PAT-i kasutamisel tavaliselt ainult üks või väike kogus avalikult esitatud IPv4 aadressid. Avalikust võrgust sissetulevad paketid suunatakse ruuteri NAT-tabeli abil privaatvõrgu sihtkohtadesse. See tabel jälgib avalike ja privaatportide paare, mida nimetatakse ühenduse jälgimiseks.

Pakendid ilma kihita 4 segment

Mis juhtub IPv4 pakettidega, mis kannavad andmeid, mis ei ole TCP või UDP segment? Need paketid ei sisalda kihi 4 pordinumbrit. PAT teisendab enamiku peamisi IPv4-protokolle, mis ei kasuta TCP-d ega UDP-d, transpordikihi protokolliks. Nendest protokollidest on kõige levinum protokoll ICMPv4. PAT-i teisendusprotsess käsitleb kõiki neid protokolle erinevalt. Näiteks ICMPv4 päringusõnumid, kajapäringud ja kajavastused sisaldavad päringu identifikaatorit (päringu ID). ICMPv4 kasutab päringu identifikaatorit (päringu ID), et määrata kajapäring koos vastava kajavastusega. Päringu ID-d suurendatakse iga saadetud kajapäringu korral. PAT kasutab 4. kihi pordinumbri asemel päringu ID-d.

Märge. Muud ICMPv4 sõnumid ei kasuta päringu ID-d. Need sõnumid ja muud protokollid, mis ei kasuta TCP- ja UDP-pordinumbreid, võivad üksteisest erineda ja neid ei käsitleta selles õpetuses.

NAT-i seadistus

Staatilise NAT-i seadistamine

Staatiline NAT on sise- ja välisaadresside üks-ühele vastendamine. Staatiline NAT võimaldab välisseadmetel luua ühenduse siseseadmetega, kasutades staatiliselt määratud avalikku aadressi. Näiteks võib sisemise veebiserveri vastendada sisemise globaalse aadressiga, mis on määratletud juurdepääsetavaks välistest võrkudest.

Joonisel fig. Joonisel 1 on kujutatud sisevõrku, mis sisaldab privaatse IPv4-aadressiga veebiserverit. Staatiline NAT on konfigureeritud R2-s, et võimaldada juurdepääsu veebiserverile välisvõrgust (Internetist) olevatele seadmetele. Välisvõrgust pärit klient pääseb veebiserverisse juurde avaliku IPv4-aadressi abil. Staatiline NAT teisendab avaliku IPv4-aadressi privaatseks IPv4-aadressiks.

Staatilise NAT-i seadistamisel on kaks peamist ülesannet.

Samm 1. Esimene ülesanne on luua vastendus sisemise kohaliku aadressi ja sisemise globaalse aadressi vahel. Näiteks joonisel fig. 1 sisemine kohalik aadress 192.168.10.254 ja sisemine globaalne aadress 209.165.201.5 on konfigureeritud staatilise NAT-ina.

2. samm Pärast vastendamise konfigureerimist konfigureeritakse tõlkimises osalevad liidesed NAT-i sees või väljaspool. Selles näites on R2 Serial 0/0/0 sisemine liides ja Serial 0/1/0 on väline liides.

Konfigureeritud sisemiselt IPv4-aadressilt (192.168.10.254) R2 siseliidesele (Serial 0/0/0) saabuvad paketid teisendatakse ja edastatakse seejärel välisvõrku. Konfigureeritud sisemise globaalse IPv4-aadressi (209.165.201.5) jaoks mõeldud R2 välisliidesesse (serial 0/1/0) saabuvad paketid tõlgitakse sisemisele kohalikule aadressile (192.168.10.254) ja edastatakse seejärel sisevõrku.

Joonisel fig. Tabelis 2 on loetletud staatilise NAT-i seadistamiseks vajalikud käsud.

Joonisel fig. Joonisel 3 on näidatud käsud, mis on vajalikud staatilise NAT-i vastenduse loomiseks R2-s veebiserveri jaoks võrdlustopoloogias. Näidatud konfiguratsioonis tõlgib R2 192.168.10.254 pakettides, mis saadetakse veebiserverist avalikule IPv4-aadressile 209.165.201.5. Interneti-klient suunab veebipäringud avalikule IPv4-aadressile 209.165.201.5. Ruuter R2 edastab selle liikluse veebiserverisse aadressil 192.168.10.254.

Kasutage R2 valikulise staatilise NAT-kirje konfigureerimiseks süntaksikontrolli (vt joonis 4).

See joonis näitab staatilise NAT-i tõlkimise protsessi kliendi ja veebiserveri vahel, kasutades eelmist konfiguratsiooni. Staatilisi vastendusi kasutatakse tavaliselt siis, kui välisvõrgu (Internet) kliendid peavad võtma ühendust sisevõrgu serveritega.

1. Klient peab looma ühenduse veebiserveriga. Klient saadab paketi veebiserverisse, kasutades avalikku IPv4 sihtkoha aadressi 209.165.201.5. See on veebiserveri sisemine globaalne aadress.

2. Esimene pakett R2, mille klient saab oma välise NAT-liidese kaudu, paneb R2 kontrollima oma NAT-tabelit. Sihtkoha IPv4-aadress on NAT-i tabelis ja ruuter teostab tõlke vastavalt.

3. R2 asendab sisemise globaalse aadressi 209.165.201.5 sisemise kohaliku aadressiga 192.168.10.254. Seejärel saadab R2 paketi edasi veebiserverisse.

4. Veebiserver võtab paketi vastu ja vastab kliendile, kasutades sisemist kohalikku aadressi 192.168.10.254.

5a. R2 saab veebiserverist oma sisemise NAT-liidese kaudu paketi lähteaadressiga, mis ühtib veebiserveri sisemise kohaliku aadressiga 192.168.10.254.

5b. R2 kontrollib NAT-i tabelit, et näha, kas sisemise kohaliku aadressi jaoks on tõlge. See aadress on olemas NAT-i tabelis. R2 tagurdab lähteaadressi sisemise globaalse aadressiga 209.165.201.5 ja edastab paketi kliendile oma Serial 0/1/0 liidese kaudu.

6. Klient saab paki kätte ja jätkab dialoogi. NAT-ruuter sooritab iga paketi jaoks sammud 2-5b (samm 6 pole näidatud).

Staatilise NAT-i kontrollimine

NAT-i toimimise testimiseks kasutage käsku näita ip nat tõlkeid. See käsk kuvab aktiivsed NAT-i tõlked. Erinevalt dünaamilistest tõlgetest on staatilised tõlked alati NAT-i tabelis olemas. Joonisel fig. Joonis 1 näitab selle käsu väljundit eelmise konfiguratsiooninäite jaoks. Kuna näide on staatiline konfiguratsioon, on tõlge alati NAT-tabelis olemas, olenemata aktiivsetest interaktsioonidest. Kui käsk sisestatakse aktiivse seansi ajal, sisaldab väljund ka välisseadme aadressi, nagu on näidatud joonisel 1. üks.

Teine kasulik käsk on näita ip nat statistikat. Nagu on näidatud joonisel fig. 2, käsk näita ip nat statistikat

NAT-i tõlke korraliku toimimise tagamiseks on enne testimist soovitatav kustutada kõigi varasemate tõlgete statistika käsuga kustuta ip nat statistika.

Enne veebiserveriga suhtlemist käsk näita ip nat statistikat ei tohiks näidata ühtegi vastet. Pärast seda, kui klient loob veebiserveriga seansi, on käsu tulemus näita ip nat statistikat näitab vastete arvu suurenemist 5-ni. See kinnitab, et R2 staatiline NAT on sooritatud.

Dünaamilise NAT-i konfigureerimine

Kui staatiline NAT pakub püsivat vastendamist sisemise kohaliku aadressi ja sisemise globaalse aadressi vahel, toetab dünaamiline NAT sisemiste kohalike aadresside automaatset vastendamist sisemiste globaalsete aadressidega. Need globaalsed aadressid on tavaliselt avalikud IPv4-aadressid. Dünaamiline NAT kasutab tõlkimiseks avalike IPv4-aadresside rühma või kogumit.

Dünaamiline NAT, nagu staatiline NAT, nõuab NAT-i tõlkimisega seotud sisemiste ja väliste liideste konfigureerimist. Kuigi staatiline NAT loob püsiva vastenduse ühele aadressile, kasutab dünaamiline NAT aadresside kogumit.

Märge. NAT-i kõige levinum rakendus on avalike ja privaatsete IPv4-aadresside vaheline tõlkimine. NAT-i tõlked võivad aga toimuda mis tahes aadressipaari vahel.

Joonisel näidatud võrdlustopoloogias kasutab sisevõrk RFC 1918-s määratletud privaatse aadressiruumi aadresse. R1-ga on ühendatud kaks kohtvõrku, 192.168.10.0/24 ja 192.168.11.0/24. Edge-ruuter R2 on konfigureeritud dünaamilise NAT-i jaoks, kasutades avalike IPv4-aadresside kogumit vahemikus 209.165.200.226 kuni 209.165.200.240.

Avalike IPv4-aadresside kogum (sisemiste globaalsete aadresside kogum) on saadaval kõigile sisevõrgu seadmetele põhimõttel „kes ees, mees”. Dünaamiline NAT teisendab ühe sisemise aadressi üheks väliseks aadressiks. Seda tüüpi tõlke jaoks peab kogumis olema piisavalt aadresse, et katta kõik sisemised seadmed, mis peavad samal ajal välisvõrku juurde pääsema. Kui kasutatakse kõiki basseini aadresse, peab seade välisvõrku pääsemiseks ootama vaba aadressi.

Joonisel fig. näitab samme ja käske, mida kasutatakse dünaamilise NAT-i seadistamiseks.

Samm 1. Koos käsuga ip nat bassein määrake tõlkimiseks kasutatavate aadresside kogum. See aadressikogum on tavaliselt avalike aadresside rühm. Need aadressid määratakse basseini alguse ja lõpu IP-aadresside määramisega. Märksõna võrgumask või eesliite pikkus määrab, millised aadressi bitid on võrguspetsiifilised ja millised on hostiaadressi vahemikud.

2. samm Seadistage standardne ACL, et määratleda (lubada) ainult need aadressid, mida tuleb tõlkida. Liiga paljude lubamiskäskudega ACL võib anda ettearvamatuid tulemusi. Pidage meeles, et iga ACL-i lõpus on rida keelata kõik.

3. samm Siduge ACL basseiniga. Meeskond ip nat allikaloendisjuurdepääsuloendi numbernumbrikogumbasseini nimi kasutatakse nimekirja sidumiseks basseiniga. Seda konfiguratsiooni kasutab ruuter, et määrata, millised seadmed ( nimekirja) hankige millised aadressid ( bassein).

4. samm Määrake, millised liidesed on NAT-i sisesed, st. mis tahes sisevõrguga ühendatud liides.

5. samm Määrake, millised liidesed on NAT-i välised, st. mis tahes liides, mis on ühendatud välise võrguga.

Joonisel fig. 2 näitab topoloogia ja vastava konfiguratsiooni näidet. See konfiguratsioon võimaldab tõlkida kõigi hostide jaoks võrgus 192.168.0.0/16, mis sisaldab kohtvõrke 192.168.10.0 ja 192.168.11.0, kui hostid genereerivad liiklust S0/0/0 ja S0/1/0-st välja. Nende sõlmede aadressid tõlgitakse basseinist saadaolevateks aadressideks vahemikus 209.165.200.226 kuni 209.165.200.240.

Joonisel fig. 3 näitab süntaksikontrolli konfigureerimiseks kasutatud topoloogiat. Kasutage süntaksi kontrollijat joonisel fig. 4 dünaamilise NAT-i seadistamiseks R2-s.

Dünaamiline NAT-analüüs

Järgmised joonised illustreerivad dünaamilise NAT-i tõlkimise protsessi kahe kliendi ja veebiserveri vahel, kasutades eelmist konfiguratsiooni.

Joonisel fig. 1 näitab liiklusvoogu seest väljapoole.

1. IPv4 lähteaadressidega hostid (192.168.10.10 (PC1) ja 192.168.11.10 (PC2)) saadavad serveriga ühenduse loomist nõudvad paketid avalikule IPv4-aadressile (209.165.200.254).

2. Ruuter R2 saab esimese paketi hostilt 192.168.10.10. Kuna see pakett võeti vastu sisemise NAT-liideseks konfigureeritud liidesele, kontrollib R2 NAT-i konfiguratsiooni, et teha kindlaks, kas pakett tuleks tõlkida. ACL lubab seda paketti, nii et R2 teostab selle teisenduse. Ruuter R2 kontrollib oma NAT-tabelit. Kuna antud IP-aadressi jaoks pole tõlkekirjeid, otsustab R2, et lähteaadress 192.168.10.10 vajab dünaamilist tõlkimist. Ruuter R2 valib dünaamiliste aadresside hulgast saadaoleva globaalse aadressi ja loob tõlkekirje - 209.165.200.226. Algallika IPv4-aadress (192.168.10.10) on sisemine kohalik aadress ja tõlkimiseks kasutatav aadress NAT-i tabelis on sisemine globaalne aadress (209.165.200.226).

R2 kordab protseduuri teise hosti 192.168.11.10 jaoks, valides dünaamilise aadressikogumi hulgast järgmise saadaoleva globaalse aadressi ja luues teise tõlkekirje 209.165.200.227.

3. R2 asendab PC1 sisemise kohaliku lähteaadressi (192.168.10.10) tõlkimiseks kasutatava sisemise globaalse aadressiga (209.165.200.226) ja edastab paketi. Samad sammud tehakse ka PC2 saadetud paketi puhul, kasutades tõlkimiseks PC2-le vastavat aadressi (209.165.200.227).

Joonis 1

Joonisel fig. 2 näitab liiklusvoogu väljast sissepoole.

4. Server võtab paketi PC1-lt vastu ja vastab IPv4 sihtkoha aadressi 209.165.200.226 abil. Teise paketi vastuvõtmisel vastab server PC2-ga, kasutades sihtkoha IPv4 aadressi 209.165.200.227.

5a. Saanud paketi IPv4 sihtkoha aadressiga 209.165.200.226, teostab R2 otsingu NAT-tabelis. Tabeli vastet kasutades tõlgib R2 aadressi tagasi sisemiseks kohalikuks aadressiks (192.168.10.10) ja edastab PC1 paketi.

5b. Saanud paketi IPv4 sihtkoha aadressiga 209.165.200.227, teostab R2 otsingu NAT-tabelis. Tabeli vastet kasutades tõlgib R2 aadressi tagasi sisemiseks kohalikuks aadressiks (192.168.11.10) ja edastab PC2 paketi.

6. PC1 aadressiga 192.168.10.10 ja PC2 aadressiga 192.168.11.10 võtavad vastu pakette ja jätkavad vestlust. NAT-ruuter sooritab iga paketi jaoks samme 2-5b (samm 6 ei ole joonistel näidatud).

Joonis 2

Dünaamilise NAT-i kontrollimine

Võistkondlikud tulemused näita ip nat tõlkeid näidatud joonisel fig. 1 sisaldab teavet kahe eelmise NAT-i ülesande kohta. Käsk kuvab kõik konfigureeritud staatilise aadressi tõlked ja kõik liikluse töötlemise tulemusena loodud dünaamilised tõlked.

Märksõna lisamine paljusõnaline kuvab lisateavet iga teisenduse kohta, sealhulgas kirje loomisest ja kasutamisest möödunud aega.

Vaikimisi aeguvad teisenduskirjed 24 tunni pärast, välja arvatud juhul, kui taimeri sätet on käsuga muudetud ip nat tõlke ajalõpptimeout sekundit globaalses konfiguratsioonirežiimis.

Dünaamiliste kirjete eemaldamiseks enne nende aegumist kasutage globaalse konfiguratsioonirežiimi käsku selge ip nat tõlge. NAT-i konfiguratsiooni kontrollimisel on soovitatav eemaldada dünaamilised kirjed. Nagu tabelis näidatud, saab seda käsku kasutada märksõnade ja muutujatega, et määrata, millised kirjed eemaldada. Konkreetseid kirjeid saab kustutada, et vältida aktiivsete seansside kokkujooksmist. Tabelist kõigi teisenduste eemaldamiseks kasutage globaalse konfiguratsiooni käsku selge ip nat tõlge *.

Märge. Tabelist eemaldatakse ainult dünaamilised teisendused. Staatilisi teisendusi ei saa teisendustabelist eemaldada.

Nagu näidatud, käsk näita ip nat statistikat kuvab teavet aktiivsete tõlgete koguarvu, NAT-i konfiguratsiooniseadete, basseinis olevate aadresside arvu ja eraldatud aadresside arvu kohta.

Teise võimalusena võite kasutada käsku näita jooksvat konfiguratsiooni ja leidke NAT-i, ACL-i, liidese või basseini käsud soovitud väärtused. Uurige tulemusi hoolikalt ja parandage leitud vead.

Port-aadressi tõlkimise (PAT) konfigureerimine

Pordiaadressi tõlkimine PAT (tuntud ka kui NAT-i ülekoormus) salvestab aadressid sisemisse globaalsesse kogumisse, võimaldades ruuteril kasutada mitme sisemise kohaliku aadressi jaoks ühte sisemist globaalset aadressi. Teisisõnu, ühte avalikku IPv4 aadressi saab kasutada sadade või isegi tuhandete sisemiste IPv4 privaatsete aadresside jaoks. Kui see on konfigureeritud antud tüüp teisendusena salvestab ruuter piisavalt protokolli teavet rohkem kui kõrgel tasemel, näiteks TCP- või UDP-pordi numbrid, et tõlkida sisemine globaalne aadress tagasi õigeks siseaadressiks. Kui mitu sisemist kohalikku aadressi vastendatakse ühele sisemisele globaalsele aadressile, kasutatakse kohalike aadresside eristamiseks TCP- või UDP-pordi numbreid.

Märge. Üheks välisaadressiks teisendatavate sisemiste aadresside koguarv võib teoreetiliselt ulatuda 65 536-ni IP-aadressi kohta. Kuid sisemiste aadresside arv, millele saab määrata ühe IP-aadressi, on ligikaudu 4000.

Olenevalt sellest, kuidas teie Interneti-teenuse pakkuja avalikke IPv4-aadresse eraldab, on PAT-i seadistamiseks kaks võimalust. Esimesel juhul eraldab Interneti-teenuse pakkuja organisatsioonile mitu avalikku IPv4-aadressi ja teisel juhul eraldatakse üks avalik IPv4-aadress, vajalik organisatsioon Interneti-teenuse pakkuja võrguga ühenduse loomiseks.

PAT-i konfigureerimine avaliku IP-aadressi kogumi jaoks

Kui objektile on eraldatud mitu avalikku IPv4-aadressi, võivad need aadressid olla osa PAT-i kasutatavast kogumist. See sarnaneb dünaamilise NAT-iga, välja arvatud see, et sise- ja välisaadresside vahel pole üks-ühele vastavuse loomiseks piisavalt avalikke aadresse. Jagatakse väikest aadresside kogumit suur hulk seadmeid.

Joonisel fig. Joonisel 1 on näidatud sammud PAT-i konfigureerimiseks aadressikogumi kasutamiseks. Peamine erinevus selle konfiguratsiooni ja dünaamilise üks-ühele NAT-i konfiguratsiooni vahel on märksõna kasutamine ülekoormus. Märksõna ülekoormus võimaldab PAT-i tööd.

Näide joonisel fig. 2 loob NAT-i basseini nimega NAT-POOL2 jaoks ülekoormuse teisenduse. NAT-POOL2 sisaldab aadresse vahemikus 209.165.200.226 kuni 209.165.200.240. Teisendusobjektid on võrgu 192.168.0.0/16 sõlmed. S0/0/0 liides on määratletud sisemise liidesena ja S0/0/0 liides on määratletud kui väline liides- liides S0/1/0.

Kasutage süntaksi kontrollijat joonisel fig. 3 PAT seadistamiseks R2-le, kasutades aadressikogumit.

PAT-i konfigureerimine ühe avaliku IPv4-aadressi jaoks

Joonisel fig. Joonisel 1 on kujutatud PAT-i teostuse topoloogia ühe avaliku IPv4-aadressi tõlkimiseks. Selles näites tõlgitakse kõik 192.168.0.0/16 võrgu hostid (vastab ACL 1-le), mis saadavad ruuteri R2 kaudu liiklust Internetti IPv4-aadressiks 209.165.200.225 (liidese S0/1/0 IPv4-aadress). ). Liiklusvood määratakse NAT-tabelis olevate pordinumbrite järgi, nagu seda kasutati ülekoormus.

Joonisel fig. Joonisel 2 on näidatud sammud, mis on vajalikud PAT-i seadistamiseks ühe IPv4-aadressiga. Kui saadaval on ainult üks avalik IPv4-aadress, määratakse ülekoormuse konfiguratsiooniks tavaliselt Interneti-teenuse pakkujaga ühenduse loova välise liidese avalik aadress. Kõik välisest liidesest väljuvate pakettide sisemised aadressid tõlgitakse üheks IPv4-aadressiks.

Samm 1. Määrake ACL, mis võimaldab liikluse tõlkimist.

2. samm Kohandage allika teisendamist märksõnade abil liides ja ülekoormus. Märksõna liides määrab siseaadressi tõlkimisel kasutatava liidese IP-aadressi. Märksõna ülekoormus käsib ruuteril jälgida iga NAT-kirje pordinumbreid.

3. samm Määrake liidesed, mis on NAT-i sisemised. See on mis tahes liides, mis on ühendatud sisevõrguga.

4. samm Määrake liides, mis on NAT-iväline. See peab olema sama liides, mis on määratud 2. sammu lähteteisenduskirjes.

See konfiguratsioon sarnaneb dünaamilise NAT-iga, välja arvatud see, et välise IPv4-aadressi määramiseks kasutatakse aadressikogumi asemel märksõna. liides. Seega pole NAT-i kogum määratletud.

Kasutage süntaksikontrolli, et seadistada R2-l PAT, kasutades ühte aadressi.

PAT analüüs

Ülekoormusega NAT-i tõlkimise protsess on aadresside kogumi kasutamisel sama kui ühe aadressi kasutamisel. Jätkates eelmise PAT-i näitega, kasutades ühte avalikku IPv4-aadressi, peab PC1 looma ühenduse Svr1 veebiserveriga. Samal ajal peab teine ​​klient PC2 looma Svr2 veebiserveriga sarnase seansi. Nii PC1 kui ka PC2 on konfigureeritud privaatsete IPv4 aadressidega ja PAT on R2-l lubatud.

Pakettide arvutist serverisse ülekandmise protsess

1. Joonisel fig. Joonisel 1 on näidatud, kuidas PC1 ja PC2 saadavad pakette vastavalt serveritele Svr1 ja Svr2. PC1 kasutab IPv4 aadressi 192.168.10.10 ja lähte TCP porti 1444. PC2 kasutab lähte IPv4 aadressi 192.168.10.11 ja juhuslikult sama allika TCP porti 1444.

2. PC1 pakett jõuab esimesena R2-ni. Kasutades PAT-i, muudab R2 lähte IPv4-aadressi 209.165.200.225-ks (sisemine globaalne aadress). NAT-tabelis pole muid porti 1444 kasutavaid seadmeid, seega jääb PAT-i pordi number samaks. Seejärel edastatakse pakett Svr1 serverisse aadressil 209.165.201.1.

3. Järgmisena saabub ruuterisse R2 pakett PC2-st. PAT-säte tagab, et kõik tõlked kasutavad sama sisemist globaalset IPv4-aadressi, 209.165.200.225. Sarnaselt PC1 tõlkeprotsessiga muudab PAT PC2 lähte IPv4 aadressi sisemiseks globaalseks aadressiks 209.165.200.225. Kuid see PC2 pakett kasutab lähtepordi numbrit juba praeguses PAT-kirjes, mis pakub PC1 tõlke. PAT suurendab allika pordi numbrit, kuni selle väärtus on selles tabelis kordumatu. Sel juhul omistatakse lähtepordi sisestusele NAT-tabelis ja paketile PC2-st number 1445.

Kuigi PC1 ja PC2 kasutavad sama tõlgitud aadressi, sisemist globaalset aadressi 209.165.200.225 ja sama allika pordi numbrit 1444, muudab PC2 muudetud pordinumber (1445) iga kirje NAT-tabelis ainulaadseks. See ilmneb siis, kui serverid saadavad klientidele pakette tagasi.

Pakettide edastamise protsess serveritest arvutitesse

4. Nagu on näidatud joonisel fig. 2, tüüpilises klient-server vahetuses vastavad serverid Svr1 ja Svr2 vastavalt arvutitelt PC1 ja PC2 saadud päringutele. Serverid kasutavad tagasiliikluse sihtpordina vastuvõetud paketi lähteporti ja sihtkoha aadressina lähteaadressi. Serverid käituvad nii, nagu nad suhtleksid ühe hostiga 209.165.200.225, kuid nad seda ei tee.

5. Pakkide vastuvõtmisel leiab R2 NAT-tabelist unikaalse kirje, kasutades iga paketi sihtkoha aadressi ja sihtporti. Kui Svr1-lt võetakse vastu pakett, on IPv4 sihtaadressil 209.165.200.225 mitu kirjet, kuid ainult üks neist sisaldab sihtporti 1444. Seda tabelikirjet kasutades muudab R2 paketi IPv4 sihtkoha aadressiks 192.168.10.10. Sihtporti pole sel juhul vaja muuta. Seejärel saadetakse pakett PC1-le.

6. Svr2-lt paketi vastuvõtmisel teostab R2 sarnase teisenduse. Ruuter leiab uuesti mitme kirjega IPv4 sihtkoha aadressi 209.165.200.225. Kuid sihtporti 1445 kasutades saab R2 teisenduskirje unikaalselt tuvastada. Sihtkoha IPv4 aadress muudetakse 192.168.10.11-ks. Sel juhul tuleb ka sihtport muuta tagasi algsele väärtusele 1444, mis on salvestatud NAT-i tabelisse. Seejärel saadetakse pakett PC2-le.

PAT kontroll

Ruuter R2 on konfigureeritud pakkuma 192.168.0.0/16 võrgu klientidele PAT-i. Kui sisemised hostid jõuavad R2 kaudu Internetti, tõlgitakse nende aadressid PAT-i basseinist IPv4-aadressiks, millel on kordumatu allika pordinumber.

PAT-i kontrollimiseks kasutatakse samu käske kui staatilise ja dünaamilise NAT-i kontrollimiseks, nagu on näidatud joonisel 1. 1. Meeskond näita ip nat tõlkeid väljastab kahe erineva hosti liikluse tõlked erinevatesse veebiserveritesse. Pange tähele, et kahele erinevale sisemisele hostile eraldatakse sama IPv4-aadress 209.165.200.226 (sisemine globaalne aadress). Lähte pordi numbreid kasutatakse NAT-i tabelis kahe tehingu eristamiseks.

Nagu on näidatud joonisel fig. 2, käsk näita ip nat statistikat võimaldab teil kontrollida, kas NAT-POOL2 kogumil on mõlema tõlke jaoks eraldatud üks aadress. Käsu täitmise tulemus sisaldab teavet aktiivsete tõlgete arvu ja tüübi, NAT-i sätete, basseinis olevate aadresside arvu ja eraldatud aadresside arvu kohta.

NAT või võrguaadressi tõlkimine on viis ühe aadressiruumi teisendamiseks, muutes Interneti-protokolli või IP-aadressi teavet. Pakettide päised muutuvad marsruutimisseadmete kaudu edastamisel. Seda meetodit kasutati algselt IP-võrkude liikluse hõlpsamaks edastamiseks, ilma et oleks vaja iga hosti nummerdada. Sellest on saanud oluline ja populaarne tööriist globaalse aadressiruumi eraldamiseks ja säilitamiseks, pidades silmas suurt IPv4-aadresside puudust.

Mis on NAT?

Võrguaadressi tõlke kasutamine seisneb iga aadressi vastendamises ühest aadressiruumist aadressiga, mis asub teises aadressiruumis. See võib osutuda vajalikuks juhul, kui teenusepakkuja on vahetunud ja kasutajal ei ole võimalust uut võrku avalikult teavitada. Alates 1990. aastate lõpust on NAT-tehnoloogiat globaalse aadressiruumi ammendumise kontekstis üha enam kasutatud. Tavaliselt kasutatakse seda tehnoloogiat koos IP-krüptimisega. IP-krüptimine on meetod mitme IP-aadressi teisaldamiseks ühte ruumi. See mehhanism on rakendatud marsruutimisseadmes, mis kasutab olekupõhiseid tõlketabeleid, et vastendada peidetud aadressid ühe IP-aadressiga. Samuti suunab see välja kõik väljuvad IP-paketid. Seega näivad need paketid marsruutimisseadmest lahkuvat. Pöördlingi vastused vastendatakse lähte-IP-aadressiga, kasutades tõlketabelitesse salvestatud reegleid. Tõlketabelid omakorda tühjendatakse lühikese aja pärast, kui liiklus oma olekut ei värskenda. See on NAT-i põhimehhanism. Mida see tähendab? See tehnoloogia võimaldab ruuteri kaudu suhtlust korraldada ainult siis, kui ühendus toimub krüptitud võrgus, kuna see loob tõlketabeleid. Sellises võrgus saab veebibrauser vaadata saiti väljaspool seda, kuid väljaspool seda installituna ei saa see avada sellel hostitud ressurssi. Enamik NAT-seadmeid võimaldab tänapäeval võrguadministraatoril konfigureerida tõlketabeli kirjeid alaliseks kasutamiseks. Seda funktsiooni nimetatakse sageli pordi edastamiseks või staatiliseks NAT-iks. See võimaldab "välisvõrgust" pärineval liiklusel jõuda krüptitud võrgus määratud hostideni. IPv4 aadressiruumi säästmiseks kasutatava meetodi populaarsuse tõttu on termin NAT muutunud peaaegu krüpteerimismeetodi sünonüümiks. Kuna võrguaadressi tõlkimine muudab IP-pakettide aadressiteavet, võib sellel olla ühenduse kvaliteedile tõsiseid tagajärgi. Seetõttu tuleb hoolikalt jälgida kõiki rakenduse üksikasju. NAT-i kasutamise viisid erinevad üksteisest oma spetsiifilise käitumise poolest erinevates olukordades, mis on seotud võrguliikluse mõjuga.

Põhiline NAT

Lihtsaim NAT-tüüp võimaldab üks-ühele IP-aadressi tõlkimist. Selle tõlke põhitüüp on RFC-2663. Sel juhul muudetakse ainult IP-aadresse ja ka IP-päiste kontrollsummat. Põhilisi tõlketüüpe saate kasutada kahe ühildumatu aadressiga IP-võrgu ühendamiseks.

Enamik NAT-i vorme on võimelised kaardistama mitu privaathosti ühele avalikult määratud IP-aadressile. Tüüpilise konfiguratsiooniga kohtvõrk kasutab üht alamvõrgule määratud "privaatset" IP-aadressi. Selles võrgus on ruuteril ruumis privaatne aadress. Ruuter loob Interneti-ühenduse ka Interneti-teenuse pakkuja määratud "avalikku aadressi" kasutades. Kuna liiklus pärineb kohalikust Internetist, tõlgitakse iga paketi lähteaadress privaatsest avalikuks. Ruuter jälgib ka iga aktiivse ühenduse põhiandmeid. Eelkõige kehtib see sellise teabe kohta nagu aadress ja sihtsadam. Kui vastus sellele tagastatakse, kasutab see väljamineva etapi ajal salvestatud ühenduse andmeid. See on vajalik selleks, et määrata kindlaks sisevõrgu privaatne aadress, kuhu vastus suunata. Selle funktsiooni peamiseks eeliseks on see, et see on praktiline lahendus IPv4 aadressiruumi ammendumise probleemile. Isegi suuri võrke saab Internetiga ühendada ühe IP-aadressiga. Kõigil IP-võrkude pakettide datagrammidel on kaks IP-aadressi - see on lähte- ja sihtkoha aadress. Privaatvõrgust avalikku võrku liikuvatel pakettidel on pakettide lähteaadress, mis muutub avalikust võrgust privaatvõrku üleminekul. Võimalikud on ka keerulisemad konfiguratsioonid.

NAT-i seadistamise omadused

NAT-i seadistamisel võib olla teatud funktsioone. Tagastatud pakkide tõlkimisega seotud raskuste vältimiseks võib vaja minna täiendavaid muudatusi. Suurem osa Interneti-liiklusest läbib UDP- ja TCP-protokolle. Nende numbreid muudetakse nii, et andmete tagasisaatmisel hakkavad IP-aadressid ja pordinumbrid ühtima. Protokollid, mis ei põhine UDP-l või TCP-l, nõuavad muid tõlkemeetodeid. Tavaliselt korreleerib ICMP või Interneti-sõnumihaldusprotokoll edastatud teabe saadaoleva ühendusega. See tähendab, et neid tuleb kuvada sama IP-aadressi ja numbriga, mis algselt määrati. Mida tuleb arvestada? NAT-i seadistamine ruuteris ei paku sellele otsast-otsa ühendust. Sel põhjusel ei saa sellised ruuterid osaleda mõnes Interneti-protokollis. Teenused, mis nõuavad TCP-ühenduste algatamist välisvõrgust või mitteprotokolli kasutajatelt, ei pruugi lihtsalt saadaval olla. Kui ruuter ei NAT erilisi jõupingutusi selliste protokollide toetamiseks ei pruugi sissetulevad paketid kunagi sihtkohta jõuda. Mõned protokollid saab paigutada osalevate hostide vahel samasse tõlkesse, mõnikord kasutades rakenduskihi lüüsi. Ühendust aga ei looda, kui mõlemad süsteemid on NAT-i abil Internetist eraldatud. Samuti muudab NAT-i kasutamine keerukamaks tunneldamisprotokolle, nagu IPsec, kuna see muudab väärtusi päistes, mis suhtlevad päringu terviklikkuse kontrollimisega.

NAT: olemasolev probleem

Interneti põhiprintsiip on otsast lõpuni ühendus. See on eksisteerinud alates selle loomisest. Võrgu praegune olek tõestab ainult seda, et NAT on rikkumine see põhimõte. Professionaalses keskkonnas on tõsine mure, mis on seotud võrguaadresside tõlkimise laialdase kasutamisega IPv6-s. Seega tõstatatakse täna küsimus, kuidas seda probleemi kõrvaldada. Kuna NAT-ruuterite tõlkeolekutabelid ei ole oma olemuselt igavesed, kaotavad sisevõrgu seadmed IP-ühenduse väga lühikese aja jooksul. Me ei tohi seda asjaolu unustada, rääkides sellest, mis on ruuteris NAT. See vähendab oluliselt patareidel ja akudel töötavate kompaktsete seadmete tööaega.

Skaleeritavus

NAT-i kasutamisel jälgitakse ka ainult neid porte, mida saab kiiresti tühjendada. sisemised rakendused mis kasutavad mitut samaaegset ühendust. See võib olla HTTP päringud lehtede jaoks, millel on palju manustatud objekte. pehmendada see probleem on võimalik, jälgides lisaks pordile ka IP-aadressi sihtkohtades. Ühte kohalikku porti saavad seega jagada paljud kaughostid.

NAT: mõned komplikatsioonid

Kuna kõik sisemised aadressid on maskeeritud sama avaliku aadressina, ei ole välistel hostidel võimalik luua ühendust konkreetse sisemise hostiga ilma tulemüüris spetsiaalset konfiguratsiooni seadistamata. See konfiguratsioon peaks suunama ühendused konkreetsesse porti. IP-telefoni, videokonverentsi ja sarnaste teenuste rakendused peavad oma tavapäraseks toimimiseks kasutama NAT-i läbimise meetodeid. Rapti tõlkeport saatja aadress võimaldab hostil, mille IP-aadress aeg-ajalt muutub, jääda kättesaadavaks serverina, kasutades fikseeritud koduvõrgu IP-aadressi. See peaks põhimõtteliselt võimaldama servereid ühenduse säilitamiseks seadistada. Kuigi see probleemi lahendus pole ideaalne, võib see olla veel üks kasulik tööriist võrguadministraatori arsenalis, kui lahendate ruuteris NAT-i konfigureerimisega seotud probleeme.

PAT või pordiaadressi tõlge

Port Address Translation on Cisco Rapti rakendus, mis kaardistab mitu privaatset IP-aadressi üheks avalikuks. Seega saab aadressina vastendada mitu aadressi, kuna igaühte neist jälgib pordi number. PAT kasutab andmeedastussuuna eristamiseks sisemisel globaalsel IP-l ainulaadseid allika pordinumbreid. Need arvud on 16-bitised täisarvud. Üheks välisaadressiks tõlgitavate sisemiste aadresside koguarv võib teoreetiliselt ulatuda 65536-ni. Tegelikkuses on pordide arv, millele saab määrata ühe IP-aadressi, ligikaudu 4000. PAT reeglina püüab säilitage algne "originaal" port . Kui see on juba kasutusel, määrab Port Address Translation esimese saadaoleva pordi numbri, alustades vastava rühma algusest. Kui rohkem porte pole saadaval ja väline IP-aadress on rohkem kui üks, liigub PAT lähtepordi eraldamiseks järgmisele. See protsess jätkub seni, kuni saadaolevad andmed otsa saavad. Cisco teenus kuvab aadressi ja pordi. See ühendab tõlkepordi aadressi ja IPv4 pakettide tunneldamise andmed sisemise IPv6 võrgu kaudu. Tegelikult on see alternatiiv Carrier Grade NAT-ile ja DS-Lite'ile, mis toetab portide ja aadresside IP-tõlget. See väldib ühenduse loomise ja säilitamisega seotud probleeme. See pakub ka üleminekumehhanismi IPv6 juurutamiseks.

Tõlkemeetodid

Võrguaadresside ja pordi tõlke rakendamiseks on mitu põhiviisi. Teatud rakendusprotokollid nõuavad ühenduse teises otsas kasutatava välise NAT-aadressi määramist. Samuti on sageli vaja uurida ja liigitada ülekande tüüpi. Tavaliselt tehakse seda seetõttu, et on soovitav luua otseühendus kahe kliendi vahel eraldi NAT-ide taga. Sel eesmärgil töötati välja spetsiaalne protokoll RFC 3489, mis tagab lihtsa UPD möödaviigu NATS-i kaudu. Seda peetakse tänapäeval juba aegunuks, kuna tänapäeval peetakse selliseid meetodeid seadmete töö õigeks hindamiseks ebapiisavaks. 2008. aastal töötati välja RFC 5389, mis standardiseeris uued meetodid. Seda spetsifikatsiooni nimetatakse tänapäeval Session Traversaliks. Ta esindab eriline utiliit, mõeldud NAT-i tööks.

Kahesuunalise lingi loomine

Iga UDP- ja TCP-pakett sisaldab lähte-IP-aadressi ja selle pordi numbrit, samuti sihtpordi koordinaate. Pordi number on avalike teenuste, näiteks meiliserveri funktsioonide, vastuvõtmiseks väga oluline. Näiteks port 25 loob ühenduse meiliserveri SMTP-ga ja port 80 loob ühenduse tarkvara veebiserver. Märkimisväärne on ka avaliku serveri IP-aadress. Need parameetrid peavad olema usaldusväärselt teada neile sõlmedele, mis kavatsevad ühendust luua. Privaatsed IP-aadressid on olulised ainult kohalikes võrkudes.