Андрей Смирнов
Время чтения: ~26 мин.
Просмотров: 47

Настройка L2TP Клиента на MikroTik

mikrotik-vpn-server-01.png

Создаем профиль для туннеля в PPP -> Profiles.

mikrotik-vpn-server-02.png

На остальных вкладках настройки дефолтные. Далее создаем пользователя в PPP -> Secrets.

mikrotik-vpn-server-03.png

Теперь запускаем l2tp сервер. Идем в PPP и жмем в кнопку L2TP Server.

mikrotik-vpn-server-04.png

Устанавливаем настройки для l2tp сервера. ipsec пока не включаем.

mikrotik-vpn-server-05.png

VPN сервер настроен. Теперь создадим для него постоянный интерфейс, чтобы на его основе создавать статические маршруты. Идем в Interfaces и создаем L2tp Server Binding.

mikrotik-vpn-server-06.png

Последний штрих. Создаем статический маршрут, с помощью которого абоненты локальной сети сервера смогут подключаться к абонентом локальной сети за удаленным роутером через vpn. Идем в IP -> Routes и добавляем маршрут.

mikrotik-vpn-server-07.png

Я не рассмотрел вопрос настройки firewall, так как не хочется раздувать и так объемную статью. Напрямую это не относится к указанной теме. Подробнее читайте о настройке фаервола отдельно по приведенной ссылке. Здесь же только укажу, что необходимо открыть на firewall для корректной настройки l2tp.

На сервере необходимо создать следующие правила для фаерволла, чтобы мы могли достучаться до нашего L2TP сервера. IP -> Firewall -> Filter Rules. Необходимо создать разрешающее правило в цепочке input для следующих портов и протоколов:

  • Протокол: UDP
  • Разрешаем порты: 1701,500,4500
  • В качестве In.Interface указываем тот, через который происходит l2tp подключение.

Отдельно добавляем еще одно правило, разрешающее протокол ipsec-esc.

На сервере все готово. Идем настраивать l2pt клиент на удаленном микротике.

L2tp клиент

Здесь все достаточно просто. Идем в PPP и добавляем L2TP Client. Указываем настройки, которые задавали ранее на сервере.

mikrotik-vpn-server-08.png

Добавляем статический маршрут, чтобы клиенты этого роутера знали, куда обращаться к абонентам удаленной локальной сети за vpn.

mikrotik-vpn-server-09.png

На этом все. Мы настроили l2tp на удаленном микротике и таким образом объединили 2 локальных сети с помощью vpn. В списке ip адресов при активном l2tp соединении на сервере и клиенте вы должны увидеть ip адреса из заданного на сервере диапазона для vpn сети — 10.10.5.1-10.10.5.100. Теперь можно пропинговать с обоих сетей противоположные.

У меня для теста к обоим микротикам подключены ноутбуки. Сейчас я измерю скорость соединения с помощью iperf3. За роутером m-remote на ноутбуке 10.30.1.254 запускаю сервер, а на 10.20.1.3 агента. Запускаем тест скорости vpn соединения:

mikrotik-vpn-server-10.png

Средняя скорость 194 мбит/сек. Откровенно говоря, я не понял, почему такая низкая скорость. Мой тестовый стенд собран на двух роутерах микротиках и гигабитного микротик свитча между ними. Ожидал увидеть что-то в районе 500 мбит/сек. Напомню, что туннель пока без шифрования. При этом загрузка процессоров на роутерах была в районе 90-95%. То есть фактически потолок этих железок.

Попробуем теперь включить шифрование ipsec и замерить скорость с ним.

Настраиваем ipsec

С настройкой ipsec для l2tp я залип на некоторое время. В сети много инструкций, но все они устарели. Как оказалось, в последних версиях прошивок, запустить ipsec в дефолтных настройках не просто, а очень просто. Для этого надо всего лишь в свойствах l2tp сервера указать Use IPsec — yes и задать пароль.

mikrotik-vpn-server-12.png

Все необходимые настройки ipsec будут созданы автоматически. На агенте сделать то же самое — включить ipsec шифрование и указать пароль.

mikrotik-vpn-server-13.png

После подключения l2tp клиента увидите в логе похожие строки:

19:17:00 l2tp,ppp,info l2tp-out1: initializing...  19:17:00 l2tp,ppp,info l2tp-out1: connecting...  19:17:03 ipsec,info initiate new phase 1 (Identity Protection): 192.168.13.197[500]<=>192.168.13.1[500]  19:17:04 ipsec,info ISAKMP-SA established 192.168.13.197[500]-192.168.13.1[500] spi:407844c0ceb5d2ab:46ce7ffb25495efd  19:17:07 l2tp,ppp,info l2tp-out1: authenticated  19:17:07 l2tp,ppp,info l2tp-out1: connected

Для того, чтобы убедиться, что шифрование ipsec работает, можно зайти в раздел IP -> Ipsec -> Installed SAs и посмотреть на счетчик зашифрованных пакетов. Если он растет, значит все в порядке, трафик шифруется.

mikrotik-vpn-server-14.png

Там же в разделе Remote Peers можно посмотреть список удаленных клиентов, для которых работает ipsec шифрование, посмотреть используемые алгоритмы. Все дефолтные настройки ipsec живут в этом разделе. Вы можете посмотреть их, изменить или добавить новые профили. По-умолчанию используется алгоритм авторизации sha1 и шифрование AES. Можете изменить эти параметры, если разбираетесь в теме. Я умничать не буду, тему шифрования не копал. Какие алгоритмы максимально быстры и защищены — не знаю.

Проведем тесты скорость vpn соединения l2tp + ipsec.

mikrotik-vpn-server-15.png

У меня получилось вот так — 26 мбит/сек в среднем. При этом загрузка процессора 100%. Не густо. Данные железки для шифрованных каналов пригодны очень слабо. В данных тестах они ничем, кроме непосредственно теста не нагружены. В реальных условиях скорость будет еще ниже.

С настройками vpn на базе l2tp + ipsec закончили. Продолжим настройку остальных vpn туннелей и сравним их скорость.

Настройка pptp сервера в mikrotik

Настройка pptp сервера не отличается принципиально от l2tp. Логика и последовательность действий та же самая. Сначала создаем pool адресов в IP -> Pool для vpn сети. Я буду использовать тот же пул, что мы создали ранее.

Далее создаем профиль для pptp туннеля в разделе PPP -> Profiles.

mikrotik-vpn-server-17.png

В этом профиле указаны дефолтные настройки шифрования, при которых оно отключено. Проверим сначала скорость vpn канала без них. Создаем нового пользователя для удаленного pptp подключения.

Включаем pptp сервер в разделе PPP.

Теперь создадим в Interface List PPTP Server Binding по аналогии с предыдущим разделом.

И в завершение добавляем статический маршрут до удаленной сети через pptp подключение.

Настройка pptp сервера закончена. На фаерволе нужно будет открыть для входящих подключений внешнего интерфейса следующие вещи:

  • TCP port 1723
  • GRE протокол

Отправляемся настраивать pptp клиент.

pptp клиент

Отправляемся на удаленный роутер и там настраивает подключение через pptp client. Идем, как обычно, в раздел PPP и добавляем PPTP Client. На вкладке General ничего не трогаем, а на Dial Out указываем адрес pptp сервера и имя пользователя для подключения.

Добавляем статический маршрут до удаленного офиса через vpn туннель.

Все готово. Активируем pptp подключение и пробуем пинговать адреса в локальной сети. Убедиться в том, что шифрование отключено можно в статуте pptp соединения на клиенте.

Проверим теперь скорость vpn соединения по pptp.

Те же самые 194 мбит/сек, что на нешифрованном l2tp при 100% загрузке процессора. Вообще, было немного странно увидеть абсолютно такие же цифры. Проводил тесты несколько раз, но везде был стабильно один и тот же результат. Без шифрования нет разницы по скорости между l2tp и pptp соединением.

Теперь включим шифрование в pptp на сервере и посмотрим на скорость. Для этого указываем в pptp профиле явно, чтобы использовалось шифрование. Идем в PPP -> Profiles и редактируем наш профиль.

Убедимся в статусе клиента, что шифрование работает.

Тестирую скорость vpn соединения по pptp с включенным шифрованием.

Получилось в среднем 71 мбит/сек. Неплохой результат в сравнении с шифрованием ipsec в l2tp. Как я и говорил ранее, pptp сервер хорошо подходит там, где шифрование либо совсем не нужно, либо допускается возможность, что зашифрованный трафик будет расшифрован. Но при этом он все равно закрыт шифрованием и каждый проходящий не сможет ничего увидеть. Нужно как минимум снять дампт трафика и каким-то образом подбирать ключ по словарю или перебором. Не знаю точно, как это реализуется на практике. Не изучал вопрос.

Перейдем теперь к openvpn серверу в микротик. Очень любопытно посмотреть на тесты скорости этого типа vpn соединений.

Настройка openvpn server в микротик

В настройке openvpn сервера на mikrotik нет ничего сложного, кроме нюанса с сертификатами. Тому, кто с ними никогда не работал, может показаться все слишком замороченным. К тому же в самом микротике нет никаких средств для создания сертификатов сервера и клиента. Необходимо использовать сторонние утилиты. Если у вас есть linux машина, можете воспользоваться моей инструкцией по созданию сертификатов для openvpn на linux.

Если у вас нет linux машины, но вы все же настроены поднять vpn туннель с помощью openvpn в микротике, то давайте разбираться с настройкой дальше. Прежде всего нам понадобится дистрибутив openvpn для windows. Скачать его можно по ссылке — https://openvpn.net/community-downloads/. Нас будет интересовать Windows Installer.

Выполняем установку от имени администратора и указываем в процессе компонент под названием EasyRSA 2 Certificate Management Scripts.

Идем в директорию C:Program FilesOpenVPN. Переносим оттуда папку easy-rsa куда-нибудь в другое место, чтобы не приходилось постоянно спотыкаться об UAC, который не даст спокойно работать в Program files. Я перенес в D:tmpeasy-rsa. Переименовываем файл vars.bat.sample в vars.bat. Открываем его на редактирование и приводим примерно к следующему виду.

Для тех, кто не понял, это просто переменные, которые я указал под свои нужды. Там писать можно все, что угодно, не принципиально для нашей задачи. Можно вообще ничего не менять, а оставить как есть. Создаем в директории папку keys. Далее запускаем командную строку от администратора и перемещаемся в указанную директорию D:tmpeasy-rsa.

Далее в командной строке пишем vars и жмем enter. Этим мы загрузим переменные из файла vars.bat, потом вводим clean-all. Дальше генерируем Root CA командой — build-ca.

Отвечаем на задаваемые вопросы и завершаем создание корневого сертификата. Он появится в папке D:tmpeasy-rsakeys. Дальше создаем сертификат openvpn сервера командой — build-key-server имя_сервера.

Теперь сгенерируем сертификат для клиента. У меня только один клиент в виде удаленного микротика. Вы создаете ровно столько, сколько вам нужно. Используем команду build-key имя_сертификата.

С созданием сертификатов закончили. Они у нас все лежат в директории keys. На микротик, который будет выступать в качестве openvpn сервера, нужно передать файлы:

  • ca.crt
  • ovpnserver.crt
  • ovpnserver.key

Импортируем сертификаты из добавленных файлов. Идем в System -> Certificates и импортируем сначала ca.crt, потом ovpnserver.crt и ovpnserver.key.

Должно получиться примерно так. Теперь приступаем к настройке openvpn сервера в mikrotik. Создадим для него отдельный профиль в PPP -> Profiles.

Все настройки дефолтные. В качестве локального и удаленного адреса использую Ip Pool, который создал в самом начале настройки l2tp. Добавим удаленного пользователя для openvpn в PPP ->Secrets.

Идем в раздел PPP и жмем OVPN Server. Указываем настройки и загруженный ca сертификат.

Далее добавляем по аналогии с остальными vpn серверами OVPN Server Binding и статические маршруты.

На этом настройка openvpn server в микротик завершена. По дефолту будет использоваться протокол шифрования BF-128-CBC. Его можно поменять в свойствах клиента, а список всех поддерживаемых шифров в свойствах vpn сервера.

Для работы указанной настройки openvpn сервера необходимо открыть входящий tcp порт 1194 на фаерволе. Теперь настроим openvpn клиент и протестируем скорость соединения через vpn на основе openvpn.

openvpn client

Для настройки openvpn client на mikrotik, туда нужна передать сертификаты, сгенерированные на предыдущем шаге. Конкретно вот эти файлы:

  • m-remote.crt
  • m-remote.key

Импортируем, как и на сервере сертификат из этих файлов. Обращаю внимание, что должны быть символы KT напротив имени сертификата.

Теперь настраивает openvpn клиента. Идем в PPP и добавляем OVPN Client.

Добавляем статический маршрут для доступа к ресурсам удаленной сети за openvpn сервером.

Все готово. Можно подключаться и тестировать скорость vpn соединения через openvpn.

Получилось в среднем 24 мбит/сек при 100% загрузке процессора. Результат сопоставим с l2tp + ipsec. Немного удивил результат. Я думал, будет хуже, чем l2tp, а на деле то же самое. Мне лично вариант с openvpn в целом нравится больше, хотя из-за ограниченности настроек openvpn в микротике преимущества openvpn трудно реализовать. Напомню, что тестировал с шифрованием BF-128-CBC, то есть blowfish.

Вот результат с AES-128-CBC — 23 мбит/сек, примерно то же самое.

С клиент-серверными реализациями vpn сервера в mikrotik разобрались. Теперь просмотрим на скорость l2-vpn в виде eoip tunnel.

Настройка EOIP Tunnel + Ipsec

Настроим vpn сеть на базе EOIP в Mikrotik. Тут нужно понимать одно важное отличие от всех предыдущих настроек, которые мы делали ранее. EOIP туннель работает на уровне l2, то есть оба сегмента сети будут считать, что находятся в одной физической сети. Адресное пространство для обоих будет одно и то же. В моем примере это 10.20.1.0/24. DHCP сервер должен остаться только один для обоих сетей. В моем случае он останется на m-server.

Создаем EOIP туннель на m-server. Идем в Interface list -> EoIP Tunnel и добавляем новый.

Из настроек достаточно указать только удаленный адрес второго микротика. Новый EoIP интерфейс необходимо добавить в локальный бридж вместе с физическими интерфейсами.

Идем на удаленный микротик и там делаем все то же самое, только Remote Address указываем другой.

Этого достаточно, чтобы EoIP туннель сразу же заработал. Его состояние будет RS.

На втором микротике EoIP интерфейс так же нужно добавить в локальный бридж с остальными интерфейсами.

Проще всего проверить, что все в порядке, это запросить по dhcp на m-slave ip адрес для интерфейса bridge. Он должен получить ip адрес от dhcp сервера на m-server, при условии, что в сети больше нет других dhcp серверов. То же самое будет и с локальными машинами в сети за m-slave. Они будут получать ip адреса от dhcp сервера на m-server.

Проверим теперь быстродействие такого vpn туннеля на основе EoIP.

Показываю максимальный результат, который у меня получился — 836 мбит/сек. По какой-то причине в разных тестах скорость плавала в интервале между 600-850 мбит/сек. Для того, чтобы скорость изменилась, необходимо было отключить и заново включить EoIP интерфейс. Скорость впечатляет. При этом, процессор не загружен на 100%. То есть узкое место не он. Похоже я уперся в производительность сети. Напомню, что тут нет никакого шифрования и маршрутизации трафика. Прямой l2 канал между двумя микротиками через EoIP vpn.

Добавим в EoIP туннель шифрование Ipsec и посмотрим на скорость. Для этого меняем настройки каналов на обоих микротиках. Добавляем пароль Ipsec и локальные адреса, отключаем Fast Path.

Измеряем скорость соединения.

У меня получилась скорость vpn при использовании EoIP + Ipsec в среднем 27 мбит/сек. Скорость сопоставима с шифрованными туннелями L2tp и Openvpn. В этом плане никаких приятных сюрпризов не получилось. Шифрование очень тяжело дается этой железке. Можно сказать она для него не предназначена практически совсем.

GRE туннель + Ipsec в mikrotik, создание и настройка

Для настройки GRE туннеля в Mikrotik идем в раздел Interfaces -> GRE Tunnel и добавляем новый со следующими настройками:

Назначаем GRE туннелю ip адрес в IP -> Adresses.

Сразу же создаем статический маршрут для доступа к ресурсам удаленной сети.

Для организации vpn соединения через GRE tunnel то же самое проделываем на удаленном микротике, только меняем соответствующие адреса.

Создаем GRE Tunnel.

Назначаем ip адрес.

Добавляем маршрут в удаленную локальную сеть.

После этого маршрутизация трафика между локальными сетями должна заработать. Не забудьте на firewall разрешить gre протокол.

Проверим теперь скорость соединения по GRE туннелю.

У меня получилось 247 мбит/сек. Напомню, что это нешифрованный маршрутизируемый vpn туннель. Отличие от l2 туннеля EoIP примерно в 3 раза по скорости в меньшую сторону. Выводы делайте сами какие туннели использовать. Если не нужна маршрутизация, то однозначно EoIP.

Теперь проверим то же самое, только настроив в GRE шифрование Ipsec. Добавляем соответствующие настройки в GRE туннели на обоих микротиках.

Измеряю скорость GRE + Ipsec, алгоритм шифрования aes-128 cbc.

Получилось в среднем 29,7 мбит/сек, что примерно соответствует всем результатам с ipsec. Не удивительно, ведь алгоритм шифрования во всех случаях один и тот же. Но тем не менее, в GRE Tunnel скорость немного выше всех остальных участников. Из этого можно сделать вывод, что исключительно для l3 site-to-site подключений GRE Tunnel подходит в плане быстродействия лучше всего.

Сравнение скорости L2tp, Pptp, EoIP, GRE и OpenVPN туннелей

Сведу все данные измерений в единую таблицу для наглядного и удобного анализа и сравнения скоростей всех упомянутых vpn соединений в Mikrotik.

Сравнение скорости vpn каналов в mikrotik
VPN Туннель Шифрование Скорость (Мбит/c)
l2tp нет 194
l2tp IPsec AES-128 CBC 26
pptp нет 194
pptp MPPE128 71
openvpn BF-128-CBC 24
eoip нет 836
eoip IPsec AES-128 CBC 27
gre нет 247
gre IPsec AES-128 CBC 29,7

Приведенная таблица наглядно показывает разницу в различных методах шифрования. С помощью нее можно быстро оценить, к каким потерям производительности может привести шифрование. Сейчас все по-умолчанию все шифруют, но если разобраться, очень часто это не требуется. Можно пойти на некий компромис и использовать pptp сервер, который хоть и не обеспечивает 100% безопасное шифрование, но тем не менее скрывает трафик от просто любопытных глаз и имеет неплохое быстродействие. В любом случае трафик просто так не прочитать, надо целенаправленно приложить усилия для дешифровки. В некоторых случаях такой защиты будет достаточно.

Заключение

Изначально не планировал писать такую большую и подробную статью. Аппетит приходит во время еды. По мере того, как стал углубляться в тему, становилось все интереснее и интереснее попробовать разные варианты и сравнить их. В итоге я перебрал все известные vpn подключения в mikrotik. Не дошли руки только до SSTP, но я точно знаю, что он будет очень медленно работать на RB951G-2hnD и в целом на микротиках медленнее всех остальных решений. Не думаю, что его использование будет оправданно.

Статью писал несколько дней, мог что-то напутать, опечататься или ошибиться. Все замечания принимаю в комментариях. Надеюсь, мой материал исследование на тему настройки vpn соединений в микротиках был вам интересен и полезен. Единственное, о чем жалею, что не затронул тему настройки pptp, l2tp и openvpn подключений на клиентских устройствах сотрудников. Без них материал на тему настройки vpn получился не полноценным, ведь это важная часть работы vpn тоннелей. Их используют не только для объединения офисов, но и для подключения удаленных сотрудников.

Напоминаю, что данная статья является частью единого цикла статьей про Mikrotik.

Онлайн курсы по Mikrotik

Если у вас есть желание научиться работать с роутерами микротик и стать специалистом в этой области, рекомендую пройти курсы по программе, основанной на информации из официального курса MikroTik Certified Network Associate. Помимо официальной программы, в курсах будут лабораторные работы, в которых вы на практике сможете проверить и закрепить полученные знания. Все подробности на сайте . Стоимость обучения весьма демократична, хорошая возможность получить новые знания в актуальной на сегодняшний день предметной области. Особенности курсов:

  • Знания, ориентированные на практику;
  • Реальные ситуации и задачи;
  • Лучшее из международных программ.

Помогла статья? Есть возможность отблагодарить автора

Перед настройкой нам нужно обновить прошивку и сбросить все предустановленные настройки.

Если вы не читали первую часть “Mikrotik: выбор домашнего маршрутизатора“, то вкратце повторю как сбросить настройки, по обновлению прошивки читаем первую часть (ближе к концу).

Подключаемся к маршрутизатору патчкордом в любой порт кроме первого и запускаем WinBox. Через некоторое время наш роутер появляется в списке доступных устройств.

На данном этапе НЕ ПОДКЛЮЧАЕМ КАБЕЛЬ ОТ ПРОВАЙДЕРА В НАШ РОУТЕР!

WinBox – первое подключение

Клацаем мышкой на MAC-адрес что бы он появился в строке Connect To, в поле Login вводим admin, поле пароля оставляем пустым и нажимаем Connect.

Подключившись идём в меню System – Reset Configuration, выставляем галочки No Default Configuration, Do Not Backup и нажимаем Reset Configuration.

MikroTik – сброс конфигурации

Через некоторое время наш маршрутизатор перезагрузится и снова появится в WinBox, на этот раз уже без IP-адреса. Теперь мы готовы приступить к настройкам.

WinBox – подключение на “чистый” роутер

Снова подключаемся к маршрутизатору и заходим в меню System – Users и добавляем нового пользователя с полными правами.

MikroTik – добавление нового пользователя

Выходим из WinBox и подключаемся уже новым пользователем

WinBox – подключение новым пользователем

Снова заходим в System – Users и отключаем старого пользователя. Делается это дабы исключить подбор пароля к вашему роутеру, т.к. практически всем известно имя пользователя по умолчанию. В принципе root для этого тоже не слишком подходит, но для примера пойдёт, вы же придумайте свой логин.

WinBox – отключение старого администратора

На этом в принципе подготовительную часть можно считать завершённой и далее приступим непосредственно к настройкам.

Сразу оговорюсь что в данном примере я подключение от провайдера буду настраивать на физический пятый порт. Сделано это в целях экономии розетки. У меня роутер установлен далеко от розетки и питание на него я подаю по PoE, PoE-in в моём маршрутизаторе (MikroTik hAP ac²) это первый физический порт (который подписан Internet) и если в него воткнуть шнурок от провайдера то придётся подавать питание через PoE-инжектор – раз розетка, плюс розетка на коммутатор (switch), а раз уж все равно кабель от маршрутизатора тянуть к свитчу, то глупо не задействовать PoE от свитча.

Для тех кто не в курсе – у MikroTik’а нет такого понятия как выделенный WAN-порт как на бытовых маршрутизаторах, тут любой порт может выполнять любую роль. Хоть четырёх провайдеров в него заводите, а пятый порт на свитч ))

В принципе все настройки я старался сделать через bridge, так что никому не помешает потом перетусовать все физичесие порты под свои нужды, на работоспособность это уже никак не повлияет.

Но ближе к делу.

В первую очередь идём в меню Interfaces и отключаем порт ether5, для этого выделяем его и нажимаем на красный крестик. После этого можно безбоязненно подключать к нему кабель от интернет-провайдера. Сделано это что бы исключить попытки вторжения на наше устройство пока оно не настроено. На дальнейшие настройки это никак не повлияет.

MikroTik – отключаем порт

Далее идём в меню Bridge и добавляем два моста – bridge1-LAN и bridge2-WAN

  • WinBox – добавляем bridge-LAN
  • WinBox – добавляем bridge-LAN
  • Bridge – что получилось

Далее открываем там же вкладку Ports и добавляем там порты в наши мосты )) Порты ether1-ether4 и wlan1-wlan2 в бридж bridge1-LAN, порт ether5 соответственно в bridge2-WAN

  • Добавляем LAN порты в bridge1-LAN
  • Добавляем WAN порты в bridge1-WAN
  • Bridge – настроеные порты

Затем открываем меню Interfaces и на вкладке Interface List добавляем список ls-LAN-all нажав на кнопку Lists. Затем в данный список добавляем bridge1-LAN

  • Добавляем список интерфейсов
  • Добавляем в список bridge1-LAN

На этом настройка портов и мостов закончена, перейдем к настройке локальной сети ))

Перейдём в меню IP – Addresses и добавим новый адрес (в моём случае это 192.168.253.1, в вашем случае это может быть другой) присвоив его интерфейсу bridge1-LAN. Это и будет адрес нашего маршрутизатора. Адрес нужно добавлять с сетевой маской, так как на скриншоте. В принципе маску можно писать и полной – 192.168.253.1/255.255.255.0

Назначаем IP-адрес маршрутизатору

Далее нам нужно настроить DHCP-сервер, который будет назначать IP-адреса сетевым устройствам в нашей локальной сети. Для этого перейдём в меню IP – DHCP Server и воспользуемся там мастером настроек нажав кнопку DHCP Setup. В принципе для типовой конфигурации можно со всем согласиться как есть привязав сервер к интерфейсу bridge1-LAN, единственно я добавил гугловские адреса DNS-серверов. Здесь может быть несколько вариантов – взять DNS-сервера от провайдера, добавить свои, добавить гугловские, настроить DNS-сервер на нашем маршрутизаторе и раздавать его. Последнему варианту будет посвящена отдельная статья, а пока оставим так – пусть будет гугл.

  • Настройка DHCP-сервера 1
  • Настройка DHCP-сервера 2
  • Настройка DHCP-сервера 3
  • Настройка DHCP-сервера 4
  • Настройка DHCP-сервера 5
  • Настройка DHCP-сервера 6

И напоследок переименуем наш DHCP-сервер в dhcp1-LAN, пригодится в будущем.

Переименовываем DHCP-сервер

Начнём с настройки DHCP-клиента, для этого перейдем в меню IP – DHCP Client. Откроем вкладку DHCP Client Options и добавим там новый параметр со следующими значениями:

Name: parameter_request_list Code: 55 Value: 0x010306212A79F9
Настройка DHCP-клиента – добавляем новый параметр

Затем на вкладке DHCP Client добавляем нового клиента привязав его к интерфейсу bridge2-WAN.

Add Default Route выбираем special_classless, что позволяет получить classless маршрут, так и маршрут по умолчанию в стиле MS.

Привязка DHCP Client к интерфейсу bridge2-WAN

На вкладке Advanced добавляем DHCP Options: clientid, hostnameи наш parameter_request_list. По поводу последнего параметра – не знаю точно передаёт ли билайн до сих пор что нибудь, но на всякий случай пусть будет, отключить никогда не поздно. Default Route Distance ставим 10.

Advanced DHCP Options
/ip dhcp-client add add-default-route=special-classless default-route-distance=10 dhcp-options=     clientid,hostname disabled=no interface=bridge2-WAN

Теперь настроим непосредственно L2TP подключение.

Перейдём в меню PPP и добавим L2TP Client. Назовём его l2tp-out1-beeline, Max MTU установим 1460, Max MRU 1500. Затем на вкладке Dial Out заполним поля Connect To: tp.internet.beeline.ru, User: ваш логин выданный провайдером, Password: соответственно ваш пароль, поставим галочку Add Default Route, Default Route Distance: 5, снимем галочки с mschap1 и pap

  • Настройка L2TP – General
  • Настройка L2TP – Dial Out

Выбираем меню Interfaces и переходим на вкладку Interface List, добавляем новый список ls-WAN-all. Затем в этот список добавляем интерфейсы bridge2-WAN и l2tp-out1-beeline

  • Настройка firewall – добавляем новый список интерфейсов
  • Настройка firewall – добавляем интерфейсы в список
  • Настройка firewall – список интерфейсов

Меню IP – Firewall на вкладке Address Lists добавляем список под названием LocalNet с нашими адресами – 192.168.253.0/24

Настройка firewall – добавляем список локальных адресов

Добавляем привила firewall. Что бы не пихать сюда кучу картинок напишу все правила скриптом, кто не знает, то просто вводите данные команды в окне терминала (меню New Terminal). Данные правила самые базовые, но на первых порах их должно быть достаточно.

/ip firewall filter add action=accept chain=input connection-state=established,related add action=accept chain=forward connection-state=established,related add action=drop chain=input in-interface-list=ls-WAN-all add action=drop chain=forward connection-state=invalid add action=drop chain=forward connection-nat-state=!dstnat connection-state=new in-interface-list=ls-WAN-all

В результате должно выглядеть так как на скрине ниже, за исключением правил для IPTV, их добавим чуть попозже ))

Список правил firewall

На этом этапе можно включить отключенный интерфейс ether5 и попробовать что нибудь попинговать из терминала на MikroTik’е

ping from MikroTik terminal

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

/ip firewall nat add action=masquerade chain=srcnat out-interface-list=ls-WAN-all src-address=192.168.253.0/24

После этого у нас появился интернет и в нашей локальной сети.

ping from LAN

Если интернет работает, но некоторые сайты почему то не открываются (не по причине блокировки Роскомнадзором) то можно попробовать добавить правило в Mangle

/ip firewall mangle add action=change-mss chain=forward new-mss=1360 protocol=tcp tcp-flags=syn tcp-mss=1453-65535

IPTV от билайна можно настроить двумя способами. Если вам удобнее протянуть кабель от приставки непосредственно к вашему MikroTik’у, то проще всего добавить ещё один порт в bridge2-WAN, предварительно удалив его из brifge1-LAN и подключить приставку в этот порт, например так:

Меняем ether4 с bridge1-LAN на bridge2-WAN

Всё, больше ничего делать не нужно. Именно поэтому я для WAN сделал отдельный мост, а не настраивал как внешний интерфейс непосредственно порт ether5.

Если же вам удобнее IPTV-приставку подключить в коммутатор (switch), то продолжим настройку.

С официального сайта MikroTik из раздела Software нужно будет скачать Extra packages для своей версии прошивки. В моём случае это файл all_packages-arm-6.45.1.zip, т.к. я для написания данного материала пользуюсь MikroTik hAP ac² (RBD52G-5HacD2HnD).

Из полученного архива нам нужен файл multicast-6.45.1-arm.npk (в вашем случае может быть другой, в зависимости от архитектуры процессора и версии прошивки).

Для установки данного пакета в наш MikroTik нужно в WinBox открыть меню Files и в открывшееся окно просто перетащить нужный нам файл. Вместо того что бы перетаскивать, можно воспользоваться кнопкой Upload или просто сделать Copy-Paste. У меня почему то не получилось сделать это из WinBox и я воспользовался доступом через web-интерфейс, который в принципе почти полностью повторяет функционал WinBox, за исключением естественно возможности подключения по MAC-адресам. Так же для загрузки можно воспользоваться доступом по FTP или SFTP.

  • WinBox – logon
  • WinBox – WebFig
  • WinBox – Files

Теперь просто перезагрузим роутер – меню Sytem – Reboot и после перезагрузки данный дополнительный пакет будет установлен в систему, убедиться в этом можно перейдя по меню System – Packages

MikriTik Packages

После установки необходимого нам пакета multicast приступим непосредственно к настройкам.

В меню Bridge открываем bridge1-LAN и включаем там IGMP Snooping

Включаем IGMP Snooping в bridge1-LAN

Тоже из консоли:

/interface bridge set bridge1-LAN igmp-snooping=yes

Routing – IGMP Proxy – нажимаем кнопочку Setup и устанавливаем параметры Query Interval: 30 секунд и Query Response Interval: 20 секунд, Quick Leave оставляем выключенным.

Настройка параметров IGMP Proxy

Из консоли:

/routing igmp-proxy   set query-interval=30s query-response-interval=20s quick-leave=no

Теперь в IGMP Proxy добавляем интерфейс bridge2-WAN с параметрами Alternative Subnets: 0.0.0.0/0, включаем Upstream и интерфейс bridge1-LAN – никаких параметров не меняем.

Из консоли:

/routing igmp-proxy interface add alternative-subnets=0.0.0.0/0 interface=bridge2-WAN upstream=yes add interface=bridge1-LAN

Осталось добавить пару правил в firewall:

/ip firewall filter   add chain=input protocol=igmp action=accept   add chain=forward dst-address=232.0.0.0/5 protocol=udp action=accept

Нужно проследить что бы данные правила были выше первого дропа в цепочке, т.е. правило chain=input protocol=igmp action=accept должно быть выше первого дропа в цепочке input, а правило chain=forward dst-address=232.0.0.0/5 protocol=udp action=accept должно быть выше первого дропа в цепочке forward.

Порядок следования правил в WinBox можно поменять просто перетащив нужное правило на своё место – вверх или вниз. В нашем случае результат будет таким:

Правила firewall для IPTV

Не забывайте к каждому правилу добавлять комментарии, что бы потом не запутаться какое правило за что отвечает.

С настройками IPTV на MikroTik на этом закончим – телевизор показывает ))

В принципе у нас уже всё работает, но необходимо внести ещё парочку мелких изменений в настройки нашего MikroTik.

Отключим все неиспользуемые нами сервисы. Для этого перейдём в меню IP – Services и отключим всё, что мы не используем, а для тех что используем ограничим доступ только из локальной сети:

/ip service set telnet disabled=yes set ftp disabled=yes set www address=192.168.253.0/24 set ssh address=192.168.253.0/24 set api disabled=yes set winbox address=192.168.253.0/24 set api-ssl disabled=yes

И ограничим обнаружение нашего маршрутизатора только в локальной сети:

/ip neighbor discovery-settings set discover-interface-list=ls-LAN-all
Настраиваем Neighbor Discovery

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

/ip upnp set allow-disable-external-interface=yes enabled=yes /ip upnp interfaces add interface=bridge1-LAN type=internal add interface=bridge2-WAN type=external

На этом часть про базовые настройки маршрутизатора на основе RouterOS можно считать завершённой.

За бортом остались настройки Wi-Fi, настройки DNS и много чего ещё, но это уже тема последующих статей.

Все приведённые примеры использовались и работают на маршрутизаторе MikroTik hAP ac² (RBD52G-5HacD2HnD-TC) с версией RouterOS 6.45.1.

Отдельно хочу сказать огромное человеческое спасибо своему хорошему другу Владу Глазкову, без его подсказок и советов данной статьи просто не было бы.

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

Обновление от 20.07.2019:В настройках DHCP клиента в parameter_request_list добавил получение Classless Static Route Option, правда в моём регионе (Красноярск) билайн кажется “забил” на это (

Обновление от 17.10.2019: В настройках DHCP клиента удалён параметр parameter_request_list и Add Default Route изменён с yes (по умолчанию) на special-classless, что позволяет получать как classless маршруты так и маршрут по умолчанию в стиле MS.

 [Всего голосов: 20 — Общая оценка: 5]Используемые источники:

  • https://serveradmin.ru/nastrojka-vpn-openvpn-l2tp-ipsec-server-v-mikrotik/
  • https://grib69.ru/2019/07/16/mikrotik-nastrojka-podkljuchenija-l2tp-ot-bilajn/

Рейтинг автора
5
Подборку подготовил
Максим Уваров
Наш эксперт
Написано статей
171
Ссылка на основную публикацию
Похожие публикации