klink0v (klink0v) wrote,
klink0v
klink0v

Categories:

Настройка Mikrotik для работы с Beeline

Довелось покрутить Mikrotik RB951G дабы подружить его с домашним интернетом имени Билайн. Как выяснилось, ничего принципиально страшного в этом нет, хотя способ решения задачи получается не сильно красивым.

Установление соединения с Сетью у данного провайдера разбивается на несколько этапов.

  • Получить на интерфейс IP-адрес из локальной "серой" сети 10.0.0.0/8.
  • Выяснить IP-адрес ближайшего "серого" маршрутизатора. В моём примере он будет равен "10.46.8.1".
  • Прописать статические маршруты до VPN-терминаторов Билайна, DNS-серверов и внутренних ресурсов через серый маршрутизатор. В противном случае после установления L2TP-тоннеля Default Gateway "улетит" на удаленный внутренний конец PPP-линка, и наше устройство потеряет внешний удалённый узел для поддержания собственно тоннеля.
  • Настроить L2TP-клиента и запустить его.

В процессе возникает несколько сложностей.

  1. Билайн заточен исключительно под Win-клиентов, поэтому отдает статические маршруты в DHCP-опции номер 249. Linux-системы и Mikrotik её не понимают.
  2. Но даже если и понимали бы, то нас всё равно это не спасет. Потому что маршрутов до VPN-терминаторов и DNS-серверов Билайн по DHCP всё равно не выдает. И если с последними всё ещё более-менее понятно, то вот список первых приходится выяснять методом научного тыка, так как никакой документации провайдер своим клиентам, конечно же, не предоставляет.
  3. Билайн балансирует нагрузку между своими VPN-терминаторами методом round-robin при помощи DNS. При этом в Nslookup-запросах он, конечно же, не раскрывает полный список всех возможных терминаторов, рассекречивая их по одной-две штуки с TTL=10 секунд. Что усложняет поиск подсетей, в которых содержатся оные терминаторы.
  4. В RouterOS до 6-й версии не было возможности прописывать для удаленной стороны FQDN-имя, они понимали только IP-адрес. Что, разумеется, рушило возможность билайновкой балансировки. Поэтому приходилось прикручивать скрипты, которые раз в N секунд ресолвили имя "tp.internet.beeline.ru" и соответствующим образом изменяли настройки L2TP-клиента. После выхода в свет 6-й версии прошивки данна проблема отпала. Теперь там можно прописать FQDN и не мучаться.
  5. При поднятии L2TP/PPP-сессии в качестве удаленного внутреннего конца тоннеля Билайном выдается IP-адрес его же внешнего конца. Винда яки свинья хавает это без проблем, а вот нормальным системам от такого финта ушами тут же сносит крышу. Поэтому приходится ручками выставлять в настройках тоннеля что-нибудь произвольное, но отличное от того что предлагает провайдер.

Итак, сами настройки с картинками. Я знаю, что достаточно привести здесь цитаты консольных команд, но сам люблю одминить микротики из WinBox-а. Оно так нагляднее, что ли...

  1. В настройках DHCP-клиента выключаем модификацию Default Route. Mikrotik — не винда, маршрут по умолчанию через серый гейт ему не только не полезен, но и вреден.
  2. Добавляем статические маршруты до DNS-серверов и в сети с провайдерскими VPN-терминаторами. В моем примере Gateway="10.46.8.1", в вашем случае он будет другим. Выясняется подключением машины с виндой и командой "route print" вот таким образом:

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

    85.21.0.0/24
    78.107.1.0/24
    85.21.192.3/32
    213.234.192.8/32

    Первые две — подсети с VPN-терминаторами (справедливо только для Москвы, для других городов выясняйте самостоятельно). Вторые две — DNS-сервера (также справедливо только для Москвы). Остальные маршруты имеет смысл прописывать в случае, если вам нужны внутренние ресурсы локальной сети (DC, торренты, видеосервера и т.п.). Мне они не актуальны, поэтому я не стал заморачиваться. Итак, добавляем четыре вышеупомянутых маршрута в роутер.

  3. Создаем новый PPP-профиль. Называем его как-нибудь понятным образом. В поле "Remote Address" указываем любой адрес из приватного пространства, не пересекающийся с адресами нашей локальной сети и сети провайдера. Я совершенно "от балды" выбрал "192.168.255.254", это не играет никакой роли. Опцию "Change TCP MSS" ставим в "yes".
  4. Создаём само L2TP-соединение. В поле "Connect To" пишем FQDN-имя VPN-терминатора ("tp.internet.beeline.ru"), "User" и "Password" — ваши логин и пароль по договору, в поле "Profile" указываем созданные на предыдущем шаге PPP-профиль, флаг "Add Default Route" взводим.
  5. В принципе, это всё. Осталось только задействовать маскарадинг (Masquerade) на обоих внешних интерфейсах (Ethernet-ном и PPP-шном) в правилах FireWall-а с целью трансляции сетевых адресов (sNAT) и можно пользоваться интернетом.

**********************

И напоследок немного моих собственных размышлений на тему.

  • Совершенно непонятно, что мешает Билайну продублировать маршруты не только в 249-й, но ещё и в 121-й DHCP-опции. И добавить туда сетки с VPN-терминаторами. Их сисадмину пять минут работы, а линуксовым клиентам это сэкономило бы кучу времени. Этот Билайн такой Билайн...
  • Никогда мне не осилить, зачем назначать одинаковые IP на внешний и внутренний удалённые концы L2TP-тоннеля. В Билайне работают какие-то очень сильно нетрадиционно мыслящие сетевики. Ну или курят что-то очень забористое.
  • И вообще, на фига сам по себе L2TP over IP? Чем PPPoE их не устроило? Белых IP на всех не хватило? Ну дык на IPv6 всех, пора бы уже.
  • Микротик тоже хорош. Пользовательские скрипты можно "вешать" только на таймер (Scheduler), Netwatch или VRRP-триггер. Всё. Скажем, выполнить что-то произвольное по факту получения адреса DHCP-клиентом нельзя. Дико неудобно. Из-за этого всё приходится прописывать жёстко руками. И если изменится, например, внутренний серый адрес (что маловероятно, но вполне возможно), конфигурация окажется нерабочей. Это плохо.

Ну и для гиков. Список маршрутов на внутренние ресурсы Билайна (Москва), если вдруг кому надо (помимо четырёх минимально необходимых).

10.0.0.0/8
78.107.23.0/24
78.107.51.0/28
78.107.196.0/22
78.107.235.4/30
83.102.146.96/27
83.102.231.32/28
85.21.72.80/28
85.21.78.93/32
85.21.79.0/24
85.21.88.130/32
85.21.90.0/24
85.21.108.16/28
85.21.138.208/28
194.67.1.115/32
195.14.50.16/32
195.14.50.21/32
195.14.50.26/32
195.14.50.93/32
217.118.84.213/32
217.118.84.249/32
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 5 comments