Назад | Перейти на главную страницу

Что такое строгий, умеренный и открытый NAT?

Параметры NAT на домашних маршрутизаторах часто настраиваются как строгий. Что это значит? Что умеренный или открыто делать? Переадресация портов / доступ к DMZ работает правильно на строгий так зачем возиться с двумя другими?

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

Пожалуйста, может кто-нибудь пролить свет.

Прежде всего важно знать, как работает трансляция сетевых адресов (NAT). Вы устанавливаете соединение с сервером в Интернете. На самом деле вы отправляете пакеты на свой маршрутизатор, выходя с вашего компьютера на какой-то случайно выбранный порт:

Your computer        Router
+------------+     +-----------+
|            |     |           |
| port 31746 o====>o           |
|            |     |           |
+------------+     +-----------+

Ваш маршрутизатор, в свою очередь, устанавливает соединение с сервером, с которым вы хотите поговорить. Он говорит, что это собственный случайно выбранный порт:

                     Router            www.google.com
                   +-----------+     +----------------+
                   |           |     |                |
                   | port 21283o====>o port 80        |
                   |           |     |                |
                   +-----------+     +----------------+

Когда веб-сервер Google отправляет вам информацию, он фактически отправляет ее обратно на ваш маршрутизатор (поскольку ваш маршрутизатор - это тот, кто находится в Интернете):

                     Router            www.google.com
                   +-----------+     +----------------+
                   |           |     |                |
                   | port 21283o<====o port 80        |
                   |           |     |                |
                   +-----------+     +----------------+

Пакет прибывает на ваш роутер на порт 21283 из www.google.com. Что с этим делать роутеру?

В этом случае маршрутизатор записал вас, и трафик, который он отправил www.google.com:80 из порта 21283 от вашего имени. Таким образом, маршрутизатор будет ретранслировать пакет на ваш компьютер:

Your computer        Router
+------------+     +-----------+
|            |     |           |
| port 31746 o<====o           |
|            |     |           |
+------------+     +-----------+

Открытый NAT

В открыто NAT, любая машина в Интернете может отправлять трафик на порт вашего маршрутизатора 21283, и пакет будет отправлен вам обратно:

Your computer        Router            
+------------+     +-----------+     {www.google.com:80
|            |     |           |     {www.google.com:443
| port 31746 o<====o port 21283o<===={serverfault.com:80
|            |     |           |     {fbi.gov:32188
+------------+     +-----------+     {botnet.cn:11288

Закрытый NAT

Закрытые нац более строгие. Он не будет пропускать ничего, если только он не пришел с исходного адреса и порт, с которым вы хотели поговорить, т.е. www.google порт 80:

Your computer        Router            
+------------+     +-----------+     {www.google.com:80
|            |     |           |     | (rejected) www.google.com:443
| port 31746 o<====o port 21283o<====+ (rejected) serverfault.com:80
|            |     |           |       (rejected) fbi.gov:32188
+------------+     +-----------+       (rejected) botnet.cn:11288

Умеренный NAT

Умеренный NAT - это смесь, при которой ваш маршрутизатор будет принимать любой трафик от любого порт, но только из того же хозяин:

Your computer        Router            
+------------+     +-----------+     
|            |     |           |     {www.google.com:80
| port 31746 o<====o port 21283o<===={www.google.com:443
|            |     |           |       (rejected) serverfault.com:80
+------------+     +-----------+       (rejected) fbi.gov:32188
                                       (rejected) botnet.cn:11288

Это один набор определений. Другой:

  • Открыто: позволяет компьютерам в локальной сети использовать UPNP для открытия портов
  • Умеренный: некоторые форварды портов созданы и работают
  • Закрыто: нет статической переадресации портов

Но терминология действительно расплывчата.

Смотрите также

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

В реальном, чисто техническом мире сетей есть NAT и PAT, и они могут быть входящими или исходящими.

Потребительские маршрутизаторы часто имеют настройку IP "DMZ", которая отправляет все, предназначенное для общедоступного IP-адреса вашего маршрутизатора, прямо на частный IP-адрес вашего ПК. Я даже не могу сказать, насколько это опасно. Игровые компании должен по крайней мере, опубликуйте список IP-адресов серверов, чтобы вы могли перенаправлять трафик прямо на свой компьютер, только если он поступает с сервера в списке. Я думаю, что «умеренный NAT» - это то, что в сетевой индустрии называют PAT (преобразование адресов порта).

Если вы подключаетесь к серверу через порт 80, например, также имеется порт источника 4040. Ваш маршрутизатор прослушивает порт 4040 после того, как вы инициируете соединение. Если они попытаются связаться с вашим маршрутизатором через другой порт, таблица NAT маршрутизатора не имеет сопоставления для нового порта и отбрасывает его. Если вы разрешите переадресацию порта 4444 на определенный IP-адрес в конфигурации NAT / PAT, посторонние теперь могут инициировать соединения только на этом порту. Это менее опасно, чем сопоставление 1 к 1 и пропускание всего.

Игровые компании должны давать более точные рекомендации. Я даже видел предложения полностью отключить брандмауэр Microsoft, а не выдавать список портов. Если вы хотите стать частью ботнета или не возражаете против программ-вымогателей, продолжайте и следуйте их плохим указаниям.