1

Я знаю, что пакеты данных, отправляемые через Интернет, содержат IP-адрес источника и назначения, поэтому протокол может направлять данные в правильный пункт назначения и отслеживать адрес источника пакета.

Но как насчет адреса сетевой карты? Насколько я знаю, каждая сетевая карта имеет уникальный идентификационный номер. Это также передается с пакетом TCP/IP? И когда пакет получен в месте назначения, как IP-адрес сопоставляется с номером сетевой карты?

Другими словами.

Со стороны отправителя: хранит ли отправитель номер сетевой карты отправителя в отправляемых им IP-пакетах?

На стороне получателя: какой компонент сопоставляет IP-адрес с номером сетевой карты получателя при получении пакета? Например, в домашней сети модем / маршрутизатор сопоставляет IP-адрес назначения входящего пакета с номером сетевой карты и доставляет пакет непосредственно на эту сетевую карту?

Ссылка на документацию по этим темам будет очень полезна.

1 ответ1

4

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

Адрес NIC называется MAC и находится на уровне 2, тогда как IP-адрес находится на уровне 3. Адреса уровня 2 имеют смысл только в локальной сети - широковещательный домен. Как таковые, они не передаются за пределы локальной сети.

Как вы, вероятно, поняли, IP-пакет маршрутизируется через Интернет на основе IP-адреса. Когда пакет поступает на маршрутизатор, к которому IP-сеть назначения не подключена к одному из его интерфейсов, проверяется таблица маршрутизации, и пакет направляется в направлении маршрутизатора "в правильном направлении".

В конечном итоге пакет будет доставлен на ваш маршрутизатор, и IP-сеть назначения будет подключена к интерфейсу.

На этом этапе маршрутизация завершена, мы находимся в правильной сети - поэтому уровень 3 завершен, и теперь пакет должен быть передан на уровне 2 в локальной сети.

Таким образом, маршрутизатору необходимо выяснить MAC-адрес узла, который имеет соответствующий IP-адрес, для которого предназначен пакет. Для этого он выдает запрос arp , в котором говорится «у кого есть IP-адрес xxxx». Это транслируется по локальной сети, и тот, у кого есть IP-адрес, ответит "это я". Поскольку ответный пакет поступает с MAC-адреса рассматриваемой сетевой платы, маршрутизатор может затем переслать пакет на правильный MAC-адрес.

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