2

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

Например:

  • ПК A находится в подсети 192.168.1.0/24 а B - в 192.168.2.0/24 .

  • A и B связаны с маршрутизатором C интерфейсами 192.168.1.1 , 192.168.2.1 .

При отправке пакета от A до B маршрутизатор отправляет пакет с помощью NAT(трансляция сетевых адресов)?

Если нет, как А и Б могли общаться друг с другом?

Я новичок в сети.

2 ответа2

3

При отправке пакета от A до B маршрутизатор отправляет пакет с помощью NAT(трансляция сетевых адресов)?

Обычно нет. Технически это возможно, но не обязательно - в этой ситуации не требуется NAT.

(Я предполагаю, что C действует как A и B как "шлюз по умолчанию".)

Если нет, как А и Б могли общаться друг с другом?

Попробуйте противоположный вопрос: почему NAT необходимо для некоторых видов связи?

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

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

2

На основании информации, представленной в вопросе, невозможно узнать, выполняет ли маршрутизатор NAT или нет. Тем не менее, можно использовать простой тест, чтобы определить, используется ли NAT:

Если вы можете успешно пропинговать ПК B с ПК A и наоборот, используя фактический IP-адрес каждого ПК, то маршрутизатор не выполняет NAT. (Это предполагает, что нет брандмауэров, блокирующих пинг, поэтому вам может потребоваться отключить любой, в том числе на ПК.)

И наоборот, если NAT используется, ПК "позади" NAT будет пинговать другой компьютер, но он не будет работать наоборот. Например, ПК A находится позади маршрутизатора, выполняющего NAT, он мог бы пропинговать B, но B не мог бы пропинговать A (используя фактический IP-адрес A). Это связано с тем, что NAT переводит (т.е. маскирует) IP-адрес ПК A, чтобы он выглядел так, как будто он имеет IP-адрес в той же подсети, что и ПК B. Это полезно, когда в подсети A много устройств, каждое из которых имеет свои IP-адрес, но у вас есть только один IP-адрес в подсети B (это может быть Интернет). NAT позволяет всем этим устройствам связываться с остальной частью сети / Интернет через один IP-адрес. Это широко используется для смягчения последствий исчерпания IP v4.

Если NAT не используется, то маршрутизатор просто делает то, что делают все маршрутизаторы ... он отправляет пакеты с ПК A, предназначенные для ПК B, с правильным интерфейсом, чтобы они достигли своего места назначения. Большинство маршрутизаторов имеют несколько интерфейсов, подключенных к различным сетям, как, например, может иметь место в организации, где несколько зданий имеют свои собственные сети, связанные центральным маршрутизатором.

Большинство "маршрутизаторов", которые соединяют две сети, в частности, ЛВС с Интернетом, в строгом смысле слова не являются действительными маршрутизаторами, а являются резидентными шлюзами.

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