5.1 Въведение в NAT
Друга много интересна тема е NAT. NAT означава превод на мрежови addressи и обикновено присъства във всеки рутер като услуга. И така, Howво е това и защо е необходимо?
NAT е точка, чрез която локалните мрежи могат да се свързват с глобални мрежи, като например Интернет.
Както вече знаете, в локалните мрежи всички компютри (и други устройства, свързани към мрежата) имат свои собствени локални IP addressи. А за да обменяме данни със сървър в Интернет, е необходимо нашият компютър да може да изпрати заявка до сървъра и сървърът да ни изпрати отговор. И къде трябва да изпрати отговор, ако нашият IP address е неизвестен извън нашата локална мрежа?
Представете си, че пишете писмо на хартия до Доналд Тръмп. Тръмп е публична личност, той е единствен - това е нашият публичен сървър. И ти посочваш Маша като обратен address в писмото. Пасирайте много. На коя Маша трябва да се изпрати отговорът?
И така, вие изпращате писмо до ваш познат във Washington, също публична личност, със строги указания да го изпратите на Тръмп. Вашият приятел получава писмо, изпраща го на Тръмп и дава address си във Washington като обратен address.
След това, след като получи отговор от Тръмп, познатият ви го препраща. Същото с IP пакетите...
За да позволите на устройство с частен IPv4 address да има достъп до устройства и ресурси извън локалната мрежа, частният address трябва първо да бъде променен на публичен публичен address.
Просто NAT превежда частните addressи в публични. Това позволява на устройство с локален IP address да има достъп до ресурси извън неговата частна мрежа. NAT, комбиниран с локални IP addressи, се оказа полезен метод за поддържане на публични IPv4 addressи.
В света има 8 мorарда души и вече има много повече мрежови устройства: телефони, лаптопи, смарт часовници, сървъри, всяHowви смарт устройства. И има само 4 мorарда IP address. Преди изглеждаше много, но с бързото развитие на Интернет на всички стана ясно, че това не е достатъчно.
Тук NAT идва на помощ: един публичен IPv4 address може да се използва от стотици, дори хиляди устройства, всяко от които има локален IPv4 address. NAT има допълнителното предимство да добави известна степен на поверителност и сигурност към мрежата, защото скрива вътрешните IPv4 addressи от външни мрежи.
5.2 Подмрежи в NAT
LAN обикновено се проектират с частни IP addressи. Това са addressи от частни подмрежи 10.0.0.0/8
и 172.16.0.0/12
. 192.168.0.0/16
Тези IP addressи се използват вътрешно от организация or сайт, за да позволят на устройствата да комуникират локално, те не могат да се маршрутизират в интернет.
NAT-активираните маршрутизатори могат да бъдат конфигурирани с един or повече валидни публични IPv4 addressи. Тези публични addressи се наричат NAT пул.
Когато устройство във вътрешната мрежа изпраща трафик от мрежата навън, NAT-активираният рутер преобразува вътрешния IP address на устройството в публичния IP address от NAT пула. За външни устройства целият трафик в и извън мрежата изглежда има публичен IP address.
NAT рутер обикновено работи на ръба на Stub мрежа. Пън мрежа е термин от теорията на мрежите: мрежа пън, която има една връзка със съседна мрежа, един вход и изход от мрежата.
Когато устройство в мрежата Stub иска да комуникира с устройство извън неговата мрежа, пакетът се препраща към рутера и той изпълнява NAT процес, преобразувайки вътрешния частен address на устройството в публичен, външен address, който може да бъде маршрутизиран.
5.3 NAT терминология
Ако се задълбочите в теорията на мрежите, тогава NAT е вътрешна мрежа, която е набор от подмрежи, които трябва да бъдат преведени. Външната мрежа се отнася за всички други мрежи.
Когато използвате NAT, IP addressите имат различни обозначения в зависимост от това дали са в частна мрежа or в обществена мрежа (в Интернет) и дали трафикът е входящ or изходящ.
NAT включва четири типа addressи:
- Вътрешен локален address (Inside local address);
- Вътрешен глобален address (Inside global address);
- Външен местен address ;
- Външен глобален address (Външен глобален address);
Когато определяте кой тип address се използва, важно е да запомните, че NAT терминологията винаги се прилага от гледна точка на устройството с преведен address:
- Вътрешен address (Inside address) - address на устройството, който се транслира от NAT;
- Външен address – address на целево устройство;
- Локален address е всеки address, който се появява вътрешно в мрежата;
- Глобален address е всеки address, който се появява извън мрежата.
Нека да разгледаме това с примерна диаграма.
Компютърът на снимката вляво има вътрешен локален ( Inside local ) address 192.168.1.5
, а от негова гледна точка уеб сървърът има външен ( външен ) address 208.141.17.4
. Когато пакетите с данни се изпращат от компютъра до глобалния address на уеб сървъра, вътрешният локален ( Inside local ) address на компютъра се преобразува в 208.141.16.5
( inside global ). Адресът на външното устройство обикновено не се превежда, защото е публичен IPv4 address.
Струва си да се отбележи, че компютърът има, така да се каже, два address: локален и глобален address, докато уеб сървърът има един и същ публичен IP address. От негова гледна точка трафикът, който идва от компютъра, идва от вътрешния глобален address 208.141.16.5
. NAT рутерът е точката на разделяне между вътрешните и външните мрежи и между локалните и глобалните addressи.
Термините вътре и извън се комбинират с термините локален и глобален , за да се отнасят до конкретни addressи. На фигурата рутерът е конфигуриран да предоставя NAT и има набор от публични addressи за присвояване на вътрешни хостове.
5.4 Път на пакета
Ако вече сте уморени, отидете на следващата лекция. Ако все още се интересувате, добре дошли по-надолу в дупката.
Фигурата по-долу показва How трафикът се изпраща от вътрешен компютър към външен уеб сървър през NAT-активиран рутер, изпраща се навън и се препредава обратно.
NAT table на рутера | |||
---|---|---|---|
настолен компютър | уеб сървър | ||
Insde Global | Inside Local | извън местните | Извън глобалното |
208.141.17.4 | 192.168.1.5 | 208.141.16.5 | 208.141.16.5 |
Вътрешен локален address - Адресът на източника, Howто се вижда от вътрешната мрежа. На фигурата addressът 192.168.1.5
е присвоен на компютъра - това е неговият вътрешен локален address.
Вътрешен глобален address - Адресът на източника, Howто се вижда от външната мрежа. На фигурата, когато трафикът от компютъра се изпраща към уеб сървъра на 208.141.17.4
, рутерът преобразува вътрешния локален address (локален address) във вътрешния глобален address (вътрешен глобален address). В този случай рутерът променя address на източника на IPv4 от 192.168.1.5
на 208.141.16.5
.
Външен глобален address - addressът на дестинацията, Howто се вижда от външната мрежа. Това е глобално маршрутизиран IP address, присвоен на хост в Интернет. В диаграмата уеб сървърът е достъпен на 208.141.17.4
. Най-често външните локални и външните глобални addressи са еднакви.
Външен локален address - Адресът на получателя, Howто се вижда от вътрешната мрежа. В този пример компютърът изпраща трафик към уеб сървъра на208.141.17.4
Сега нека разгледаме целия път на пакета. Компютърът с address 192.168.1.5
се опитва да комуникира с уеб сървъра 208.141.17.4
. Когато пакет пристигне в NAT-активиран рутер, той прочита IP address на местонаmeaningто на пакета, за да определи дали пакетът отговаря на критериите, определени за транслация. В този пример addressът на източника отговаря на критериите и се превежда от 192.168.1.5
(Вътрешен локален address) във 208.141.16.5
(Вътрешен глобален address).
Рутерът добавя това съпоставяне на локален към глобален address към NAT tableта и изпраща пакета с преведения address на източника до дестинацията. Уеб сървърът отговаря с пакет, addressиран до вътрешния глобален address на компютъра ( 208.141.16.5
).
Рутерът получава пакет с address на дестинация 208.141.16.5
и проверява NAT tableта за запис за това картографиране. Той използва тази информация и преобразува обратно вътрешния глобален address ( 208.141.16.5
) във вътрешния локален address ( 192.168.1.5
), пакетът се пренасочва към компютъра.
5.5 Предимства и недостатъци на NAT
NAT услугата е много мощно решение, което се използва навсякъде. NAT предоставя много предимства , включително:
- NAT поддържа регистрирана схема за addressиране, осигурявайки гъвкава работа в LAN. С NAT вътрешните хостове могат да споделят един публичен IP address за всички външни комуникации. Този тип конфигурация изисква много малко външни addressи, за да поддържа много вътрешни хостове.
- NAT увеличава гъвкавостта на интернет връзките. Множество пулове, резервни пулове и пулове за балансиране на натоварването могат да бъдат внедрени, за да осигурят надеждни публични мрежови връзки.
- NAT осигурява последователност за схемите за вътрешно addressиране на мрежата. В мрежа, която не използва частни IP addressи и NAT, промяната на общата схема на IP addressи изисква пренасочване на всички хостове в съществуващата мрежа. Цената на пренасочването на хоста може да бъде значителна. NAT позволява съществуващата схема за частно addressиране IPv4 да остане, като същевременно позволява новата схема за публично addressиране да бъде лесно променяна. Това означава, че една организация може да сменя доставчици и не е необходимо да сменя нито един от своите вътрешни клиенти.
- NAT осигурява мрежова сигурност . Тъй като частните мрежи не рекламират своите addressи or вътрешна топология, те остават разумно надеждни, когато се използват заедно с NAT за получаване на контролиран външен достъп. Трябва обаче да разберете, че NAT не замества защитните стени.
Но NAT има някои недостатъци . Фактът, че изглежда, че хостовете в интернет говорят директно с NAT-активирано устройство, а не с действителен хост в частната мрежа, създава редица проблеми:
- Един от недостатъците на използването на NAT е свързан с производителността на мрежата, особено за протоколи в реално време като VoIP. NAT увеличава закъсненията при превключване, тъй като преводът на всеки IP address в заглавките на пакетите отнема време.
- Друг недостатък на използването на NAT е, че addressирането от край до край се губи. Много интернет протоколи и applications разчитат на addressиране от край до край от източника до местонаmeaningто. Някои applications не работят с NAT. Приложения, които използват физически addressи, а не квалифицирано име на домейн, не успяват да достигнат дестинации, които се превеждат през NAT рутер. Това понякога може да се избегне чрез прилагане на статични NAT съпоставяния.
- Проследяването на IPv4 от край до край също се губи. По-трудно е да се проследят пакети, които претърпяват множество промени на пакетен address през множество NAT хопове, което затруднява отстраняването на неизправности.
- Използването на NAT също затруднява протоколите за тунелиране като IPsec, тъй като NAT променя стойностите в заглавките, които пречат на проверките за цялост, извършвани от IPsec и други протоколи за тунелиране.
- Услуги, които изискват TCP връзки да бъдат инициирани от външната мрежа or протоколи без състояние, като тези, използващи UDP, може да бъдат повредени. Ако NAT рутерът не е конфигуриран да поддържа тези протоколи, входящите пакети не могат да достигнат местонаmeaningто си.
GO TO FULL VERSION