Протоколы arp и rarp, dhcp

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

Протокол ARP (Address Resolution Protocol, Протокол распознавания адреса) предназначен для преобразования IP-адресов в MAC-адреса, часто называемые также физическими адресами.

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

Поиск по данному IP-адресу соответствующего Ethernet-адреса производится протоколом ARP, функционирующим на уровне доступа к среде передачи. Протокол поддерживает в оперативной памяти динамическую arp-таблицу в целях кэширования полученной информации. Порядок функционирования протокола следующий.

С межсетевого уровня поступает IP-дейтаграмма для передачи в физический канал (Ethernet), вместе с дейтаграммой передается, среди прочих параметров, IP-адрес узла назначения. Если в arp-таблице не содержится записи об Ethernet-адресе, соответствующем нужному IP-адресу, модуль arp ставит дейтаграмму в очередь и формирует широковещательный запрос. Запрос получают все узлы, подключенные к данной сети; узел, опознавший свой IP-адрес, отправляет arp-ответ (arp-response) со значением своего адреса Ethernet. Полученные данные заносятся в таблицу, ждущая дейтаграмма извлекается из очереди и передается на инкапсуляцию в кадр Ethernet для последующей отправки по физическому каналу.

ARP-запрос или ответ включается в кадр Ethernet непосредственно после заголовка кадра.

Форматы запроса и ответа одинаковы и отличаются только кодом операции (Operation code, 1 и 2 соответственно). Несмотря на то, что ARP создавался специально для Ethernet, этот протокол может поддерживать различные типы физических сред (поле “Hardware type (Тип физической среды)”, значение 1 соответствует Ethernet), а также различные типы обслуживаемых протоколов (поле “Protocol type (Тип протокола)”, значение 2048 соответствует IP). Поля H-len и P-len содержат длины физического и “протокольного” адресов соответственно, в октетах. Для Ethernet H-len=6, для IP P-len=4.

протоколы arp и rarp, dhcp - student2.ru

Рис. 52. Форматы запроса и ответа ARP

Поля “Source hardware address” и “Source protocol address” содержат физический (Ethernet) и “протокольный” (IP) адреса отправителя. Поля “Target hardware address” и “Target protocol address” содержат соответствующие адреса получателя. При посылке запроса поле “Target hardware address” инициализируется нулями, а в поле “Destination (Адрес назначения)” заголовка Ethernet-кадра ставится широковещательный адрес.

Proxy ARP. ARP-ответ может отправляться не обязательно искомым узлом, вместо него это может сделать другой узел. Такой механизм называется proxy ARP.

протоколы arp и rarp, dhcp - student2.ru

Рис. Proxy ARP

Рассмотрим пример. Удаленный хост А подключается по коммутируемой линии к сети 194.84.124.0/24 через сервер доступа G. Сеть 194.84.124.0 на физическом уровне представляет собой Ethernet. Сервер G выдает хосту А IP-адрес 194.84.124.30, принадлежащий сети 194.84.124.0. Следовательно, любой узел этой сети, например, хост В, полагает, что может непосредственно отправить дейтаграмму хосту А, поскольку они находятся в одной IP-сети.

IP-модуль хоста В вызывает ARP-модуль для определения физического адреса А. Однако вместо А (который, разумеется, откликнуться не может, потому что физически не подключен к сети Ethernet) откликается сервер G, который и возвращает свой Ethernet-адрес как физический адрес хоста А. Вслед за этим В отправляет, а G получает кадр, содержащий дейтаграмму для А, которую G отправляет адресату по коммутируемому каналу.

Протокол DHCP

Протокол Dynamic Host Configuration Protocol (DHCP) Основным назначением DHCP является динамическое назначение IP-адресов. Однако, кроме динамического, DHCP может поддерживать и более простые способы ручного и автоматического статического назначения адресов.

В ручной процедуре назначения адресов активное участие принимает администратор, который предоставляет DHCP-серверу информацию о соответствии IP-адресов физическим адресам или другим идентификаторам клиентов. Эти адреса сообщаются клиентам в ответ на их запросы к DHCP-серверу.

При автоматическом статическом способе DHCP-сервер присваивает IP-адрес (и, возможно другие параметры конфигурации клиента) из пула наличных IP-адресов без вмешательства оператора. Границы пула назначаемых адресов задает администратор при конфигурировании DHCP-сервера. Между идентификатором клиента и его IP-адресом по-прежнему, как и при ручном назначении, существует постоянное соответствие. Оно устанавливается в момент первичного назначения сервером DHCP IP-адреса клиенту. При всех последующих запросах сервер возвращает тот же самый IP-адрес.

При динамическом распределении адресов DHCP-сервер выдает адрес клиенту на ограниченное время, что дает возможность впоследствии повторно использовать IP-адреса другими компьютерами. Динамическое разделение адресов позволяет строить IP-сеть, количество узлов в которой намного превышает количество имеющихся в распоряжении администратора IP-адресов.

Протокол DHCP использует модель клиент-сервер. Во время старта системы компьютер-клиент DHCP, находящийся в состоянии "инициализация", посылает сообщение discover (исследовать), которое широковещательно распространяется по локальной сети и передается всем DHCP-серверам частной интерсети. Каждый DHCP-сервер, получивший это сообщение, отвечает на него сообщением offer (предложение), которое содержит IP-адрес и конфигурационную информацию.

Компьютер-клиент DHCP переходит в состояние "выбор" и собирает конфигурационные предложения от DHCP-серверов. Затем он выбирает одно из этих предложений, переходит в состояние "запрос" и отправляет сообщение request (запрос) тому DHCP-серверу, чье предложение было выбрано.

Выбранный DHCP-сервер посылает сообщение DHCP-acknowledgment (подтверждение), содержащее тот же IP-адрес, который уже был послан ранее на стадии исследования, а также параметр аренды для этого адреса. Кроме того, DHCP-сервер посылает параметры сетевой конфигурации. После того, как клиент получит это подтверждение, он переходит в состояние "связь", находясь в котором он может принимать участие в работе сети TCP/IP. Компьютеры-клиенты, которые имеют локальные диски, сохраняют полученный адрес для использования при последующих стартах системы. При приближении момента истечения срока аренды адреса компьютер пытается обновить параметры аренды у DHCP-сервера, а если этот IP-адрес не может быть выделен снова, то ему возвращается другой IP-адрес.

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

Контрольные вопросы:

  1. В чем состоят отличия задач, решаемых протоколами сетевого уровня в локальных и глобальных сетях?
 
 
 
 
 
  1. Чем объясняется лидирующая роль стека протоколов TCP/IP?
 
 
 
 
 
 
 
  1. Опишите порядок инкапсуляции данных в стеке TCP/IP.
 
 
 
 
 
  1. Сколько уровней имеет стек TCP/IP? Каковы их функции?
 
 
 
 
 
 
 
  1. Какие протоколы стека TCP/IP относятся к уровню межсетевого взаимодействия
 
 
 
 
  1. Какой из двух протоколов транспортного уровня является дейтаграммным?_______

_______

  1. В чем ненадежность протокола IP?
 
 
 
 
  1. Протоколы какого уровня не входят в стек TCP/IP, но регламентированы с точки зрения их использования? Приведите пример таких протоколов
 
 
 
 
  1. Могут ли быть обнаружены и откорректированы ошибки на сетевом уровне?_____

_______

  1. Чем занимается Служба доменных имен?
 
 
 
 
  1. Опишите порядок взаимодействия DND-сервера и DNS-клиента?
 
 
 
 
 
 
 
  1. В чем заключаются функции центра INIC?
 
 
 
 
 
  1. Сколько символов может содержать имя домена?­­­­­­­­­­­­­­ ­­­­­­­­­­­­_____________________________
  2. Какие домены 1-го уровня (трехбуквенные) Вы знаете?
 
 
 
 
  1. В чем функции протоколов транспортного уровня?
 
 
 
 
  1. Для чего на транспортном уровне используется номер порта?
 
 
 
  1. Опишите особенности диапазонов значений номеров портов.
 
 
 
 
  1. За счет применения каких процедур TCP обеспечивает надежную доставку данных между процессами?
 
 
 
 
  1. Приведите пример сокета для FTP-сообщения на IP-адрес класса C.
 
 
 
 
 
  1. Что означает номер сокета 0.0.0.0:0 при пассивном открытии сеанса?
 
 
 
 
 
  1. Поясните принцип работы метода скользящего окна.
 
 
 
 
 
 
  1. Поддерживает ли протокол TCP дуплексный режим передачи данных? _______
  1. В каких случаях оказывается выгодней использовать протокол UDP?
 
 
 
 
  1. Если протокол UDP не является протоколом, обеспечивающим надежную доставку данных, то означает ли это, что он не занимается подсчетом контрольной суммы дейтаграммы? Ответ поясните.
 
 
 
 
  1. Назовите функции протокола IP?
 
 
 
 
  1. Что такое IP-сеть?
 
 
 
  1. Какие функции выполняет в сети протокол ICMP?
 
 
 
 
  1. Поясните порядок осуществления ARP-запроса в локальной сети?
 
 
 
 
  1. Какие функции выполняет в сети протокол DHCP?
 
 
 
 

30. Приведите краткое описание протоколов семейства TCP/IP с расшифровкой аббревиатур.

Наши рекомендации