2

Мой сетевой адаптер на моем компьютере имеет маску подсети. Это только для его собственной информации? Или маска подсети добавляется в заголовки TCP/IP, чтобы помочь следующему устройству выполнить маршрутизацию? Я предполагаю, что это только для информации отдельного устройства. Спасибо за ваши ответы заранее!

2 ответа2

1

Ни IP, ни TCP не включают маску подсети в свои заголовки.

Маска подсети используется при получении трафика - если трафик появляется на проводе, который не находится в подсети, которой назначен интерфейс, он его отбросит. Если интерфейс находится в беспорядочном режиме, то весь трафик, который он получает, отправляется в стек TCP/IP.

ОС использует маску подсети, чтобы узнать, должен ли он направлять трафик непосредственно к IP-адресу назначения (если он находится внутри подсети) или к шлюзу (по умолчанию) (если это не так).

Поскольку сетевые адаптеры на аппаратном уровне традиционно отправляют и получают кадры Ethernet, а не IP-пакеты, я не думаю, что это обязательно является аппаратной функцией сетевой карты, хотя современные сетевые адаптеры имеют "TCP Offload Engines" (TOE), которые выполняют большую часть обработка, требуемая TCP на самой сетевой плате - они, вероятно, также фильтруются по подсетям в аппаратном обеспечении.

0

Маска сети, связанная с сетевым интерфейсом, используется в следующих ситуациях:

  • Обычно (но не обязательно) система маршрутизации автоматически создает маршрут к подсети интерфейса
  • Только IPv4: хост определяет, является ли пакет, полученный интерфейсом, широковещательным для собственной подсети (и должен обрабатываться как таковой).

Эти параметры подробно описаны в статье « Последствия несоответствия сетевой маски ».

Сама маска сети напрямую не влияет на то, должен ли хост отправлять пакет напрямую по адресу назначения или шлюзу; именно система маршрутизации отвечает за это решение (но, как сказано выше, маски сетей обычно используются для построения таблиц маршрутизации).

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