MikroTik - Налаштування кількох провайдерів
Зустрічайте курс MTCRE у Санкт-Петербурзі.
MTCRE 21 та 22 жовтня 2017 року.
+7 (905) 207-35-78
MikroTik - Налаштування кількох провайдерів.
Дуже часто до мене звертаються із проханням допомогти в налаштуванні двох і більше провайдерів на одному пристрої.
Почнемо звичайно з вступних даних, а саме намалюємо нашу схему мережі.

Налаштуємо NAT на інтерфейсах провайдера
Нам необхідно на маршрутизаторі позначити з'єднання, що прийшли на кожен інтерфейс окремого провайдера.
Для трафіку, який генерує сам MikroTik цими з'єднаннями необхідно відправити в таблицю маршрутизації, яка буде відправляти трафік з того ж інтерфейсу.
Створимо правила mangle для першого провайдера
Створимо правила mangle для другого провайдера
MikroTik з іменованими таблицями маршрутизації працює за наступним принципом (Якщо маршрут у іменованій таблиці не знайдено, то шукаємо в таблиці main), ця поведінка не працює тільки з VRF, але це далеко за межами цієї статті.
Нам необхідно гарантувати, що трафік піде тільки з потрібного інтерфейсу, а якщо не зможе (неактивний інтерфейс), то відкинеться самим маршрутизатором.
Створимо правила Route для першого провайдера
Створимо правила Route для другого провайдера
Залишилася справа за малим. Налаштувати таблицю маршрутизації двох провайдерів.
Створимо маршрути для наших провайдерів
На цьому етапі хотілося б закінчити, але незадача, у нас немає маршруту, під який би потрапляв трафік самого MikroTik. (наприклад, якщо маршрутизатор запросить DNS або оновлення)
Ну і додамо родзинки стежитимемо за станом каналів за допомогою рекурсивних маршрутів.
Ядля цього використовую Google DNS
Ну і власне рекурсивні маршрути, зверніть увагу на target-scope
Якщо ви все правильно зробили, то у маршрутах ви повинні побачити щось на зразок
Ну і власне рекурсивні маршрути, зверніть увагу на target-scope
Нам потрібно зробити кілька дій.
І для кожного провайдера потрібно зробити за одним правилом. Для моєї конфігурації вони виглядатимуть так.
Ну що ж залишилося тільки одне питання, як тепер налаштувати так щобNAT(прокидання портів) працював коректно, інакше гріш ціна всієї цієї балаканини.
Проблема полягає в тому, що, прокидаючи порт, трафік вже від хоста, на який прокидали порт, йтиме в маршрут за промовчанням0.0.0.0/0у таблиціmain.
Нас звичайно такий розклад не влаштовує і налаштовуватимеRouterOSтак щоб він гарантовано направляв трафік назад у той же провайдер, з якого і прилетів.
Спочатку нам знадобиться промаркувати з'єднання, яке потрапляє під NAT.
І для другого провайдера.
Розберемо, що ми тут робимо, власне.
Так як ланцюжок input ми вже використовували на цьому інтерфейсі, то залишається тількиpreroutingсаме в цей ланцюжок потрапить весь трафік, який потраплятиме під правилаNAT, даний коннект ми просто маркуватимемо з ім'ямForward/ISP1.
Другим правилом, ми вибираємо весь трафік який йде по маркованому з'єднанню і не приходить з того ж інтерфейсу що і провайдер, це необхідно для того, щоб правило не застосовувалося вже до нового трафіку. І такий трафік відправляємо до іменованої таблиці маршрутизації потрібного нам провайдера.
Ну що ж тепер ви можете спокійно налаштувати двох і більшепровайдерів, а також налаштуватиNATта прокинути порти до ваших локальних сервісів.