update
This commit is contained in:
@@ -262,4 +262,103 @@ graph TB
|
||||
- `<YOUR_WAN_IP>` — ваш внешний IP
|
||||
- Аналогично для остальных туннелей, меняя адресацию по таблице выше
|
||||
|
||||
---
|
||||
|
||||
---
|
||||
|
||||
## OSPF: Оптимальная настройка для GRE туннелей
|
||||
|
||||
В данной архитектуре используется OSPF для динамической маршрутизации между всеми GRE туннелями. Основной провайдер — Ростелеком, резервный — МТС. Для HomeLab (например, 192.168.111.0/24) весь трафик направляется через МТС с помощью policy routing (route-table=MTS).
|
||||
|
||||
### Рекомендации по настройке
|
||||
|
||||
1. **OSPF cost**
|
||||
- Для GRE туннелей через Ростелеком выставить меньший cost (например, 10)
|
||||
- Для GRE туннелей через МТС — больший cost (например, 100)
|
||||
- Это обеспечит приоритет Ростелекома для всего трафика, кроме HomeLab
|
||||
|
||||
2. **Policy Based Routing (PBR) для HomeLab**
|
||||
- Для HomeLab (например, 192.168.111.0/24) настроить policy routing:
|
||||
- Весь исходящий трафик с HomeLab отправлять в route-table=MTS
|
||||
- В этой таблице основной маршрут — через МТС
|
||||
|
||||
3. **OSPF Instance и Area**
|
||||
- Использовать одну OSPF instance для всех туннелей (если нет особых требований)
|
||||
- Все GRE-интерфейсы добавить в одну area (обычно 0.0.0.0)
|
||||
|
||||
### Пример конфигурации OSPF на RouterOS
|
||||
|
||||
```shell
|
||||
# 1. Настройка OSPF instance
|
||||
/routing ospf instance
|
||||
set [ find default=yes ] router-id=10.100.0.1
|
||||
|
||||
# 2. Добавление GRE-интерфейсов в OSPF с разным cost
|
||||
/routing ospf interface
|
||||
add interface=gre-MSK-VPSVILLE-RTK cost=10 network-type=point-to-point
|
||||
add interface=gre-MSK-IHOR-RTK cost=10 network-type=point-to-point
|
||||
add interface=gre-SWE-HIPHOST-RTK cost=10 network-type=point-to-point
|
||||
|
||||
add interface=gre-MSK-VPSVILLE-MTS cost=100 network-type=point-to-point
|
||||
add interface=gre-MSK-IHOR-MTS cost=100 network-type=point-to-point
|
||||
add interface=gre-SWE-HIPHOST-MTS cost=100 network-type=point-to-point
|
||||
|
||||
# 3. Добавление сетей в OSPF
|
||||
/routing ospf network
|
||||
add network=10.100.0.0/16 area=backbone
|
||||
|
||||
# 4. Policy Based Routing для HomeLab
|
||||
/ip route
|
||||
add dst-address=0.0.0.0/0 gateway=<MTS-GW> routing-table=MTS
|
||||
/ip firewall mangle
|
||||
add chain=prerouting src-address=192.168.111.0/24 action=mark-routing new-routing-mark=MTS
|
||||
|
||||
# <MTS-GW> — адрес следующего хопа через МТС (например, 10.100.1.2)
|
||||
```
|
||||
|
||||
#### Логика работы
|
||||
- OSPF сам будет выбирать основной маршрут через Ростелеком (cost ниже).
|
||||
- Если основной канал падает, трафик автоматически пойдёт через МТС.
|
||||
- Для HomeLab весь трафик всегда идёт через МТС, независимо от состояния каналов, благодаря policy routing.
|
||||
|
||||
---
|
||||
|
||||
---
|
||||
|
||||
## Failover между московскими туннелями (route-table=MSK)
|
||||
|
||||
Для клиентов/серверов, использующих отдельную таблицу маршрутизации `MSK`, реализован автоматический failover между московскими GRE туннелями. Если один из туннелей (MSK-VPSVILLE или MSK-IHOR) падает, весь трафик автоматически идёт через оставшийся рабочий туннель.
|
||||
|
||||
### Как это работает
|
||||
- OSPF анонсирует маршруты через оба московских туннеля.
|
||||
- Если один туннель недоступен, маршрут через него исчезает из таблицы MSK.
|
||||
- Policy Based Routing (PBR) направляет трафик нужных клиентов в таблицу MSK.
|
||||
- В таблице MSK всегда есть маршрут через рабочий туннель.
|
||||
|
||||
### Пример конфигурации на RouterOS
|
||||
|
||||
```shell
|
||||
# 1. Маркируем трафик для route-table=MSK
|
||||
/ip firewall mangle
|
||||
add chain=prerouting src-address=192.168.222.0/24 action=mark-routing new-routing-mark=MSK
|
||||
|
||||
# 2. В таблице MSK маршруты через оба московских туннеля
|
||||
/ip route
|
||||
# OSPF сам добавит маршруты через gre-MSK-VPSVILLE и gre-MSK-IHOR, если они живы
|
||||
# Если хотите вручную:
|
||||
add dst-address=0.0.0.0/0 gateway=10.100.1.2 routing-table=MSK distance=1
|
||||
add dst-address=0.0.0.0/0 gateway=10.100.3.2 routing-table=MSK distance=2
|
||||
|
||||
# 3. OSPF интерфейсы для московских туннелей
|
||||
/routing ospf interface
|
||||
add interface=gre-MSK-VPSVILLE-RTK cost=10 network-type=point-to-point
|
||||
add interface=gre-MSK-IHOR-RTK cost=10 network-type=point-to-point
|
||||
add interface=gre-MSK-VPSVILLE-MTS cost=100 network-type=point-to-point
|
||||
add interface=gre-MSK-IHOR-MTS cost=100 network-type=point-to-point
|
||||
```
|
||||
|
||||
- OSPF будет держать маршруты только через живые туннели.
|
||||
- Если оба туннеля живы — оба маршрута в таблице, основной с меньшим distance.
|
||||
- Если один туннель падает — маршрут через него исчезает, трафик идёт через оставшийся.
|
||||
|
||||
---
|
||||
Reference in New Issue
Block a user