Update BGP configuration across multiple files to reflect new IP addresses. Changed router ID and neighbor IP in docker-compose.yml, Dockerfile, frr.conf, and related documentation. Adjusted subnet in network settings and prefixes in data files for consistency. Enhanced scripts to utilize updated environment variables.
Build and Push Docker Image / build (push) Successful in 8m1s

This commit is contained in:
2025-07-11 18:22:16 +07:00
parent 170553612d
commit 58f1405fef
8 changed files with 38 additions and 43 deletions
+2 -2
View File
@@ -39,8 +39,8 @@ EXPOSE 179
# Установка переменных окружения по умолчанию
ENV BGP_LOCAL_AS=65000
ENV BGP_ROUTER_ID=192.168.1.100
ENV BGP_NEIGHBOR_IP=192.168.1.1
ENV BGP_ROUTER_ID=192.168.100.99
ENV BGP_NEIGHBOR_IP=192.168.0.254
ENV BGP_NEIGHBOR_AS=65001
ENV BGP_HOLD_TIME=90
ENV BGP_KEEPALIVE=30
+6 -6
View File
@@ -118,15 +118,15 @@ docker exec bgp-server python3 /app/scripts/load_prefixes.py --test
```routeros
# Создание BGP экземпляра
/routing bgp instance
add name=bgp-server as=65001 router-id=192.168.1.1
add name=bgp-server as=65001 router-id=192.168.0.254
# Настройка BGP сети
/routing bgp network
add network=192.168.1.0/24
add network=192.168.0.0/24
# Настройка BGP пира
/routing bgp peer
add name=bgp-server remote-address=192.168.1.100 remote-as=65000 instance=bgp-server
add name=bgp-server remote-address=192.168.100.99 remote-as=65000 instance=bgp-server
# Включение BGP
/routing bgp instance set bgp-server disabled=no
@@ -226,7 +226,7 @@ docker system info
```powershell
# Проверка сетевой связности
docker exec bgp-server ping 192.168.1.1
docker exec bgp-server ping 192.168.0.254
# Проверка конфигурации FRR
docker exec bgp-server vtysh -c "show running-config"
@@ -260,8 +260,8 @@ docker run -d \
-v ${PWD}/data:/app/data:ro \
-v ${PWD}/logs:/app/logs \
-e BGP_LOCAL_AS=65000 \
-e BGP_ROUTER_ID=192.168.1.100 \
-e BGP_NEIGHBOR_IP=192.168.1.1 \
-e BGP_ROUTER_ID=192.168.100.99 \
-e BGP_NEIGHBOR_IP=192.168.0.254 \
-e BGP_NEIGHBOR_AS=65001 \
-e BGP_HOLD_TIME=90 \
-e BGP_KEEPALIVE=30 \
+8 -8
View File
@@ -135,8 +135,8 @@ services:
- ./logs:/app/logs
environment:
- BGP_LOCAL_AS=65000
- BGP_ROUTER_ID=192.168.1.100
- BGP_NEIGHBOR_IP=192.168.1.1
- BGP_ROUTER_ID=192.168.100.99
- BGP_NEIGHBOR_IP=192.168.0.254
- BGP_NEIGHBOR_AS=65001
networks:
- bgp-network
@@ -149,7 +149,7 @@ networks:
driver: bridge
ipam:
config:
- subnet: 192.168.1.0/24
- subnet: 192.168.100.0/24
```
### Шаг 4: Настройка RouterOS
@@ -159,15 +159,15 @@ networks:
```routeros
# Создание BGP экземпляра
/routing bgp instance
add name=bgp-server as=65001 router-id=192.168.1.1
add name=bgp-server as=65001 router-id=192.168.0.254
# Настройка BGP сети
/routing bgp network
add network=192.168.1.0/24
add network=192.168.0.0/24
# Настройка BGP пира
/routing bgp peer
add name=bgp-server remote-address=192.168.1.100 remote-as=65000 instance=bgp-server
add name=bgp-server remote-address=192.168.100.99 remote-as=65000 instance=bgp-server
# Включение BGP
/routing bgp instance set bgp-server disabled=no
@@ -258,7 +258,7 @@ docker exec bgp-server vtysh -c "show interface"
docker exec bgp-server vtysh -c "show ip bgp summary"
# Детальная информация о соседе
docker exec bgp-server vtysh -c "show ip bgp neighbors 192.168.1.1"
docker exec bgp-server vtysh -c "show ip bgp neighbors 192.168.0.254"
```
### Проверка маршрутов
@@ -296,7 +296,7 @@ docker exec bgp-server python3 /app/scripts/load_prefixes.py --test
1. Проверьте сетевую связность:
```powershell
docker exec bgp-server ping 192.168.1.1
docker exec bgp-server ping 192.168.0.254
```
2. Проверьте конфигурацию BGP:
+5 -10
View File
@@ -1,14 +1,9 @@
# Основные префиксы для анонсирования
# Формат: IP/маска (например: 192.168.1.0/24)
# Приватные сети
192.168.1.0/24
192.168.2.0/24
192.168.10.0/24
# Основные префиксы
192.168.100.0/24
192.168.101.0/24
10.0.0.0/8
172.16.0.0/12
# Дополнительные сети
# Дополнительные префиксы
203.0.113.0/24
198.51.100.0/24
203.0.113.1/32
198.51.100.0/24
+3 -3
View File
@@ -12,8 +12,8 @@ services:
- ./logs:/app/logs
environment:
- BGP_LOCAL_AS=65000
- BGP_ROUTER_ID=192.168.1.100
- BGP_NEIGHBOR_IP=192.168.1.1
- BGP_ROUTER_ID=192.168.100.99
- BGP_NEIGHBOR_IP=192.168.0.254
- BGP_NEIGHBOR_AS=65001
- BGP_HOLD_TIME=90
- BGP_KEEPALIVE=30
@@ -29,4 +29,4 @@ networks:
driver: bridge
ipam:
config:
- subnet: 192.168.1.0/24
- subnet: 192.168.100.0/24
+11 -11
View File
@@ -9,23 +9,23 @@
frr version 8.5.2
frr defaults traditional
hostname bgp-server
log syslog informational
log syslog info
service integrated-vtysh-config
# Настройки BGP
router bgp 65000
bgp router-id 192.168.1.100
bgp router-id 192.168.100.99
bgp log-neighbor-changes
neighbor 192.168.1.1 remote-as 65001
neighbor 192.168.1.1 description RouterOS Client
neighbor 192.168.1.1 timers 30 90
neighbor 192.168.1.1 capability graceful-restart
neighbor 192.168.1.1 soft-reconfiguration inbound
neighbor 192.168.0.254 remote-as 65001
neighbor 192.168.0.254 description RouterOS Client
neighbor 192.168.0.254 timers 30 90
neighbor 192.168.0.254 capability graceful-restart
neighbor 192.168.0.254 soft-reconfiguration inbound
!
address-family ipv4 unicast
neighbor 192.168.1.1 activate
neighbor 192.168.1.1 route-map OUTBOUND out
neighbor 192.168.1.1 route-map INBOUND in
neighbor 192.168.0.254 activate
neighbor 192.168.0.254 route-map OUTBOUND out
neighbor 192.168.0.254 route-map INBOUND in
exit-address-family
!
@@ -39,7 +39,7 @@ route-map INBOUND deny 10
# Настройки интерфейса
interface eth0
ip address 192.168.1.100/24
ip address 192.168.100.99/24
!
# Статические маршруты (будут добавлены динамически)
+2 -2
View File
@@ -16,8 +16,8 @@ def generate_frr_config():
# Получение настроек из переменных окружения
local_as = get_env_var('BGP_LOCAL_AS', '65000')
router_id = get_env_var('BGP_ROUTER_ID', '192.168.1.100')
neighbor_ip = get_env_var('BGP_NEIGHBOR_IP', '192.168.1.1')
router_id = get_env_var('BGP_ROUTER_ID', '192.168.100.99')
neighbor_ip = get_env_var('BGP_NEIGHBOR_IP', '192.168.0.254')
neighbor_as = get_env_var('BGP_NEIGHBOR_AS', '65001')
hold_time = get_env_var('BGP_HOLD_TIME', '90')
keepalive = get_env_var('BGP_KEEPALIVE', '30')
+1 -1
View File
@@ -50,7 +50,7 @@ if (-not (Test-Path $prefixesFile)) {
@"
# Default prefixes file
# Add your prefixes here, one per line
192.168.1.0/24
192.168.100.0/24
10.0.0.0/8
172.16.0.0/12
"@ | Out-File -FilePath $prefixesFile -Encoding UTF8