- •Данные
- •Заголовок
- •Концевик
- •Как показано на рисунке 1 кадр состоит из следующих полей:
- •Поле данных кадра Ethernet (ARP-пакет)
- •ARP-пакет содержит следующие поля:
- •Заголовок кадра Ethernet
- •Поле данных кадра Ethernet (ARP-запрос)
- •Заголовок кадра Ethernet
- •Поле данных кадра Ethernet (ARP-ответ)
- •2.3 Протокол ICMP
- •2.4 Протокол DHCP
- •2.5 Протокол FTP
- •Рисунок 13 - Внешний вид окна настроек процесса захвата
|
(6 байт) |
(6 байт) |
(2 |
|
(2 |
|
(6 байт) |
(4 байта) |
(6 байт) |
|
(4 байта) |
||||||
|
|
|
|
байта) |
|
|
байта) |
|
|
|
|
|
|
|
|||
|
Адрес |
Адрес |
Тип |
… |
Код |
Аппаратный |
Сетевой |
Аппаратн |
Сетевой адрес |
||||||||
|
проток |
|
|
операц |
адрес |
адрес |
ый адрес |
получателя |
|||||||||
назначения |
источника |
ола |
|
|
ии |
отправителя |
отправителя |
получате |
(Target Internet |
||||||||
(Destination) |
(Source) |
(Protoc |
|
|
(Opera |
(Sender |
(Sender |
ля |
|
Addr) |
|||||||
|
FF-FF-FF- |
00-02-44-63- |
|
|
|
||||||||||||
|
ol |
|
|
tion) |
Hardware |
Internet Addr) |
(Target |
192.168.0.145 |
|||||||||
|
FF-FF-FF |
D3-87 |
Type) |
|
|
00-01 |
|
Addr) |
192.168.0.147 |
Hardware |
|||||||
|
|
|
|
08-06 |
|
|
|
|
00-02-44-63- |
|
Addr) |
|
|
|
|
||
|
|
|
|
|
|
|
|
|
00-00-00- |
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
D3-87 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
00-00-00 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
Заголовок кадра Ethernet |
|
|
|
|
Поле данных кадра Ethernet (ARP-запрос) |
|
|||||||||
|
|
|
|
|
|
|
|||||||||||
Рисунок 6 - Широковещательная передача ARP-запроса компьютером A |
|||||||||||||||||
|
(6 байт) |
(6 байт) |
(2 |
|
(2 |
|
(6 байт) |
(4 байта) |
(6 байт) |
|
(4 байта) |
||||||
|
|
|
|
байта) |
|
|
байта) |
|
|
|
|
|
|
|
|||
|
Адрес |
Адрес |
Тип |
… |
Код |
Аппаратный |
Сетевой |
Аппаратн |
Сетевой адрес |
||||||||
|
проток |
|
|
операц |
адрес |
адрес |
ый адрес |
получателя |
|||||||||
назначения |
источника |
ола |
|
|
ии |
отправителя |
отправителя |
получате |
(Target Internet |
||||||||
(Destination) |
(Source) |
(Protoc |
|
|
(Opera |
(Sender |
(Sender |
ля |
|
Addr) |
|||||||
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
ol |
|
|
tion) |
Hardware |
Internet Addr) |
(Target |
192.168.0.147 |
||||||
00-02-44-63- |
00-80-48- |
Type) |
|
00-02 |
|
Addr) |
192.168.0.145 |
Hardware |
|||||||||
|
D3-87 |
B7-BD-73 |
08-06 |
|
|
|
|
00-80-48- |
|
Addr) |
|
|
|
|
|||
|
|
|
|
|
|
00-02-44- |
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
B7-BD-73 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
63-D3-87 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
Заголовок кадра Ethernet |
|
|
|
|
Поле данных кадра Ethernet (ARP-ответ) |
|
|||||||||
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Рисунок 7 - ARP-ответа компьютера B
2.2.2 Работа ARP протокола в случае, когда отправитель и получатель расположены в разных сетях
Пусть компьютер A с именем Vito и компьютер B с именем Maxx так же, как и в первом случае, находятся в одной сети класса C 192.168.0.0, не разделенной на подсети, но компьютер B подключен и к внешней сети и помимо своих обычных функций выполняет функции шлюза (маршрутизатора). Компьютер A хочет обратиться через внешнюю сеть к некоторому компьютеру C с IP-адресом 195.5.27.10, т.е. получатель находится в другой сети. На рисунке 8 приведена соответствующая иллюстрация.
8
Компьютер C (получатель)
IP-адрес: 195.5.27.10
Компьютер
A
Vito(отправи |
тель) |
MAC-адрес:00-02-44-63-D3-87 MAC-адрес: 00-80-48-B7-BD-
IP-адрес: 192.168.0.147 |
73 |
|
IP-адрес: 192.168.0.145 |
Компь ютер B
Maxx |
(шлюз) |
ARP-запрос |
ARP-ответ |
Рисунок 8 - Расположение отправителя и получателя в разных сетях
При обращении компьютера A к компьютеру C, например, при вводе на компьютере A команды ping –n 1 195.5.27.10, компьютер A действует следующим образом.
Сначала компьютер A определяет, в какой сети – локальной или удаленной – находится компьютер C. Для этого он “накладывает” стандартную маску подсети класса C 255.255.255.0 на свой IP-адрес 192.168.0.147 и получает результат 192.168.0.0.
Затем он “накладывает” ту же маску на IP-адрес компьютера-получателя 195.5.27.10 и получает результат 195.5.27.0. Т.к. результаты этих двух операций различны, компьютер A делает вывод о том, что компьютер C находится в другой сети и передачу данных нужно выполнить через шлюз (компьютер B).
Затем компьютер A должен послать кадр Ethernet с эхо-запросом, указав в заголовке вложенного в этот кадр пакета ICMP IP-адрес компьютера-получателя 195.5.27.10, а в заголовке кадра Ethernet – MAC-адрес шлюза, т.е. компьютера B (а не
MAC-адрес компьютера-получателя), т.к. сначала кадр по сети Ethernet должен достигнуть шлюза. Следовательно, компьютер A должен знать MAC-адрес шлюза, но в настройках TCP/IP компьютера указывается не MAC-адрес, а IP-адрес шлюза. Если компьютер A недавно обращался к шлюзу, то MAC-адрес шлюза может находиться в таблице ARP компьютера A. Если же компьютер A после начальной загрузки еще не обращался к шлюзу или обращался к нему давно и соответствующая динамическая запись соответствия “IP-адрес – MAC-адрес” уже удалена, то таблица ARP компьютера A не будет содержать MAC-адреса шлюза (если только он не введен туда администратором вручную). В этом случае компьютер A должен выяснить MAC-адрес шлюза с помощью протокола ARP.
Процесс выяснения компьютером A MAC-адреса шлюза (компьютера B) описан выше. После определения MAC-адреса шлюза компьютер A посылает эхо-запрос компьютеру C. Этот эхо-запрос поступает на компьютер B, который, выполняя функцию маршрутизатора, направляет эхо-запрос компьютеру C через внешнюю сеть.
При передаче данных от отправителя получателю, находящемуся в удаленной сети, в заголовке IP-пакета указывается IP-адрес получателя, а в заголовке кадра Ethernet указывается MAC-адрес не получателя, а MAC-адрес шлюза, через который
9
должны быть переданы данные. Аналогично, при поступлении на отправитель (компьютер А) ответных данных от получателя (компьютера C) через шлюз (компьютер В) в поле MAC-адреса источника заголовка кадра Ethernet указывается MAC-адрес не компьютера C, а MAC-адрес шлюза (компьютера В), а в поле IP-адреса источника заголовка IP-пакета указывается IP-адрес не шлюза В, а IP-адрес компьютера C.
2.2.3 Использование протокола ARP для проверки наличия в сети дублированного IP-адреса
Кроме установления соответствия между MAC-адресам и IP-адресом, протокол ARP выполняет еще одну важную функцию. При включении (загрузке) компьютера и при изменении его IP-адреса протокол ARP позволяет определить, имеются ли в локальной сети компьютеры с одинаковыми IP-адресами. Для этого при загрузке компьютера и после изменения его IP-адреса компьютер посылает ARP-запрос, в котором в качестве получателя пакета (поле сетевой адрес получателя) указывает свой собственный IP-адрес.
Такой ARP-запрос называется самообращенным (от слова gratuitous – “беспричинным”, т.е. не вызванным необходимостью последующей передачи данных, или “безвозмездным”, т.е. не требующим ответа). Компьютер, пославший самообращенный ARP-запрос, не ждет на него ответа. Если ответа на самообращенный ARP-запрос не поступает, значит, такого же IP-адреса, как у данного компьютера, в локальной сети больше нет. Если же какой-либо компьютер локальной сети отвечает на самообращенный ARP-запрос своим MAC-адресом, значит, в локальной сети уже есть компьютер с таким IP-адресом. В этом случае на экране компьютера, пославшего самообращенный ARP-запрос, и на экране компьютера, ответившего на этот запрос, выводятся сообщения об ошибке - “Конфликт IP-адреса с другой системой в сети”.
2.3 Протокол ICMP
Протокол межсетевых управляющих сообщений ICMP (Internet Control Message Protocol) входит с состав стека TCP/IP. Протокол ICMP используется для тестирования доступности узлов сети и представляет собой эхо-протокол (на посланный запрос должен быть получен ответ). ICMP протокол работает с двумя типами сообщений: эхо-запрос и эхо-ответ. Компьютер или маршрутизатор посылают по сети эхо-запрос, в котором указывают IP-адрес узла, доступность которого нужно проверить. Компьютер (маршрутизатор), который получает эхо-запрос, формирует и отправляет эхо-ответ и возвращает сообщение узлу - отправителю запроса. В запросе могут содержаться некоторые данные (контрольная сумма), которые должны быть возвращены в ответе. Так как эхо-запрос и эхо-ответ передаются по сети внутри IPпакетов (см. рис. 9), то их успешная доставка означает нормальное функционирование всей транспортной системы интерсети.
10
Рисунок 9 - Инкапсуляция (вложение) ICMP-сообщения в IP-датаграмму
Для отправки эхо-запросов и приема эхо-ответов используется утилита (программа) ping.
2.4 Протокол DHCP
Основным назначением DHCP является динамическое назначение IP-адресов. Однако, кроме динамического, DHCP может поддерживать и более простые способы ручного и автоматического статического назначения адресов.
При автоматическом статическом способе DHCP-сервер присваивает IP-адрес клиенту из пула (массива) наличных IP-адресов без вмешательства администратора. Границы пула (массива) назначаемых адресов задает администратор при конфигурировании DHCP-сервера. Между идентификатором клиента и присвоенным ему IP-адресом, как и при ручном назначении, существует соответствие. Оно устанавливается в момент первичного назначения сервером DHCP IP-адреса клиенту. При всех последующих запросах (на получение IP-адреса) сервер возвращает клиенту тот же самый IP-адрес.
При динамическом распределении адресов DHCP-сервер выдает адрес клиенту на ограниченное время, что дает возможность впоследствии повторно использовать этот IP-адреса другим компьютерами. Динамическое назначение адресов позволяет строить IP-сеть, количество узлов в которой, намного превышает количество имеющихся в распоряжении администратора IP-адресов.
DHCP обеспечивает надежный и простой способ конфигурации сети TCP/IP, гарантируя отсутствие конфликтов адресов за счет централизованного управления их распределением. Администратор управляет процессом назначения адресов с помощью параметра "продолжительности аренды" (lease duration), которая определяет, как долго компьютер может использовать назначенный IP-адрес, перед тем как снова запросить его от сервера DHCP в аренду.
Протокол DHCP использует модель клиент-сервер. Во время старта системы DHCP - клиент, находится в состоянии "инициализации" и посылает широковещательное сообщение discover (обнаружить) для поиска в сети DHCPсервера. DHCP-сервер, получив это сообщение, отвечает на него сообщением offer (предложение), которое содержит IP-адрес и конфигурационную информацию. DHCP - клиент, получив предложение от DHCP-сервера, переходит в состояние "запрос" и отправляет сообщение request (запрос) DHCP-серверу. DHCP-сервер посылает сообщение DHCP-acknowledgment (подтверждение), содержащее тот же IP-адрес, который уже был послан ранее на стадии исследования, а также параметр аренды для
11
этого адреса. Кроме того, DHCP-сервер посылает параметры сетевой конфигурации. После того, как клиент получит это подтверждение, он переходит в состояние "связь", находясь в котором он может принимать участие в работе сети TCP/IP. По истечения срока аренды IP-адреса компьютер пытается обновить параметры аренды у DHCPсервера, а если этот IP-адрес не может быть выделен снова, то компьютеру выделяется другой IP-адрес. На рисунке 10 приведен формат DHCP пакета.
Рисунок 10 - Формат DHCP пакета
Использование протокола DHCP кроме своих достоинств имеет ряд недостатков. Во-первых, это проблема согласования информационной адресной базы в службах DHCP и DNS (система доменных имен). DNS служит для преобразования символьных имен в IP-адреса, если IP-адреса, будут, динамически изменятся сервером DHCP, то эти изменения необходимо также динамически вносить в базу данных сервера DNS. Хотя протокол динамического взаимодействия между службами DNS и DHCP уже реализован некоторыми фирмами (так называемая служба Dynamic DNS), стандарт на него пока не принят.
Во-вторых, нестабильность IP-адресов усложняет процесс управления сетью. Системы управления, основанные на протоколе SNMP, разработаны с расчетом на статичность IP-адресов.
В-третьих, централизация процедуры назначения адресов снижает надежность системы: при отказе DHCP-сервера все его клиенты оказываются не в состоянии получить IP-адрес и другую информацию о конфигурации. Последствия такого отказа могут быть уменьшены за счет использования в сети нескольких серверов DHCP, каждый из которых имеет свой пул IP-адресов.
Для работы с протоколом DHCP в ОС “Windows” используется команда ipconfig, которая служит для отображения всех текущих параметров сети TCP/IP и обновления параметров DHCP и DNS. При вызове команды ipconfig можно использовать ряд параметров, например:
•/all - вывод полной конфигурации TCP/IP для всех адаптеров. Без этого параметра команда ipconfig выводит только IP-адреса, маску подсети и основной шлюз для каждого адаптера.
12
