Как NAT влияет на серверы устройств

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

Внимание

ВАЖНО: установить соединение - не то же самое, что использовать его!

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

Это как телефонный звонок: когда вы звоните другу, говорить могут оба, хотя позвонили именно вы. Это важно.

Установка входящего соединения


Лучше один раз увидеть:


an009: схема NAT 3

Как видно на схеме, если DS находится в локальной сети за маршрутизатором NAT, просто так установить соединение с ним извне нельзя. Порт никуда не перенаправлен, поэтому маршрутизатор отбрасывает пакет.

Есть три способа установить соединение с DS, находящимся за маршрутизатором NAT:

Способ 1: соединение устанавливает DS

Здесь соединение инициирует DS. Как сказано выше, установить исходящее соединение из-за маршрутизатора NAT несложно. Фактически это выглядит так:

an009: схема NAT 4

На что обратить внимание:

  • Режим маршрутизации DS, заданный настройкой Routing Mode (RM), должен быть Client Only или Client Or Server.
  • Адрес назначения DS, заданный настройкой Destination IP-address (DI), должен быть действительно доступен изнутри NAT, то есть не может находиться за другим маршрутизатором NAT. Он должен отвечать на ping. См. схему выше: удалённый хост (Remote Host) доступен напрямую и имеет «реальный» IP-адрес.
  • Рекомендуется задать в настройке Connection Mode (CM) значение Immediate (on Power-up), чтобы DS устанавливал исходящее соединение сразу после включения.

Способ 2: Tibbo LinkServer

Tibbo LinkServer создан именно для этой задачи. Что делать, если и удалённый хост, и DS (или несколько серверов устройств) находятся за маршрутизаторами NAT, а разрешить входящий доступ ни к одному из них нельзя?

В этом случае нужен посредник: сервер, до которого могут достучаться и удалённый хост, и DS, чтобы «встретиться» на нём. Такая схема выглядит так:

an009: служба связи LinkServer

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

Способ 3: настройка маршрутизатора для входящего доступа

Маршрутизатор NAT можно настроить так, чтобы он пропускал определённый входящий трафик и правильно направлял его на хост в своей локальной сети. Для этого используется перенаправление портов (Port Forwarding).