Задать вопрос
Наши специалисты ответят на любой интересующий вопрос по услуге
Иногда при разборе чужой сети требуется определить насколько правильно работает сеть и нет ли там чужих DHCP серверов.
Делается это довольно просто. Для этого можно использовать небольшую утилиту RogueChecker.
Скачиваем, запускаем, видим такое окошко:
Нажимаем кнопку “Detect Rogue Servers” и в верхнем окне получаем список всех серверов, которые отозвались.
Если же клиентский компьютер был введен в домен, то список авторизованных серверов появится в нижней части окна.
После первого поиска все найденные DHCP серверы будут считаться неизвестными. Утилита не сверяет найденные серверы со списком авторизованных в AD.
Если поставить галочку в столбце “Valid DHCP Servers” напротив нашего правильного сервера, то программа будет его считать авторизованным, и больше не будет рисовать красный кружочек с восклицательным знаком около него. Это сделано для удобства просмотра и поиска “левых” DHCP серверов в сети. Иконка в трее меняется, если обнаружен неизвестный DHCP сервер:
Также программу можно использовать для автоматического вылавливания периодически появляющихся DHCP серверов.
Для этого надо зайти во вкладку Configuration и установить настройки, как часто делать поиск DHCP серверов. В данном примере я поставил проверку на каждые 5 минут.
Также в этом окне можно выбрать через какие сетевые карты делать поиск серверов (при условии, что сетевых карт несколько в этом компьютере).
Источник
Заказать услугу
Оформите заявку на сайте, мы свяжемся с вами в ближайшее время и ответим на все интересующие вопросы.
Настройка обнаружения в сети неизвестного DHCP сервера и отправка уведомления в Telegram или на электронную почту. Отправляется имя DHCP интерфейса на котором обнаружен сервер, IP и MAC адреса неавторизованного устройства.
Иногда происходит ситуация, когда сотрудник подключает к локальной сети предприятия личный роутер, с включенным DHCP сервером, что может вызвать проблемы получения новых IP адресов устройств в локальной сети. Причем проблемы могут обнаруживаться не сразу, а когда истекает аренда IP адресов.
Для быстрого уведомления о появлении неавторизованного DHCP сервера в локальной сети используйте настройку Alerts в настройках DHCP сервера.
Статья на других языках:
?? — MikroTik Scripts: Discover Unknown DHCP Server on the Network
?? — Scripts MikroTik: Descubre un servidor DHCP desconocido en red
?? — Scripts MikroTik: Découverte d’un serveur DHCP inconnu sur le réseau
?? — MikroTik-Skripte: Erkennen Sie unbekannte DHCP-Server im Netzwerk
?? — MikroTik-scripts: Detectie van een onbekende DHCP-server op het netwerk
Создать предупреждение
Начальные данные:
- Interface: bridge1-lan — название интерфейса DHCP сервера;
- Valid Servers: 64:D1:54:52:6C:36 — MAC адрес интерфейса DHCP сервера (bridge1-lan);
- Alert Timeout: 10 минут — интервал проверки неавторизованного DHCP сервера и отправка уведомления.
Настраиваем предупреждение:
[IP] -> [DHCP Server] -> [Alerts] -> [+] -> [Interface: bridge1-lan] -> [Valid Servers: 64:D1:54:52:6C:36] -> [Alert Timeout: 00:10:00]
Я рекомендую в окне Alert вызывать скрипт проверки, а не размещать текст скрипта. Если скрипты размещаются в одном месте [System] -> [Scripts] это улучшает удобство управления устройством, чем размещение скриптов в определенных настройках устройства.
Код вызова скрипта:
/system script run DiscoverUnknownDHCPServer
Скрипт: Обнаружить неизвестный DHCP сервер и отправить сообщение в Telegram
Для отправки Telegram сообщения, я использую вызов функции — MikroTik Скрипты: Отправка сообщения в Telegram (функция).
Создаем скрипт:
[System] -> [Scripts] -> [+] -> [Name: DiscoverUnknownDHCPServer] -> [Policy: read, write, polisy, test]
Код скрипта:
# Find DHCP Alert
:local CurrentTime [/system clock get time];
:local MsgID [/log find where message ~"dhcp alert" time =$CurrentTime];
:local MsgText [/log get number=$MsgID message];
# Send Telegram Message
:local DeviceName [/system identity get name];
:local MessageText "F09F94B4 <b>$DeviceName: UNKNOWN DHCP SERVER FOUND! </b> Info: $CurrentTime $MsgText";
:local SendTelegramMessage [:parse [/system script get MyTGBotSendMessage source]];
$SendTelegramMessage MessageText=$MessageText;
Скрипт: Обнаружить неизвестный DHCP сервер и отправить сообщение на почту
Для отправки Telegram сообщения, я использую вызов функции — MikroTik Скрипты: Отправить письмо и файл на почту (функция)
Создаем скрипт:
[System] -> [Scripts] -> [+] -> [Name: DiscoverUnknownDHCPServer] -> [Policy: read, write, polisy, test]
В данном скрипте не используется отправка файла, поэтому параметру FileName присваивается пустое значение «».
Код скрипта:
# Find DHCP Alert
:local CurrentTime [/system clock get time];
:local MsgID [/log find where message ~"dhcp alert" time =$CurrentTime];
:local MsgText [/log get number=$MsgID message];
# Send Email
:local DeviceName [/system identity get name];
:local Time [/system clock get time];
:local Date [/system clock get date];
:local SendTo "mail@mail.com";
:local Subject "F09F94B4 CRITICAL: $DeviceName [$Date $Time] UNKNOWN DHCP SERVER FOUND!";
:local MessageText "$MsgText";
:local FileName "";
:local SendEmail [:parse [/system script get SendEmailFunction source]];
$SendEmail SendTo=$SendTo TextMail=$MessageText Subject=$Subject FileName=$FileName;
Скрипт в одну строку
Отправка уведомления о неизвестном DHCP сервере в Телеграм:
/tool fetch url="https://api.telegram.org/bot<BotToken>/sendMessage?chat_id=<GroupID>&text=Unknown DHCP server on interface: $interface (IP: $address, MAC:$"mac-address")" keep-result=no;
Отправка уведомления о неизвестном DHCP сервере на электронную почту:
/tool e-mail send to=dest_mail@mail.com server=[:resolve "smtp.mail.com"] port=465 start-tls=tls-only user="my_mail@mail.com" password="Pa$$woRD" from="my_mail@mail.com" subject="$[/system identity get name] UNKNOWN DHCP SERVER FOUND!" body="Unknown DHCP server on interface: $interface (IP: $address, MAC:$"mac-address")"
? Как обнаружить появление неизвестного DHCP сервера в локальной сети (проблема в небольших сетях) и отправить уведомление в Telegram или электронной почтой обсуждалось в этой статье . Я надеюсь, что быстрый способ узнать о появлении неавторизованного DHCP сервера в локальной сети, позволит вам отреагировать быстрее и облегчит вашу работу. Однако, если вы столкнетесь с каким-то проблемами при настройке, не стесняйтесь написать в комментариях. Я постараюсь помочь.
наличие двух серверов. при каждом запросе ip-адреса от клиента он будет получать его от того сервера, пакет от которого успел раньше прийти.
избежать конфликтов ip-адресов. при назначении вручную – вести список назначенных адресов, не выдавать пользователям прав на изменение ip-адресов. при назначении автоматическом – настроить DHCP-сервер (один), не выдавать пользователям прав на изменение ip-адресов, не допускать появления в сети других DHCP-серверов (защитить сетевые коммутаторы от постороннего доступа, использовать на коммутаторах DHCP-snooping, если поддерживается).
найти лишние DHCP-сервера. запустить на компьютере Wireshark. заставить компьютер переполучить ip-адрес (например, вытаскиванием патчкорда). проанализировать результат. если ответы на запрос пришли с разных MAC-адресов – посмотреть, какой MAC-адрес у правильного DHCP-сервера; остальные, следовательно, лишние. дальше их можно искать, если у вас управляемые коммутаторы, на них можно посмотреть, какому физическому порту коммутатора назначен MAC-адрес лишнего DHCP-сервера.
Иногда при разборе чужой сети требуется определить насколько правильно работает сеть и нет ли там чужих DHCP серверов.
Делается это довольно просто. Для этого можно использовать небольшую утилитку RogueChecker (см. аттач). Автор ее Subhash Badri. Основную страничку с утилитой можно посмотреть тут, скачать утилиту тут.
Скачиваем, запускаем, видим такое окошко:
Нажимаем кнопку “Detect Rogue Servers” и в верхнем окне получаем список всех серверов, которые отозвались.
Если же клентский компьютер был введен в домен, то список авторизованных серверов появится в нижней части окна.
После первого поиска все найденные DHCP серверы будут считаться неизвестными. Утилита не сверяет найденные серверы со списком авторизованных в AD.
Если поставить галочку в столбце “Valid DHCP Servers” напротив нашего правильного сервера, то программа будет его считать авторизованным, и больше не будет рисовать красный кружочек с восклицательным знаком около него. Это сделано для удобства просмотра и поиска “левых” DHCP серверов в сети. Иконка в трее меняется, если обнаружен неизвестный DHCP сервер:
Также программу можно использовать для автоматического вылавливания периодически появляющихся DHCP серверов.
Для этого надо зайти во вкладку Configuration и установить настройки, как часто делать поиск DHCP серверов. В данном примере я поставил проверку на каждые 5 минут.
Также в этом окне можно выбрать через какие сетевые карты делать поиск серверов (при условии, что сетевых карт несколько в этом компьютере).
Шаги
-
1
Определитесь с диапазоном IP-адресов, которые будете использовать. Необходимо использовать диапазон «частных» IP-адресов; в противном случае можно столкнуться с проблемами, связанными с неправильной маршрутизацией трафика в вашу сеть и из нее. Для простой локальной сети выберите IP-адрес 192.168.0.100, маску подсети 255.255.255.0 и размер пула адресов 50. В этом случае к сети можно подключить до 50 компьютеров.
-
2
В качестве IP-адреса компьютера установите 192.168.0.2 с маской подсети 255.255.255.0 (адрес в той же подсети, что и адреса в пуле, но не адрес в самом пуле).
-
3
-
4
Распакуйте скачанный архив и запустите файл tftpd32.exe.
-
5
Нажмите «Settings» (Настройки).
-
6
Перейдите на вкладку «DHCP» в окне «Settings».
-
7
В строке «IP pool starting address» (Начальный IP-адрес пула) введите адрес, который будет присвоен первому компьютеру DHCP-сервера (если не уверены, введите адрес 192.168.0.100).
-
8
Задайте размер пула адресов, который будет немного больше количества компьютеров и устройств, которые будут подключены к вашей сети (если сомневаетесь, укажите число 50).
-
9
Оставьте строку «Boot File» (Загрузочный файл) пустой.
-
10
Введите IP-адрес, присвоенный компьютеру (192.168.0.2), в строке «Def. Router (Opt 3)» (Маршрутизатор).
-
11
Если в сети есть DNS-сервер или он доступен компьютерам, подключенным к вашей сети, введите его IP-адрес в строке «WINS/DNS Server» (Сервер WINS/DNS). Если вы не знаете этот адрес, оставьте строку пустой.
-
12
Введите маску подсети в строке «Mask» (Маска). Если вы не знаете, что это такое, введите 255.255.255.0 (если только вводили и другие рекомендованные адреса, приведенные выше).
-
13
В строках «Domain Name» (Имя домена) и «Additional Option» (Дополнительные параметры) ничего не меняйте.
-
14
Нажмите «ОК». DHCP-сервер настроен.
Реклама
Советы
- Чтобы создать большую сеть, используйте Windows Server 2008 или Windows Server 2012.
- Если вы не знаете, как присвоить IP-адрес компьютеру с DHCP-сервером, воспользуйтесь одной из следующих ссылок:
- XP http://www.portforward.com/networking/static-xp.htm
- Windows 2000 http://support.microsoft.com/default.aspx?scid=kb;en-us;308199&sd=tech
- Чтобы компьютер запрашивал IP-адрес по DHCP, запустите команды «ipconfig /release» > «ipconfig /renew» (Windows 2000 и XP) или «winipcfg» (Windows 95, 98 и ME), в меню выберите свою сетевую карту, а затем нажмите «Release» (Удалить) > «Renew» (Обновить).
- В Windows 98SE, ME или XP можно пользоваться службой «Общий доступ подключения к Интернету», которая включает DHCP-сервер.
- Если DHCP-сервером пользоваться вместе с прокси-сервером, например, с AnalogX Proxy, вы получите бесплатную и гибкую альтернативу Windows ICS.
Реклама
Предупреждения
- Если вы не знаете, что такое пулы частных адресов и маски подсетей, либо найдите и изучите дополнительную информацию, либо вводите адреса, рекомендуемые в этой статье. Неправильные адреса могут привести к проблемам.
Реклама
Об этой статье
Эту страницу просматривали 42 801 раз.