Mikrotik. 2 провайдера. DMZ сервисы 4


Задача:

У нас 2 независимых канала связи от двух разных провайдеров. Мы хотим чтобы наши DMZ сервисы, такие как SMTP/IMAP, HTTP и, например, SQL база были доступны одновременно и независимо на двух каналах связи. Есть Mikrotik, допустим, hAP ac lite с версией 6.x.x (конкретно в данной лабе — 6.34.4), наши сервисы подключены в глобальную сеть через него. Как настроить?

Mikrotik и два WAN

DMZ сервисы на двух каналах связи

Для выполнения задачи нужно промаркировать трафик так, чтобы ответы DMZ сервисов на запросы клиентов из глобальной сети уходили с того же порта на который пришел запрос.

На нашем микротике порты обозначены соответственно: WAN1 и WAN2.  А чтобы не путаться, комментарий интерфейса содержит обозначение провайдера и номер порта на микротике:

Обозначение WAN интерфейсов

Обозначение WAN интерфейсов

Начальные правила в IP->Firewall выглядят так (они идут со стандартной конфигурацией, добавлены только правила для WAN2 и разрешение для winbox):

IP->Firewall-Filter Rules

IP->Firewall-Filter Rules

IP->Firewall->Nat

IP->Firewall->Nat

IP->Firewall->Mangle

IP->Firewall->Mangle

Инструкция для WinBox по шагам:

  1. IP-Firewall-Mangle. Добавим маркировку входящий соединений для цепочки prerouting:
    Вкладка General

    Вкладка General

    Вкладка Action

    Вкладка Action

    Новые правила добавлены

    Новые правила добавлены

     

     

  2. IP->Firewall->Mangle. Добавим маркировку маршрута для уже помеченных соединений для цепочки prerouting, исключая адреса сетей, привязанные к кому-либо интерфейсу (Dst. Address Type: ! local):
    Вкладка General

    IP->Firewall->Mangle

    IP->Firewall->Mangle

    IP->Firewall->Mangle

     

    IP->Firewall->Mangle

    IP->Firewall->Mangle

    Скопируем эти правила для chain=output если мы хотим что бы не только DMZ сервисы, но и сам микротик был доступен на двух разных каналах, с двух провайдеров одновременно.

     

  3. Добавим маршруты для помеченных соединений, копируя маршруты по умолчанию, добавляя указание на Routing Mark соответственно каналу. В случае использования DHCP нужно добавить коммент для последующего использования в скрипте актуализации gateway:
    IP->Routes

    IP->Routes

     

  4. Если используется DHCP на каком-либо канале — добавим
    В данном примере WAN2 получает адрес по dhcp и нужно обновлять gateway для правила, которые мы создали (коммент WAN2):

    System->Sheduler

    System->Sheduler

     

  5. Теперь добавим проброс портов до сервисов (на примере ssh), которые мы хотим сделать доступными для внешних сетей по каждому провайдеру, правила различаются только входящим интерфейсом:
    Add NAT Rule

    IP->Firewall

    Add NAT Rule

    Add NAT Rule

     

Задача доступности сервиса на каналах двух провайдеров решена. Технология будет работать и для бОльшего количества провайдеров. Однако остается проблема при использовании динамических IP и привязывания их к постоянному имени в своём домене. Текущий IP микротика можно привязать c помощью нового инструмента  RouterOS, начиная с версии 6.14  —  IP/Cloud но что делать если нужно и второй, резервный, канал привязять к DNS ? Если у кого-то есть решение — прошу поделиться в комментариях )

Дополнительные материалы:


Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

4 мыслей про “Mikrotik. 2 провайдера. DMZ сервисы