2011-01-22 4 views
1

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

ответ

2

Самый современный NAT/реализация фильтрации пакетов являются работоспособными. Это означает, что они имеют более широкую концепцию слова connection, чем более старые варианты без гражданства. Это позволяет им обрабатывать более сложные протоколы, которые используют дополнительные соединения (например, FTP), а также протоколы без подключения, такие как ICMP.

В случае ICMP-пакетов запросы echo содержат поле ID, которое сохраняется в ответе. Хотя его 16 бит несколько ограничительны, он позволяет в соединении с исходным IP-адресом из IP-заголовка иметь достаточно высокую степень доверия, на которую отвечает echo.

EDIT:

Что касается ориентации отдельных узлов за реализацией NAT, то есть вообще не возможно. Вы могли быть в состоянии:

  • Перенаправление всего трафика ICMP к одному внутреннему узлу следить только, что один хост.

  • Используйте байты данных «pad» в пакете запроса echo для предоставления своего идентификатора хоста. Например, опция -pping на некоторых системах Linux позволяет установить это поле. Это ни в коем случае не является стандартным.

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

+0

Да, это позволит решить исходящий эхо-запрос, где таблица nat может создавать сопоставление между внутренним IP-адресом отправителя и отправленным эхо-сообщением. однако я спрашивал о случае, когда вы хотите выполнить ping определенного хоста, который установлен за nat. в этом случае, как можно будет отличать один хост от другого? – David