2

Всякий раз, когда я размещаю сервер, я должен перенаправлять порты прослушивания сервера на моем устройстве NAT.

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

Почему это так?

3 ответа3

2

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

Для сервера пакет поступает в NAT извне, и нечего сказать, для какого внутреннего узла он предназначен. Там нет текущей таблицы соединений. Таким образом, вместо этого вам нужно определить правило, гласящее: "Новые запросы на подключение к порту 22 должны передаваться в этот ящик".

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

1

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

0

NAT блокирует входящие соединения и выпускает исходящие соединения. Как только соединение установлено, пакеты могут идти в любом направлении.

Если вы настроили сервер, вам придется иметь дело с NAT на вашем конце, если вы используете NAT. Если вы подключаетесь к серверу, им приходится иметь дело с NAT на их конце, если они используют NAT.

Если NAT заблокировал исходящие соединения (это не так, но предположим, что это так), вы не сможете получить доступ к Интернету.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .