255 lines
6.5 KiB
Markdown
255 lines
6.5 KiB
Markdown
# Настройка RouterOS для работы с BGP сервером
|
|
|
|
## Требования
|
|
|
|
- RouterOS 7.14 или выше
|
|
- Доступ к командной строке RouterOS (WinBox, SSH, или Console)
|
|
- Сетевое подключение к BGP серверу
|
|
|
|
## Схема подключения
|
|
|
|
```
|
|
RouterOS (192.168.1.1) ←→ BGP Server (192.168.1.100)
|
|
AS: 65001 AS: 65000
|
|
```
|
|
|
|
## Пошаговая настройка
|
|
|
|
### Шаг 1: Проверка сетевого подключения
|
|
|
|
Убедитесь, что RouterOS может достичь BGP сервера:
|
|
|
|
```routeros
|
|
/ping 192.168.1.100 count=4
|
|
```
|
|
|
|
Ожидаемый результат:
|
|
```
|
|
HOST SIZE TTL TIME STATUS
|
|
192.168.1.100 56 64 0.5ms echo reply
|
|
192.168.1.100 56 64 0.4ms echo reply
|
|
192.168.1.100 56 64 0.5ms echo reply
|
|
192.168.1.100 56 64 0.4ms echo reply
|
|
sent=4 received=4 packet-loss=0% min-rtt=0.4ms avg-rtt=0.5ms max-rtt=0.5ms
|
|
```
|
|
|
|
### Шаг 2: Создание BGP экземпляра
|
|
|
|
```routeros
|
|
/routing bgp instance
|
|
add name=bgp-server as=65001 router-id=192.168.1.1
|
|
```
|
|
|
|
### Шаг 3: Настройка BGP сети
|
|
|
|
```routeros
|
|
/routing bgp network
|
|
add network=192.168.1.0/24
|
|
```
|
|
|
|
### Шаг 4: Настройка BGP пира
|
|
|
|
```routeros
|
|
/routing bgp peer
|
|
add name=bgp-server remote-address=192.168.1.100 remote-as=65000 instance=bgp-server
|
|
```
|
|
|
|
### Шаг 5: Включение BGP экземпляра
|
|
|
|
```routeros
|
|
/routing bgp instance set bgp-server disabled=no
|
|
```
|
|
|
|
### Шаг 6: Проверка статуса BGP сессии
|
|
|
|
```routeros
|
|
/routing bgp peer print
|
|
```
|
|
|
|
Ожидаемый результат:
|
|
```
|
|
Flags: X - disabled, I - invalid, D - dynamic, E - established
|
|
0 name="bgp-server" instance=bgp-server remote-address=192.168.1.100 remote-as=65000
|
|
tcp-md5-key="" nexthop-choice=default multihop=no route-reflect=no hold-time=3m
|
|
keepalive-time=1m address-families=ip,ipv6 default-originate=never remove-private-as=no
|
|
as-override=no passive=no use-bfd=no cisco-vpls-nlri-len-fmt=no add-path=0/0
|
|
remove-private-as-if-export=no in-filter="" out-filter=""
|
|
state=established uptime=1m30s prefix-count=8 updates-sent=8 updates-received=0
|
|
withdrawn-sent=0 withdrawn-received=0
|
|
```
|
|
|
|
## Дополнительные настройки
|
|
|
|
### Настройка MD5 аутентификации (рекомендуется)
|
|
|
|
```routeros
|
|
/routing bgp peer set bgp-server tcp-md5-key="your-secure-password"
|
|
```
|
|
|
|
### Настройка фильтров (опционально)
|
|
|
|
Создание фильтра для входящих маршрутов:
|
|
|
|
```routeros
|
|
/routing filter
|
|
add name=bgp-in chain=input protocol=bgp
|
|
add name=bgp-in chain=input protocol=bgp action=accept
|
|
```
|
|
|
|
Применение фильтра к BGP пиру:
|
|
|
|
```routeros
|
|
/routing bgp peer set bgp-server in-filter=bgp-in
|
|
```
|
|
|
|
### Настройка таймаутов
|
|
|
|
```routeros
|
|
/routing bgp peer set bgp-server hold-time=90s keepalive-time=30s
|
|
```
|
|
|
|
## Мониторинг и диагностика
|
|
|
|
### Проверка статуса BGP сессии
|
|
|
|
```routeros
|
|
/routing bgp peer print detail
|
|
```
|
|
|
|
### Просмотр полученных маршрутов
|
|
|
|
```routeros
|
|
/routing bgp routes print
|
|
```
|
|
|
|
### Просмотр логов BGP
|
|
|
|
```routeros
|
|
/log print where topics~"bgp"
|
|
```
|
|
|
|
### Проверка статистики BGP
|
|
|
|
```routeros
|
|
/routing bgp peer print stats
|
|
```
|
|
|
|
## Устранение неполадок
|
|
|
|
### Проблема: BGP сессия не устанавливается
|
|
|
|
1. Проверьте сетевое подключение:
|
|
```routeros
|
|
/ping 192.168.1.100
|
|
```
|
|
|
|
2. Проверьте настройки BGP пира:
|
|
```routeros
|
|
/routing bgp peer print detail
|
|
```
|
|
|
|
3. Проверьте логи:
|
|
```routeros
|
|
/log print where topics~"bgp"
|
|
```
|
|
|
|
### Проблема: Маршруты не получаются
|
|
|
|
1. Проверьте статус сессии:
|
|
```routeros
|
|
/routing bgp peer print
|
|
```
|
|
|
|
2. Проверьте фильтры:
|
|
```routeros
|
|
/routing filter print
|
|
```
|
|
|
|
3. Проверьте полученные маршруты:
|
|
```routeros
|
|
/routing bgp routes print
|
|
```
|
|
|
|
### Проблема: Неправильные AS номера
|
|
|
|
Убедитесь, что AS номера настроены правильно:
|
|
|
|
```routeros
|
|
/routing bgp instance print
|
|
/routing bgp peer print
|
|
```
|
|
|
|
## Полезные команды
|
|
|
|
### Экспорт конфигурации BGP
|
|
|
|
```routeros
|
|
/export compact where routing~"bgp"
|
|
```
|
|
|
|
### Сброс BGP сессии
|
|
|
|
```routeros
|
|
/routing bgp peer reset bgp-server
|
|
```
|
|
|
|
### Просмотр детальной информации о пире
|
|
|
|
```routeros
|
|
/routing bgp peer print detail where name="bgp-server"
|
|
```
|
|
|
|
### Мониторинг в реальном времени
|
|
|
|
```routeros
|
|
/routing bgp peer monitor bgp-server
|
|
```
|
|
|
|
## Безопасность
|
|
|
|
### Рекомендации по безопасности
|
|
|
|
1. **Используйте MD5 аутентификацию**
|
|
2. **Настройте фильтры для входящих маршрутов**
|
|
3. **Ограничьте доступ к BGP порту (179)**
|
|
4. **Регулярно проверяйте логи**
|
|
|
|
### Настройка firewall для BGP
|
|
|
|
```routeros
|
|
/ip firewall filter
|
|
add chain=input protocol=tcp dst-port=179 src-address=192.168.1.100 action=accept comment="BGP from server"
|
|
add chain=input protocol=tcp dst-port=179 action=drop comment="Block other BGP"
|
|
```
|
|
|
|
## Автоматизация
|
|
|
|
### Скрипт для автоматической настройки
|
|
|
|
Создайте файл `bgp-setup.rsc`:
|
|
|
|
```routeros
|
|
# BGP Setup Script
|
|
/routing bgp instance
|
|
add name=bgp-server as=65001 router-id=192.168.1.1
|
|
|
|
/routing bgp network
|
|
add network=192.168.1.0/24
|
|
|
|
/routing bgp peer
|
|
add name=bgp-server remote-address=192.168.1.100 remote-as=65000 instance=bgp-server
|
|
|
|
/routing bgp instance set bgp-server disabled=no
|
|
|
|
:log info "BGP setup completed"
|
|
```
|
|
|
|
Загрузите и выполните скрипт:
|
|
|
|
```routeros
|
|
/import bgp-setup.rsc
|
|
```
|
|
|
|
## Заключение
|
|
|
|
После выполнения всех шагов RouterOS должен успешно установить BGP сессию с сервером и начать получать маршруты. Регулярно проверяйте статус сессии и логи для обеспечения стабильной работы. |