Опубликован: 04.07.2008 | Уровень: специалист | Доступ: платный | ВУЗ: Европейский Университет в Санкт-Петербурге
Лекция 3:

Настройка и обслуживание сетевых соединений

< Лекция 2 || Лекция 3: 12345 || Лекция 4 >

Анализ таблиц arp

Таблица маршрутизации показывает, через какие шлюзы и интерфейсы отправлять пакеты в те или иные IP-сети. В системах, работающих с протоколом IP, также всегда есть таблица соответствий IP-адресов MAC-адресам, т.е. внутренним адресам сетевых адаптеров. Эта таблица используется при пересылках пакетов в локальной сети; она называется таблицей протокола нахождения соответствий адресов (ARP – Address Resolution Protocol). Посмотреть таблицу вы можете с помощью команды arp (ключ -a нужен для показа всей таблицы):

bash-2.05# arp -a
Net to Media Table: IPv4
Device IP Address Mask Flags Phys Addr
------ --------------------- --------------- ----- -----------------
elxl0 hp5l 255.255.255.255 00:50:ba:03:b6:47
elxl0 baclan.q.spb.ru 255.255.255.255 00:60:b0:3c:99:05
elxl0 ip-119.q.spb.ru 255.255.255.255 00:10:5a:72:dd:9c
elxl0 192.168.5.72 255.255.255.255 00:e0:29:9b:79:cd
elxl0 lib.q.spb.ru 255.255.255.255 00:e0:29:9e:f3:3b
elxl0 sunny 255.255.255.255 SP 00:60:08:cb:3b:c0
elxl0 192.168.5.11 255.255.255.255 00:e0:29:44:66:08
elxl0 mask.q.spb.ru 255.255.255.255 00:e0:29:48:63:64
elxl0 192.168.1.29 255.255.255.255 00:e0:b0:5a:66:90
elxl0 192.168.5.225 255.255.255.255 00:10:5a:73:6c:6b
elxl0 192.168.5.208 255.255.255.255 00:e0:29:64:9e:e7
elxl0 192.168.5.183 255.255.255.255 00:e0:29:61:29:42
elxl0 192.168.5.158 255.255.255.255 00:e0:29:64:8f:b9
elxl0 BASE-ADDRESS.MCAST.NET 240.0.0.0 SM 01:00:5e:00:00:00

Рассматриваемая таблица соответствий динамически обновляется и содержит только те адреса, к которым происходили обращения в последнее время. Данные этой таблицы можно использовать для обнаружения несанкционированных подключений к сети или неожиданных замен сетевых карт в компьютерах. Впрочем, мало кто ведет учет MAC-адресов сетевых карт, и мы это уже обсуждали выше (вы не забыли про подругу?).

Протокол DHCP

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

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

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

Что касается сложности учета событий, то учет можно вести и по MAC-адресам сетевых карт. Это требует работы с командой arp и знания, в каких компьютерах какие сетевые адаптеры (в смысле – с какими именно MAC-адресами) установлены. Думаете, это легко? Вспомните, когда вас последний раз интересовал MAC-адрес чьей-нибудь машины! Если в последнюю неделю хоть один из них попался вам на глаза, то вы – везунчик. Расскажите об этом подруге, она будет удивлена, что кому-то интересны эти дурацкие адреса.

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

Таблица 3.1. Преимущества и недостатки DHCP
+ DHCP – DHCP
Не надо настраивать каждый компьютер в отдельности, системы Windows по умолчанию настраиваются как клиенты DHCP; при установке систем UNIX указать, что они – клиенты DHCP, тоже очень просто Если сервер DHCP недоступен, многие из компьютеров сети вообще не смогут начать работу, и через определенное время, связанное с политикой назначения адресов, все компьютеры окажутся "отрезанными" от сети
Все настройки делаются централизованно, при изменении одной настройки (например, адреса основного шлюза сети) нет нуждменять настройки на каждом компьютере Сбои DHCP труднее диагностировать, т.к. они проявляются в виде жалоб пользователей (причем неодновременных) на невозможность войти в сеть, а это может быть вызвано дюжинами причин
Можно забыть о настройке параметров сети всех компьютеров, кроме DHCP-сервера, навсегда, о них позаботится сервер DHCP Использование DHCP усложняет учет событий в сети: ведь в файлы протоколов заносятся IP-адреса компьютеров. Там, где адреса компьютерам выдаются динамически, один и тот же адрес может принадлежать разным компьютерам в разное время
Если подключение к сети физически доступно большому кругу лиц, то посторонний может подключиться к розетке в сети, и, даже не зная никаких настроек, сразу оказаться в общей сети

Настройка DHCP-сервера

DHCP-сервер, т.е. программа, которая принимает запросы от DHCP-клиентов и отвечает им, в Solaris носит название in.dhcpd. Для настройки параметров DHCP-сервера следует модифицировать таблицы dhcptab и dhcp_network. Первая определяет группы различных параметров (например, совокупность диапазона назначаемых адресов, адреса шлюза и сервера имен), вторая устанавливает соответствие между определенными клиентами DHCP и IP-адресами. Эту таблицу можно использовать для задания явно указанных адресов отдельным компьютерам в сети. Подробнее формат файлов таблиц описан в руководстве по dhcptab(4) и dhcp_network(4).

В Solaris DHCP-сервер выполняет также функции BOOTP-сервера (если это требуется) или может быть настроен как BOOTP-посредник (BOOTP-relay). Например, при старте програмы dhcpmgr последняя спрашивает, желаем ли мы настроить BOOTP-relay или DHCP-сервер:

Для комплексной настройки DHCP-сервера можно применять графическую программу dhcpmgr ( /usr/sadm/admin/bin/dhcpmgr ), которая предоставляет доступ ко всем необходимым параметрам DHCP-сервера и обладает функциональностью трех утилит управления DHCP-сервером: dhcpconfig, dhtadm и pntadm:

Настройка DHCP-клиента

Для того, чтобы система полагала некий сетевой интерфейс динамически настраиваемым через DHCP, достаточно команды

ifconfig имя_интерфейса dhcp start

После этого программа ifconfig автоматически вызовет демона dhcpagent, который занимается отправкой DHCP-запросов и настройкой интерфейса в соответствии с полученным ответом. Посмотреть параметры, полученные через dhcp, можно командой

ifconfig имя_интерфейса dhcp status

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

При работающей службе NWAM администратору или пользователю Solaris, начиная с версии 10, не следует беспокоиться о настройке интерфейса по протоколу DHCP – служба NWAM сделает это сама.

Трансляция адресов и фильтрация пакетов

"Трансляция" или "подстановка" адресов (NATnetwork address translation) широко распространена в таких системах UNIX, как Linux и FreeBSD. В Solaris до версии 9 включительно не было поставляемого в комплекте с системой пакета, который позволял бы выполнять трансляцию адресов.

Начиная с Solaris 10 в состав системы включен мощный пакет ipfilter, который может выполнять роль фильтра пакетов ("брандмауэра") и транслятора адресов. Программы этого типа называют как брандмауэрами (brandmauer), так и "файрволами" (firewall).

Особенностью ipfilter является то, что, в отличие от других популярных программ фильтрации пакетов, она выполняет проверку пакета на соответствие ВСЕМ правилам таблицы фильтрации, поэтому, если в таблице правил за более строгими идут менее строгие правила, к пакету будут применены менее строгие. Например, если запрещен входящий трафик с адреса 192.168.8.7, но разрешен входящий трафик из сети 192.168.8/25, то фактически пакеты с адреса 192.168.8.7 будут проходить сквозь фильтр. Подробнее о правилах фильтрации следует узнать из руководства по соответствующим пакетам.

Пакет ipfilter в Solaris основан на открытом продукте IPFilter. Продукт доступен не только для Solaris, страница IPFilter в сети – http://coombs.anu.edu.au/~avalon/ip-filter.html.

Для тех, кто использует старые версии Solaris, Sun Microsystems бесплатно предлагает пакет SunScreen с функциональностью фильтра пакетов, он доступен по адресу http://wwws.sun.com/software/securenet/lite/download.html.

Функции ipfilter

Фильтр пакетов может использоваться для решения трех задач:

  • фильтрации пакетов;
  • протоколирования пакетов и учета трафика;
  • трансляции адресов.

Схема фильтрации пакета показана на рис. 3.2. Рисунок взят из документации по Solaris по адресу http://docs.sun.com/app/docs/doc/816-4554/6maoq0247?a=view.

Пакет, принятый сетевым интерфейсом, вначале передается во входной фильтр. Там его ждет проверка и возможные изменения, если он попадает под действие правил, описанных в настройках фильтра. Пакет во входном фильтре проходит следующие этапы:

  • трансляция адреса (network address translation – если требуется изменить адрес источника пакета, это делается здесь);
  • протоколирование пакета (ip accounting);
  • проверка кэша фрагментов (fragment cache check) – если следующий пакет в потоке данных является фрагментом, и предыдущий пакет был разрешен к передаче фильтром, то фрагмент пакета также пропускается, минуя статическую таблицу и проверку правил фильтрации;
  • проверка состояния пакета (Packet State Check) – если ключевая фраза keep state включена в правило, все пакеты в указанной сессии пропускаются фильтром или блокируются, в зависимости от того, чего требует правило – разрешения передачи или блокировки;
  • проверка фильтром (Firewall Check) – входные и выходные правила могут быть настроены по отдельности, определяя, разрешено ли пакету войти в фильтр, быть переданным подпрограммам ядра Solaris для обработки в стеке TCP/IP или быть переданным системой в сеть.

Группы(Groups) – позволяют определить правила иерархически.

Функции(Function) – функция представляет собой действие, которое следует произвести с пакетом. Возможные варианты действий: block (блокировать), pass (разрешить передачу), literal, and send ICMP response (блокировать и послать отправителю сообщение о недоставке).

Короткая маршрутизация (Fast-route) – fast-route указывает фильтру пакетов, что не следует передавать пакет для обработки в стек IP, это вызовет уменьшение параметра TTL в пакете.

Аутентификация IP(IP Authentication) – пакет, прошедший аутентификацию, допускается к проверке правилами фильтра только единожды, чтобы избежать двойной обработки.

При выходе из входного фильтра пакет передается либо в ядро для последующей обработки, либо на выход для передачи через сетевой интерфейс. В выходном фильтре пакет проходит похожие стадии обработки (см. рис. 3.2)

Схема фильтрации пакетов фильтром ipfilter

увеличить изображение
Рис. 3.2. Схема фильтрации пакетов фильтром ipfilter
< Лекция 2 || Лекция 3: 12345 || Лекция 4 >
Александр Тагильцев
Александр Тагильцев

Где проводится профессиональная переподготовка "Системное администрирование Windows"? Что-то я не совсем понял как проводится обучение.

Анатолий Натрусов
Анатолий Натрусов
Россия
Виктор Саркисов
Виктор Саркисов
Россия, Нижний Новгород, НГТУ, 2001