В данной статье разберем настройку PPPoE на MikroTik, этот протокол предоставляет обширное управление пользователями, сетями и учета. В настоящее время используется в основном провайдерами для контроля клиентских соединений по xDSL и кабельных модемов, а также в обычных Ethernet сетях. Является расширением стандартного PPP протокола. Разница между ними — это метод транспорта, PPPoE использует Ethernet вместо последовательного модемного подключения.
Проще говоря, PPPoE используется для выдачи IP адресов клиентам, основанных на аутентификации по логину и паролю вместо рабочих станций, у которых проверка подлинности осуществляется по статическому адресу или DHCP. Не рекомендуется использовать статический IP адрес или DHCP на одних и тех же интерфейсах PPPoE из очевидных соображений безопасности. Клиент и сервер работают на втором уровне Ethernet.
На Mikrotik поддерживается следующее:
- PPPoE сервер и клиент;
- Multilink PPP (MLPPP) — предоставляет методы для распространения трафика через несколько физических каналов, имея одно логическое соединение. Этот вариант позволяет расширить пропускную способность и обеспечивает балансировку нагрузки;
- MLPPP по одному линку (возможна передача полноразмерных фреймов);
- BCP (Bridge Control Protocol) — позволяет отправлять необработанные Ethernet фреймы через PPP линки;
- Шифрование MPPE 128bit RSA;
- Аутентификация pap, chap, mschap v1/v2;
- Аутентификация по RADIUS.
Схема сети
Используем лабораторный стенд с Mikrotik CHR версии 6.46.2 на борту. Мы находимся наверху в главном роутере NetworkCore, который имеет доступ в интернет соответствующим правилом NAT для всех сетей. Вводные данные:
- Office-SPB клиент;
- Office-Moscow клиент;
- NetworkCore выполняет роль провайдера, он будет заниматься ролью сервера;
- Office-Moscow ether1 подключен в ether2 провайдера;
- Office-SPB ether1 подключен в ether3 провайдера;
- Адресация в PPPoE сети 172.16.25.0/24.
Настройка сервера PPPoE на Микротик
Нам необходимо создать адресное пространство (IP пул). Подключимся к NetworkCore и перейдем в IP – Pool.
Создадим новый. Задаем понятное название и диапазон адресов.
Сохраняем и переходим к следующему пункту.
Создание профиля
Переходим к созданию профиля. Открываем PPP – Profiles.
- Задаем понятное имя профиля;
- Local Address – 172.16.25.1;
- Remote Address – ранее созданный пул;
- DNS – в качестве примера 8.8.8.8;
- Change TCP MSS – yes;
- Use UPnP – no.
Переходим в Protocols.
- Use MPLS – no;
- Use Compression – no;
- Use Encryption – yes.
Открываем Limits.
- Only One – no.
Сохраняем и идем далее.
Создание пользователей
Т.к. PPPoE требует аутентификацию по логину и паролю, нам необходимо создать два пользователя, по одному для каждого офиса. Последовательно открываем PPP – Secrets.
- Name – учетная запись, регистр имеет значение;
- Password – пароль;
- Service – можно выбрать any, но я предпочитаю указывать конкретные сервисы;
- Profile – раннее созданный профиль.
По аналогии создаем пользователя для офиса SPB.
Включение сервера
Для ограничения широковещательного трафика я не стал создавать bridge и добавлять в него порты, связанные с офисами. Так же я создал одну сеть, что не рекомендуется для production сети. Сервер настраивается в PPP – PPPoE Servers. Создадим первый, подключенный к московскому офису.
Задаем параметры:
- Service Name — указываем уникальное имя сервиса;
- Interface – ether2 для офиса в Москве;
- Default profile – раннее созданный профиль;
- One Session Peer Host – ставим галочку;
- Authentication – оставляем только MSCHAPv1 и MSCHAPv2.
Есть возможность указать задержку ответа в параметре PAD0 Delay. Данный параметр будет полезен для сценариев с несколькими серверами. Его мы не изменяем.
Сохраняем и создаем еще один, но только указываем другое имя сервиса и порт ether3 в параметре interface.
Настройка клиента PPoE на Микротик
Необходимо настроить таким образом, чтобы был доступ в интернет. На московском роутере я покажу как это сделать. Для начала проверим что на нем нет никаких IP адресов и маршрутов.
Далее переходим в PPP – Interface и добавляем новый.
В создании интерфейса на вкладке General зададим:
- Name – понятное название интерфейса;
- Interface – тот интерфейс, который подключен к провайдеру, в нашем случае ether1.
Предлагаю воспользоваться утилитой PPPoE Scan – она позволяет без подключения и аутентификации просканировать эфир на наличие каких-либо серверов. Особенно полезная штука для поиска неисправностей доступности крупнейшего провайдера нашей страны. После нажатия кнопки Start утилита начинает сканирование. На скриншоте ниже, виден наш сервер с заданным именем сервиса и AC Name – он берется из Identity в меню System. При желании можно сменить.
Закрываем утилиту и переходим во вкладку Dial Out.
- Service – for-MSC (можно не указывать);
- AC Name – NetworkCore (можно не указывать);
- User – MSC – обязательный параметр;
- Password – обязательный параметр;
- Use Peer DNS – ставим галочку;
- Allow – снимаем галочки с chap и pap.
Add Default Route нужен для автоматического добавления маршрута 0.0.0.0/0 в нашу таблицу маршрутизации. Данная запись обеспечит выход в интернет. Обращаю внимание, что она устанавливается на клиентской стороне. Сохраняем и проверяем на вкладке Status.
Мы видим внизу статус – connected, что символизирует об успешном подключении. Исходя из скриншота выше можно сказать, что, последний раз соединение поднялось 05.02.2020 в 19:51, время жизни 44 секунды, получили адрес 172.16.25.20, Service Name — for-MSC, AC Name — NetworkCore. Попробуем проверить доступность интернета.
На самом деле, если бы мы не указали Service и AC Name, наше соединение все равно бы установилось и работало без проблем. Данные параметры стоит указывать если вы хотите подключиться к определенному Service и AC Name среди множества из доступных. И, соответственно, если он будет не доступен, ваш клиент будет подключаться именно к тем Service и AC Name, которые вы указали пока ему это не удастся. Будьте осторожны, пользуясь данными опциями.
Отправив ping запрос по доменному имени, мы убедились, что имя преобразуется – это означает что DNS сервер добавился без проблем и получаем ответы на запросы — работает интернет-соединение. Не ленимся и перепроверим в соответствующих консолях.
Проделаем аналогичные действия на Mikrotik в Питере и посмотрим, что происходит на главном роутере NetworkCore.
Как мы видим, на интерфейсах ether2 и ether3 появились дополнительные соединения. Далее мы можем из этих интерфейсов сделать статические адрес листы и в зависимости от ситуации, разрешать или запрещать определенный трафик. В данном примере я продемонстрировал как с помощью PPPoE на роутере Mikrotik разрешить доступ в интернет, вы же можете предоставлять с его помощью доступ к иным службам или сетям. Спасибо за внимание.
89 вопросов по настройке MikroTik
Вы хорошо разбираетесь в Микротиках? Или впервые недавно столкнулись с этим оборудованием и не знаете, с какой стороны к нему подступиться? В обоих случаях вы найдете для себя полезную информацию в курсе «Настройка оборудования MikroTik». 162 видеоурока, большая лабораторная работа и 89 вопросов, на каждый из которых вы будете знать ответ. Подробности и доступ к началу курса бесплатно тут.