Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Sistema_TCP.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
603.97 Кб
Скачать

10. Arp: протокол преобразования адресов

Протокол ARP определен в документе RFC826.

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



13 Это не касается двухточечных соединений, где получатель иногда подразумевается неявно.

516 Часть II. Работа в сети

ARP (Address Resolution Protocol — протокол преобразования адресов) определяет, какой аппаратный адрес связан с тем или иным IP-адресом. Этот протокол можно применять в сетях любых типов, которые поддерживают широковещательный режим, но чаще всего его рассматривают в контексте сетей Ethernet.

Когда компьютер А хочет послать пакет компьютеру Б, находящемуся в том же Ethemet-сегменте, он использует протокол ARP для нахождения аппаратного адреса Б. Если же компьютер Б расположен в другой сети, то компьютер А с помощью подсисте­ мы маршрутизации определяет IP-адрес маршрутизатора следующего перехода, а затем с помощью протокола ARP выясняет аппаратный адрес этого маршрутизатора. Так как в ARP применяются широковещательные пакеты, которые не могут выйти за пределы локальной сети14, этот протокол позволяет находить только адреса устройств, непосред­ ственно подключенных к той же сети.

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

Протокол ARP функционирует путем широковещательной рассылки пакетов пример­ но следующего содержания: “Знает ли кто-нибудь аппаратный адрес для 128.138.116.4?” Устройство, которое разыскивают, узнает свой IP-адрес и посылает ответ: “Да, это IP-адрес одного из моих сетевых интерфейсов, соответствующий Ethernet-адрес — 8:0:20:0:fb:6a”.

Исходный запрос включает IP- и Ethernet-адрес запрашивающей стороны, благодаря чему разыскиваемое устройство может ответить, не посылая собственный ARP-запрос. Это позволяет обоим компьютерам узнать адреса друг друга за один сеанс обмена па­ кетами. Другие компьютеры, “слышавшие” исходное широковещательное сообщение, посланное инициатором запроса, тоже могут записать информацию о его адресах.

Команда arp изучает и обрабатывает содержимое кеша ARP. Обычно она использу­ ется для добавления и удаления записей, но может также очищать всю таблицу и ото­ бражать ее. В частности, команда arp -а отображает содержимое кеша. Формат вывода может варьироваться.

Команда arp, как правило, применяется в целях отладки и при работе со специаль­ ным оборудованием. Например, если два узла сети имеют одинаковый IP-адрес, то на одном из них запись в ARP-таблице будет правильной, а на другом — нет. С помощью команды arp можно найти узел-нарушитель.

11. Dhcp: протокол динамического конфигурирования узлов

Протокол DHCP определен в документах RFC2131 и 2132.

Когда вы добавляете устройство или компьютер в сеть, то обычно получаете свой IP- адрес в локальной сети, настраиваете соответствующий маршрутизатор, заданный по умолчанию, и присоединяетесь к локальному серверу DNS. Все это за вас может сделать протокол DHCP (Dynamic Host Configuration Protocol — протокол динамического кон­ фигурирования узлов).

14 Маршрутизатор можно сконфигурировать так, чтобы он пропускал широковещательные па­ кеты в другие сети, но это, в принципе, неудачная идея. Необходимость пропускать широкове­ щательные пакеты является признаком неблагополучия в работе сети или неудачной архитектуры сервера.

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

К “арендуемым” параметрам относятся следующие:

• IP-адреса и сетевые маски;

• адреса шлюзов (стандартные маршруты);

• адреса DNS-серверов;

• имена компьютеров, на которых выполняется система Syslog;

• адреса серверов WINS, Х-серверов шрифтов, прокси-серверов и NTP-серверов;

• адреса серверов TFTP (для получения файла начальной загрузки) и десятки других (см. RFC2132).

• Экзотические параметры редко используются на практике.

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

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

Программное обеспечение DHCP

Организация ISC (Internet Software Consortium — консорциум разработчиков про­ граммного обеспечения для Интернета) поддерживает прекрасный открытый источник информации о протоколе DHCP. В настоящее время широко используются версии паке­ та IVS 2, 3 и 4, которые прекрасно выполняют основные функции. Версия 3 поддержи­ вает резервное копирование серверов DHCP, а версия 4 — протокол IPv6. Сервер, кли­ ент и агента ретрансляции (agent relay) можно загрузить с веб-сайта ics.org.

Все основные дистрибутивы системы Linux используют ту или иную версию пакета ISC, хотя его серверную часть, возможно, придется устанавливать явно. В системе Red Hat эта серверная часть называется dhcp, в системе Ubuntu — dhcp3-server, а в системе SUSE — dhcp-server.

Другие системы часто имеют собственные реализации протокола DHCP. К сожале­ нию, к этой категории относятся и все экземпляры системы UNIX.

Мы рекомендуем не вмешиваться в клиентскую часть протокола DHCP, поскольку эта часть кода относительно проста и поставляется заранее сконфигурированной и готовой к использованию. Изменение клиентской части протокола DHCP — непростая задача.

Однако если вам необходимо запустить DHCP-сервер, мы рекомендуем использовать пакет ISC, а не пакеты конкретных поставщиков. В обычной гетерогенной среде проце­ дура администрирования сильно упростится, если будет применяться единая стандарт­ ная реализация протокола DHCP. Пакет ISC — это надежное, открытое решение, без проблем инсталлируемое в большинстве систем UNIX.

518 Часть II. Работа в сети

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

Схема работы DHCP

Протокол DHCP — это расширение протокола ВООТР, который был придуман для того, чтобы бездисковые UNEX-станции могли загружаться по сети. Протокол DHCP не ограничивается этими параметрами, вводя понятие “аренды”.

DHCP-клиент начинает диалог с DHCP-сервером, посылая широковещательное со­ общение вида “помогите мне узнать, кто я”15. Если в локальной сети есть DHCP-сервер, он договаривается с клиентом об аренде IP-адреса и других сетевых параметров (сетевая маска, адреса сервера имен и стандартного шлюза). Если же такого сервера нет, то серверы других подсетей могут получить первоначальное широковещательное сообщение через осо­ бую часть программного обеспечения DHCP, которая называется агентом ретрансляции.

По истечении половины срока аренды клиент должен ее продлить. Сервер обязан отслеживать адреса, предоставленные в аренду, и сохранять эту информацию при пе­ резагрузке. Предполагается, что клиенты делают то же самое, хотя это не обязательно. Благодаря этому достигается максимальная стабилизация сетевой конфигурации. Тео­ ретически, все программное обеспечение должно быть готово к мгновенному измене­ нию сетевой конфигурации, но большая часть программного обеспечения по-прежнему необоснованно допускает, что сеть остается неизменной.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]