Перейти к содержимому
InstagramYouTubeFacebook

Tutorial

Блокировка трафика по стране на MikroTik

Блокируйте трафик в выбранные страны и из них на роутерах MikroTik с помощью списков IPDeny и одного правила firewall drop.

Краткое содержание В MikroTik RouterOS нет встроенной кнопки «блокировать страну X», но географическую блокировку можно реализовать чисто и аккуратно с помощью зональных файлов IPDeny, Address List и одного правила firewall filter. Это руководство проводит через четыре шага: скачать список блоков страны, отформатировать его для RouterOS, импортировать через терминал Winbox и создать правило drop. Результат блокирует весь трафик в выбранную страну (или из неё) одним правилом и легко обновляется при изменении распределения IP.

Как заблокировать трафик страны на MikroTik?

Чтобы заблокировать трафик в конкретную страну на MikroTik, нужно собрать список адресов со всеми IP-блоками, выделенными этой стране, и добавить в firewall правило drop, которое сверяется со списком. RouterOS не предлагает кнопку «Блокировать страну X», но связка Address Lists и Firewall Filters даёт ту же функциональность одним правилом drop и списком, который вы обновляете раз в квартал.

Ключевая часть — источник данных. IPDeny публикует агрегированные зональные файлы по странам, обновляемые регулярно и бесплатно, поэтому вам не нужно поддерживать распределения IP самостоятельно. Рабочий процесс такой: скачать зональный файл, вставить его в таблицу, которая добавляет к каждой строке префикс команды RouterOS, вставить полученные команды в терминал роутера и добавить одно правило firewall filter, которое отбрасывает всё совпадающее со списком. Весь процесс занимает примерно пятнадцать минут на страну после первого раза.

Шаг 1: Получить блоки IP с IPDeny

Зональные файлы IPDeny — это агрегированные CIDR-блоки по странам, обновляемые по регулярному расписанию.

  1. Откройте ipdeny.com и перейдите в раздел IP Country Blocks.
  2. Найдите страну, которую хотите заблокировать.
  3. Скачайте зональный файл — обычно это .txt, где каждая строка содержит один CIDR-блок (например, 1.2.3.0/24).

Распределения IP со временем меняются: операторы передают блоки между регионами. Планируйте обновление списка раз в квартал, чтобы не блокировать новые легитимные IP и не пропускать переназначенные.

Страница блоков IP по странам IPDeny со скачиваемыми зональными файлами

Шаг 2: Отформатировать данные для RouterOS

Зональный файл содержит только сырые CIDR; роутер ожидает, что каждая строка будет полной командой RouterOS. Таблица справляется с форматированием аккуратно:

  1. Откройте Excel, Google Sheets или LibreOffice Calc.
  2. В столбец B вставьте список CIDR из зонального файла.
  3. В столбец A введите префикс команды для каждой строки: /ip firewall address-list add list=BlockedCountry address=
  4. В столбце C используйте формулу конкатенации: =A1 & B1
  5. Протяните формулу вниз по всем строкам.

Столбец C теперь содержит полный список команд RouterOS — по одной на CIDR-блок, готовых для вставки в роутер.

Таблица генерирует команды address-list RouterOS из зональных данных IPDeny

Шаг 3: Импортировать список адресов

  1. Скопируйте сгенерированные команды из столбца C.
  2. Откройте Winbox и подключитесь к роутеру MikroTik.
  3. Откройте окно New Terminal.
  4. Вставьте команды. Для большого зонального файла вставка может обрабатываться несколько секунд — дайте ей завершиться.

Проверьте импорт, открыв IP → Firewall → Address Lists. Вы должны увидеть тысячи записей под именем списка (BlockedCountry). Если число значительно меньше количества строк в зональном файле, проверьте форматирование таблицы — лишние пробелы или пропущенные префиксы вызывают незаметные сбои при вставке.

Шаг 4: Создать правило drop в firewall

Теперь скажите роутеру, что делать с трафиком, совпадающим со списком.

  1. Перейдите в IP → Firewall → Filter Rules.
  2. Нажмите +, чтобы создать новое правило.
Панель Filter Rules firewall MikroTik Winbox с кнопкой добавления правила

Вкладка General:

  • Chain: forward (трафик, проходящий через роутер, из LAN в интернет)
  • In. Interface: мост или интерфейс LAN
Вкладка General правила firewall с chain forward и выбранным интерфейсом LAN

Вкладка Advanced:

  • Dst. Address List: BlockedCountry

Вкладка Action:

  • Action: drop
Вкладка Action правила firewall с действием drop

Нажмите OK. Поднимите правило в начало списка фильтров firewall — обычно в начало chain forward, — чтобы оно обрабатывалось до любого правила accept all, которое иначе перехватило бы трафик раньше.

Чтобы заблокировать ещё и трафик из этой страны, создайте второе правило с Chain: input (для трафика, направленного к самому роутеру) или Chain: forward (для трафика, направленного в LAN) и задайте Src. Address List = BlockedCountry. Вместе эти два правила обеспечивают полную двунаправленную географическую блокировку.

Для дополнительных средств firewall и контроля доступа посмотрите наши руководства по настройке NAT на MikroTik и блокировке DNS через AdList на MikroTik.

Советы

  • Используйте разное имя address-list для каждой страны (BlockedCountry_CN, BlockedCountry_RU), когда блокируете несколько регионов. Это сильно упрощает аудит набора правил в будущем.
  • Запланируйте квартальный скрипт, который перекачивает зональные файлы и обновляет список адресов. Наборы правил «настроил и забыл» быстро устаревают по мере изменения распределений.
  • Логируйте отброшенный трафик в правиле firewall (на вкладке Action включите log с префиксом) первую неделю. Объём подскажет, действительно ли политика работает или молча ничего не блокирует.

Сделайте следующий шаг

Сопровождать списки блокировки по странам на одном MikroTik вполне реально с таблицей и квартальным напоминанием в календаре. Делать то же самое на десятках или сотнях роутеров — у каждого, возможно, со своими политиками по странам для разных клиентов — это место, где ручной подход разваливается.

MKController доставляет одни и те же address lists и правила firewall на каждый роутер в вашем парке, обновляет данные IPDeny централизованно и показывает расхождения между шаблонами политики и реальной конфигурацией каждого устройства. NATCloud решает задачу удалённого доступа, когда CGNAT или жёсткие клиентские firewall иначе блокируют прямое управление.

Начните бесплатный пробный период MKController