Транспортный уровень модели OSI

Протокол ARP расшифровывается, как Address Resolution Protocol — протокол разрешения адресов. В сети обычно взаимодействуем с компьютерами с помощью IP-адресов, или с помощью доменных имен, которые службой DNS все равно преобразуются в IP-адреса.
Протокол ARP позволяет автоматически определить МАК-адрес компьютера по его IP-адресу. Протокол работает в режиме запрос-ответ.
Компьютер, который хочет узнать МАК-адрес по известному IP-адресу, направляет ARP запрос “У кого IP 192.168.10.43?” Запрос отправляется на широковещательный МАК-адрес (FF:FF:FF:FF:FF:FF).

И этот запрос получают все компьютеры в сети. Тот компьютер, который узнал в запросе свой IP-адрес подготавливает и отправляет ARP ответ. В ответ включается IP-адрес компьютера (IP:192.168.10.43) и его МАК-адрес (MAC: 54:BE:F7:88:15:47).

Отправитель ARP запроса получает ответ, извлекает из него МАК-адрес и использует его для передачи данных по технологии канального уровня.
ARP разрабатывался, как протокол общего назначения с возможностью применять его не только в Ethernet и не только для IP-адресов. Поэтому в начале ARP пакета идет служебная информация, которая позволяет определить с каким типом сетевого оборудования и с каким протоколом сетевого уровня мы работаем.

- Первое поле “тип сети”, говорит о том, какое оборудование мы используем в сети, 1 — соответствует Ethernet.
- Второе поле “тип протокола” в нем указывается протокол сетевого уровня 2048 означает IP.
- Дальше идет “длина локального адреса”, в нашем случае МАК-адреса 6 байт, “длина глобального адреса в нашем случае IP-адреса” 4 байта.
- Следующее поле код операции, 1 — соответствует ARP запросу, а 2 — ARP ответу.
- Затем идет полезная информация о локальных (1С:75:08:D2:49:45) и глобальных адресах (192.168.10.15). Указывается МАК-адрес и IP-адрес отправителя, для того, чтобы получатель знал, кому отправлять ответ.
- Глобальный адрес получателя (192.168.10.43).
- Локальный адрес получателя неизвестен (00:00:00:00:00:00)
Для чего используется ICMP?
Основная цель ICMP это отчетность об ошибках. При соединении двух девайсов в сети, если часть данных не доходит до адреса назначения, теряется или превышает допустимые таймауты - ICMP генерирует ошибки.
Второе, и, пожалуй, одно из самых популярных применений ICMP это утилиты ping и traceroute. Термин “пинговать" как - раз связан с протоколом ICMP и “пинговать" хост - означает отправлять ICMP пакеты с целью понять, отвечает ли на них целевое устройство.
