Объяснение технологий

Что такое трансляция сетевых адресов (NAT) и как она работает?

Что такое трансляция сетевых адресов (NAT) и как она работает?

Ирония в том, что одной из самых больших угроз для Интернета был продукт того, что никто не предвидел, насколько популярным он будет.

До недавнего времени основным способом назначения IP-адресов компьютерам была система IPv4 . Это позволило создать около 4,3 миллиарда возможных IP-адресов, значительная часть которых была разослана региональным интернет-властям в количестве 16,8 миллионов.

Довольно рано стало очевидно, что предложения не хватит для удовлетворения огромного спроса. Когда исчерпание ресурсов IP-адресов выглядело неизбежным, люди искали способы «делиться» IP-адресами с несколькими системами. Таким образом, трансляция сетевых адресов (NAT) родился, и Интернет был сохранен.

Что такое трансляция сетевых адресов?

Чтобы компьютер мог общаться с Интернетом в целом, он должен иметь IP-адрес. Используя систему IPv4, это уникальные 32-разрядные числа, которые разбиты на четыре разных двоичных октета. Неважно, сервер это или компьютер, или Xbox. Если у него нет IP-адреса, он не подключается к Интернету.

NAT-IP-адрес

Но просто не хватает IP-адресов, чтобы дать каждому хосту свой адрес. Таким образом, чтобы лучше использовать чрезвычайно ограниченное доступное адресное пространство, мы используем преобразование сетевых адресов.

Трансляция сетевых адресов позволяет одному устройству находиться между локальной сетью и Интернетом и перенаправлять трафик на соответствующий хост. Вы, вероятно, знаете это как свой роутер. Преимущество этого заключается в том, что несколько компьютеров могут использовать один и тот же IP-адрес.

Это отдельное устройство (обычно маршрутизатор , коммутатор или аппаратный брандмауэр) изменяет заголовки IP-пакетов на лету, гарантируя, что содержимое пакета попадет в назначенное место назначения.

физ-маршрутизатор

Однако это имеет свои недостатки, поскольку узлам, находящимся за пределами локальной сети, становится значительно сложнее обмениваться данными с серверами, расположенными за маршрутизатором.

Преобразование сетевых адресов может работать несколькими способами, наиболее распространенными из которых являются динамический NAT, статический NAT и перегрузка.

Динамический NAT

Благодаря Dynamic NAT маршрутизатор будет поддерживать список общедоступных IP-адресов. Когда хост, находящийся за сетью, должен передать или получить, маршрутизатор выберет один из общедоступных IP-адресов, который в данный момент не используется, и соответственно переадресует любые пакеты. В результате это означает, что IP-адрес хоста может измениться в любой момент.

Но самое главное, это означает, что большой пул хостов может совместно использовать значительно меньший пул IP-адресов. Это было жизненно важно, учитывая неизбежное исчерпание доступного пула адресов IPv4.

перегрузка

Распространенным способом выполнения трансляции сетевых адресов является так называемая «перегрузка», когда несколько внутренних IP-адресов сопоставляются с одним общедоступным IP-адресом.

Это делается путем предоставления каждому внутреннему хосту соответствующего порта. Например, предположим, у вас есть три компьютера во внутренней сети и общедоступный IP-адрес 212.18.123.123. Каждый из этих внутренних компьютеров теоретически может быть доступен через 212.18.123.123:2001, 212.18.123.123:2002 и 212.18.123.123:2003.

Это широко известно как преобразование адреса порта (PAT), одноадресный NAT и мультиплексированный NAT на уровне порта.

Статический NAT

Наконец, давайте поговорим о статическом NAT.

Внутренние сети, такие как домашняя или офисная сеть, не используют ту же систему IP-адресации, которая используется в общедоступном Интернете. Любое сетевое устройство эффективно имеет два IP-адреса. Первый является частным, и он доступен только внутри этой сети. Второй — тот, который доступен извне.

Статический NAT позволяет создать прямую прямую связь между частным IP-адресом и статическим общедоступным IP-адресом.

Это, конечно, никак не повлияет на исчерпание адресов IPv4. Но это не относится к делу. Например, если вы хотите подключить веб-сервер к Интернету, вам нужно убедиться, что его IP-адрес остается прежним. Статический NAT позволяет вам сделать это.

Но как насчет IPv6?

Мир быстро переходит от IPv4 с его жестко ограниченным пространством к IPv6 , который может поддерживать теоретически 2 ^ 128 IP-адресов.

Чтобы адекватно выразить чудовищность этого, это эквивалент 340 ундециллионов, 282 дециллионов, 366 ниллионов, 920 октиллионов, 938 септиллионов, 463 секстиллионов, 463 квинтиллионов, 374 квадриллионов, 607 триллионов, 431 млрд, 768 миллионов, 211 тысяч и 456.

физ-ipv6

Это много IP-адресов.

Итак, имея это в виду, нужна ли нам трансляция сетевых адресов, учитывая, что существует избыток доступных IP-адресов, которые почти наверняка никогда не будут исчерпаны?

Ну, NAT поставляется с некоторыми другими ключевыми преимуществами. Возможно, наиболее очевидным является тот факт, что он непреднамеренно действует как «брандмауэр». для любых систем за маршрутизатором. Любые службы, работающие из этой сети (будь то частный файловый сервер или частный веб-сервер, на котором работает вики), недоступны за пределами этой сети.

Проще говоря, NAT значительно повышает безопасность любой системы, стоящей за ним.

Вывод

NAT — это якобы сухая технология, которую почти невозможно понять. Но не позволяйте этому обмануть вас. Без этого Интернет выглядел бы кардинально иначе.

Есть мысли? Дай мне знать. Оставьте мне комментарий ниже, и мы будем общаться.

Изображение предоставлено: IPv6-IPv4 от Abode of Chao

Похожие посты
Объяснение технологий

Как работает жесткий диск? [Технология объяснила]

Объяснение технологий

Что такое программное обеспечение с открытым исходным кодом? [MakeUseOf Объясняет]

Объяснение технологий

Разрешения графического дисплея - что означают цифры? [MakeUseOf Объясняет]

Объяснение технологий

Как переформатировать внешний жесткий диск, не теряя на нем все