Настройка RouterOS для одновременной работы с несколькими провайдерами [Автор Неизвестен] (pdf) читать постранично
Книга в формате pdf! Изображения и текст могут не отображаться!
[Настройки текста] [Cбросить фильтры]
•
Васильев Кирилл
•
Санкт-Петербург
•
Курсы MikroTik
•
Поддержка
2
Настройка RouterOS для
одновременной работы с
несколькими провайдерами
3
Multiwan
•
Обеспечить доступ к маршрутизатору
•
Организовать правильный выход с
маршрутизатора
•
Одновременный доступ к ресурсам «за» NAT
•
Распределение нагрузки по каналам
4
Доступ к
маршрутизатору
5
Доступ к
маршрутизатору
•
Управление маршрутизатором
•
•
Нормальная работа VPN
•
•
WinBox, ssh, snmp, icmp etc…
Point-to-Point и IP Туннели, а также IPSec
А также другие сервисы CPU
6
Доступ к
маршрутизатору
•
Необходимо обеспечить выход с того же
самого интерфейса, с которого пришёл трафик
7
Prerouting
8
Prerouting
Ether1 Ether2
9
Prerouting
Conn Conn
Ether1 Ether2
10
Prerouting
Prerouting/GW/2.2.2.1
Prerouting/GW/1.1.1.1
Ether1 Ether2
11
Prerouting
Prerouting/GW/2.2.2.1
Ether1 Ether2
Prerouting/GW/1.1.1.1
12
Доступ к
маршрутизатору
•
Цепочка Prerouting
•
Маркируйте соединение на входе в маршрутизатор
•
Учитывайте в маркировке каждый шлюз
•
Учитывайте в маркировке интерфейс провайдера
•
Только для пакетов connection-state=new
•
Для удобства именуйте соединения с учётом IP адреса шлюза
•
«Prerouting/GW/1.1.1.1»
13
Доступ к
маршрутизатору
/ip firewall mangle
add chain=prerouting dst-address=1.1.1.0/29 in-interface=ether1 \
connection-state=new action=mark-connection \
new-connection-mark=Prerouting/GW/1.1.1.1 passthrough=no
add chain=prerouting dst-address=2.2.2.0/29 in-interface=ether2 \
connection-state=new action=mark-connection \
new-connection-mark=Prerouting/GW/2.2.2.1 passthrough=no
14
Доступ к
маршрутизатору
•
На выходе из маршрутизатора, все пакеты в именованном
соединении отправляем в отдельную таблицу маршрутизации
•
Трафик должен вернуться в тот же интерфейс
маршрутизатора, с которого пришёл
•
Данный трафик должен уйти с тем же source адресом, на
который destination адрес он пришёл
15
Prerouting
Ether1 Ether2
16
Output
Ether1 Ether2
17
Output
Prerouting/GW/2.2.2.1
Prerouting/GW/1.1.1.1
Ether1 Ether2
18
Output
Prerouting/GW/2.2.2.1
Prerouting/GW/1.1.1.1
Ether1 Ether2
19
Доступ к
маршрутизатору
/ip firewall mangle
add chain=output connection-mark=Prerouting/GW/1.1.1.1 \
action=mark-routing new-routing-mark=Next-Hop/1.1.1.1 \
passthrough=no
add chain=output connection-mark=Prerouting/GW/2.2.2.1 \
action=mark-routing new-routing-mark=Next-Hop/2.2.2.1 \
passthrough=no
20
Доступ к
маршрутизатору
•
Создайте таблицу маршрутизации, где
уникальность маршрута определяется не IP
адресом, а адресом nexthop
•
Данная таблица должна «смотреть только в
себя»
•
Проверка доступности шлюза check-gatawey не
имеет смысла
21
Доступ к
маршрутизатору
•
Нет необходимости NATить данный трафик
22
Output
Ether2
Prerouting/GW/2.2.2.1
Prerouting/GW/1.1.1.1
Ether1 Ether2
23
Ether1
Доступ к
маршрутизатору
/ip route
add gateway=1.1.1.1 routing-mark=Next-Hop/1.1.1.1
add gateway=2.2.2.1 routing-mark=Next-Hop/2.2.2.1
/ip route rule
add action=lookup-only-in-table routing-mark=Next-Hop/1.1.1.1 \
table=Next-Hop/1.1.1.1
add action=lookup-only-in-table routing-mark=Next-Hop/2.2.2.1 \
table=Next-Hop/2.2.2.1
24
Выход с маршрутизатора
25
Выход с маршрутизатора
•
Подключение к внешним сервисам с
маршрутизатора
•
VPN, IP Туннели и IPSec
•
Функционал RouterOS, где можно указать
source или local адрес
26
Выход с маршрутизатора
•
Цепочка Output
•
Нет возможности определить исходящий интерфейс, для
определения внутрисетевого трафика
•
Используйте префиксы BOGON для исключения
внутрисетевого трафика
•
Учитывайте каждую подсеть
•
Используйте существующую именную таблицу маршрутизации
27
Bogon / RFC5735
0.0.0.0/8
10.0.0.0/8
127.0.0.0/8
169.254.0.0/16
172.16.0.0/12
192.0.0.0/24
192.0.2.0/24
192.88.99.0/24
192.168.0.0/16
198.18.0.0/15
28
198.51.100.0/24
203.0.113.0/24
224.0.0.0/4
240.0.0.0/4
255.255.255.255/32
Выход с маршрутизатора
/ip firewall mangle
add chain=output src-address=1.1.1.0/29 dst-address-list=!BOGON \
action=mark-routing new-routing-mark=Next-Hop/1.1.1.1 \
passthrough=no
add chain=output src-address=2.2.2.0/29 dst-address-list=!BOGON \
action=mark-routing new-routing-mark=Next-Hop/2.2.2.1 \
passthrough=no
29
Выход с маршрутизатора
•
Нет необходимости NATить данный трафик
30
Выход с маршрутизатора
Достаточно ли данных настроек для управления
маршрутизатором?
31
Выход с маршрутизатора
32
Выход с маршрутизатора
•
Необходим unicast активный маршрут в таблице MAIN
•
Используйте пустой Bridge, как loopback интерфейс
•
Создайте default route через loopback интерфейс
•
Укажите максимальную distance для маршрута
•
Используйте pref-src для определения src IP адреса
остального трафика
33
Выход с маршрутизатора
/interface bridge
add name=Br-Loopback
/ip route
add gateway=Br-Loopback distance=254 pref-src=1.1.1.2
34
Доступ «за» NAT
35
Доступ «за» NAT
•
Одновременный доступ к внутренним сервисам
•
CDN, SMTP, WEB, etc…
•
DNS Round Robin, как вариант распределения
внешней нагрузки на каналы, современные браузеры
замечательно работают с данной технологией и
отрабатывают отказ
36
Доступ «за» NAT
Настройте dst NAT так,
Последние комментарии
2 часов 45 минут назад
2 часов 46 минут назад
2 часов 54 минут назад
2 часов 58 минут назад
10 часов 40 минут назад
11 часов 20 минут назад