Выгрузка arp для режима пробуждения что это
Перейти к содержимому

Выгрузка arp для режима пробуждения что это

Записки IT специалиста

Используем режим ARP reply-only для повышения безопасности сети на оборудовании Mikrotik

  • Автор: Уваров А.С.
  • 19.11.2021

mikrotk-arp-reply-only-000.pngБезопасность небольших сетей — больная тема для большинства администраторов, особенно если это сети небольших филиалов, торговых точек и т.д. и т.п. Обычно ситуация усугубляется ограниченными бюджетами на оборудование и отсутствием самого понятия информационной безопасности у пользователей таких сетей. Вполне распространённой практикой является свободный доступ к сетевому оборудованию и гуляющий по рукам пароль Wi-Fi. Что можно сделать в такой ситуации? Довольно многое, если у вас на руках оборудование Mikrotik, а как — расскажем в данной статье.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Прежде всего сформулируем задачу. Основную проблему небольших сетей можно выразить одной фразой — «проходной двор». Сетевое оборудование часто располагается, где придется и физический доступ к нему никем не контролируется, также плохо все и с политиками безопасности, очень часто сотрудники просто не понимают, что плохого в том, если они «поделятся» Wi-Fi с соседями по офисному центру.

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

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

Протокол IP, являясь протоколом сетевого уровня (L3), решает вопросы доставки пакетов между сетями, внутри же сети взаимодействие между узлами происходит на канальном уровне — L2. Для того, чтобы отправить кадр, а сети Ethernet оперируют именно кадрами, необходимо знать физический адрес (MAC) узла назначения. Но заголовки IP-пакета содержат только IP-адреса, как быть? Использовать протокол ARP, позволяющий получить MAC-адрес зная IP-адрес узла.

Протокол достаточно прост, узел, который хочет узнать MAC-адрес другого узла отправляет широковещательный запрос «у кого адрес 192.168.0.х ответьте 192.168.0.y«, этот запрос получают все узлы, но отвечает только обладатель адреса «я 192.168.0.х, мой адрес 00:11:22:33:44:55«.

mikrotk-arp-reply-only-001.png

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

Как это может нам помочь? У Mikrotik есть несколько режимов работы с протоколом ARP, один из них — reply-only — подразумевает что устройство не делает ARP-запросов, а отвечает только тем узлам, данные о которых занесены в ARP-таблицу вручную. Проще говоря, с данной настройкой роутер будет взаимодействовать только с теми устройствами, которые явно укажет администратор.

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

Но начнем мы с того, что просто настроим сеть обычным образом. Теперь, если заглянуть в IP — DHCP Server — Leases — то мы увидим выданные узлам сети IP-адреса, а в IP — ARP можем увидеть ARP-таблицу.

mikrotk-arp-reply-only-002.png

Обратите внимание, что содержимое ARP-таблицы отличается от списка выданных адресов, к примеру в ней присутствует адрес 192.168.111.2 — это устройство со статически настроенным адресом, но так как оно взаимодействовало с роутером записи о нем попали в ARP-таблицу.

Итак, сеть настроена, подключенные устройства отображаются в указанных выше таблицах. Это хорошо. Для чего мы так поступили? Чтобы не заполнять руками данные для привязки устройств к DHCP-серверу и таблице ARP. Начнем с DHCP, выбираем нужный нам узел и в меню правой кнопки мыши нажимаем Make Static.

mikrotk-arp-reply-only-003.png

Выполнив данное действие для всех известных узлов переведем DHCP-сервер в режим статического пула, т.е. выдачи адресов только указанным узлам. Для этого перейдем в IP — DHCP Server — DHCP и откроем настройки экземпляра сервера, в нем изменим настройку Address Pool на static-only.

mikrotk-arp-reply-only-004.png

Половина дела сделана, теперь идем в IP — ARP и выполняем аналогичную операцию для записей известных узлов, точно также делаем для них Make Static, при этом не забываем про записи узлов со статическими адресами.

mikrotk-arp-reply-only-005.png

Выполнив эти действия, перейдем в свойства интерфейса, смотрящего в локальную сеть, скорее всего это будет сетевой мост (bridge), и изменим опцию ARP на reply-only.

mikrotk-arp-reply-only-006.png

Обратите внимание, как изменилась после этого ARP-таблица, из нее пропали все динамические записи для данного интерфейса.

mikrotk-arp-reply-only-009.png

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

mikrotk-arp-reply-only-007.png

Как видим, достаточно простые настройки позволили нам существенно поднять безопасность сети, но как быть, если появится новый узел? Вам придется вручную добавить записи для него на DHCP-сервер и в ARP-таблицу.

mikrotk-arp-reply-only-008.png

Либо можно включить опцию Add ARP For Leases в настройках DHCP-сервера и тогда ARP-таблица будет заполняться автоматически для выданных адресов.

mikrotk-arp-reply-only-010.png

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

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Дополнительные материалы:

Mikrotik
The Dude

Помогла статья? Поддержи автора и новые статьи будут выходить чаще:

Поддержи проект!

Или подпишись на наш Телеграм-канал: Подпишись на наш Telegram-канал

Протокол ARP и «с чем его едят» (дополнено)

Спасибо хабраюзеру hardex за публикацию первоначальной статьи, а также всем, кто плюсанул в карму для возможности моей собственноручной публикации. Теперь дополненная версия с учетом пожеланий и дополнений. Добро пожаловать под кат.

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

Как известно, адресация в сети Internet представляет собой 32-битовую последовательность 0 и 1, называющихся IP-адресами. Но непосредственно связь между двумя устройствами в сети осуществляется по адресам канального уровня (MAC-адресам).

Так вот, для определения соответствия между логическим адресом сетевого уровня (IP) и физическим адресом устройства (MAC) используется описанный в RFC 826 протокол ARP (Address Resolution Protocol, протокол разрешения адресов).

ARP состоит из двух частей. Первая – определяет физический адрес при посылке пакета, вторая – отвечает на запросы других станций.

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

Пример ARP-таблицы.

192.168.1.1 08:10:29:00:2F:C3
192.168.1.2 08:30:39:00:2F:C4

Слева – IP-адреса, справа – MAC-адреса.

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

Записи ARP-таблицы бывают двух вид видов: статические и динамические. Статические добавляются самим пользователем, динамические же – создаются и удаляются автоматически. При этом в ARP-таблице всегда хранится широковещательный физический адрес FF:FF:FF:FF:FF:FF (в Linux и Windows).

Создать запись в ARP-таблице просто (через командную строку):

arp –s <IP-адрес> <MAC-адрес>

Вывести записи ARP-таблицы:

После добавления записи в таблицу ей присваивается таймер. При этом, если запись не используется первые 2 минуты, то удаляется, а если используется, то время ее жизни продлевается еще на 2 минуты, при этом максимально – 10 минут для Windows и Linux (FreeBSD – 20 минут, Cisco IOS – 4 часа), после чего производится новый широковещательный ARP-запрос.

Сообщения ARP не имеют фиксированного формата заголовка и при передаче по сети инкапсулируются в поле данных канального уровня

Формат сообщения ARP.

  • тип сети (16 бит): для Ethernet – 1;
  • тип протокола (16 бит): h0800 для IP;
  • длина аппаратного адреса (8 бит);
  • длина сетевого адреса (8 бит);
  • тип операции (16 бит): 1 – запрос, 2 — ответ;
  • аппаратный адрес отправителя (переменная длина);
  • сетевой адрес отправителя (переменная длина);
  • аппаратный адрес получателя (переменная длина);
  • сетевой адрес получателя (переменная длина).

А вот как происходит определение маршрута с участием протокола ARP.

Пусть отправитель A и получатель B имеют свои адреса с указанием маски подсети.

  1. Если адреса находятся в одной подсети, то вызывается протокол ARP и определяется физический адрес получателя, после чего IP-пакет инкапсулируется в кадр канального уровня и отправляется по указанному физическому адресу, соответствующему IP-адресу назначения.
  2. Если нет – начинается просмотр таблицы в поисках прямого маршрута.
  3. Если маршрут найден, то вызывается протокол ARP и определяется физический адрес соответствующего маршрутизатора, после чего пакет инкапсулируется в кадр канального уровня и отправляется по указанному физическому адресу.
  4. В противном случае, вызывается протокол ARP и определяется физический адрес маршрутизатора по умолчанию, после чего пакет инкапсулируется в кадр канального уровня и отправляется по указанному физическому адресу.

Главным достоинством проткола ARP является его простота, что порождает в себе и главный его недостаток – абсолютную незащищенность, так как протокол не проверяет подлинность пакетов, и, в результате, можно осуществить подмену записей в ARP-таблице (материал для отдельной статьи), вклинившись между отправителем и получателем.

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

Существуют еще протоколы InARP (Inverse ARP), который выполняет обратную функцую: по заданному физическому адресу ищется логический получателя, и RARP (Reverse ARP), который схож с InARP, только он ищет логический адрес отправителя.

В целом, протокол ARP универсален для любых сетей, но используется только в IP и широковещательных (Ethernet, WiFi, WiMax и т.д.) сетях, как наиболее широко распространенных, что делает его незаменимым при поиске соответствий между логическими и физическими адресами.

В чем разница между привязкой ARP и резервированием адреса DHCP?

в моем TL-WR1043ND у меня есть эти функции, и оба они соединяют IP-адрес с MAC-адресом. Какая разница?

Я читал, что ARP по соображениям безопасности, другие говорят, что это для Wake-on-LAN. Я также читал, что нет никакой разницы, но в таком случае, почему у нас есть оба?

2 ответов

«DHCP адрес бронирования » конкретно означает, что маршрутизатор всегда будет предложение данный адрес всякий раз, когда хозяин просит использование протокола автоматической настройки DHCP.

однако, только DHCP предложения были сделаны статическими, но IP→MAC соседний кэш маршрутизатора (он же ARP кэш) по-прежнему заполняется динамически с помощью ARP.

значение, если обойти DHCP и вручную настройте другой хост для использования зарезервированного адреса, он будет работать. Как только «ИС → старый Mac» запись кэша истекает, то маршрутизатор посылает новый запрос АРП, узнает новый MAC-адрес, добавляет «ИС → новый Mac» кэш ARP, и пакеты идут на «нового» хозяина.

«ARP привязка » не обязательно повлияет на DHCP, но он делает добавить фиксированный IP→MAC запись в соседний кэш маршрутизатора.

Если другой хост пытается используйте тот же IP-адрес, маршрутизатор этого не узнает. Он будет доверять фиксированной привязке IP→MAC и всегда будет отправлять пакеты на» связанный » MAC-адрес, даже если хост фактически находится в автономном режиме.

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

до сих пор привязка ARP в основном звучит как функция безопасности – она частично избегает атак «подмены ARP» и работает, даже если DHCP полностью отключен.

в то же время, однако, это может вызвать еще большую путаницу, если маршрутизатор думает, что IP-адрес X был привязан к MAC X, но остальная часть локальной сети узнала, что это на самом деле MAC Y.

это также не очень безопасно, так как MAC-адреса Ethernet тривиально изменить или подделать. Для того, чтобы сделать его полезным, все коммутаторы в локальной сети также потребуется» липкий MAC-адрес » функция включена.

нет несколько полезно для Wake-on-LAN, хотя, вероятно, не намного лучше, чем просто транслировать пакет Magic wake.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *