Files
bgp-server/config/bird.conf
T
2025-07-11 19:24:43 +07:00

104 lines
2.6 KiB
Plaintext

# BIRD Configuration for BGP Server
# Ubuntu 24.04
# Logging configuration
log "/var/log/bird/bird.log" all;
log stderr all;
# Router ID (замените на ваш IP адрес)
router id 192.168.1.1;
# Protocol configuration
protocol device {
scan time 10;
}
protocol direct {
disabled;
}
protocol kernel {
disabled;
}
# Таблица для BGP маршрутов
table bgp_table;
# Статическая таблица маршрутов
protocol static {
# Маршруты будут загружаться из файла prefixes.txt
# через скрипт load_prefixes.py
table bgp_table;
# Пример статических маршрутов
# route 192.168.1.0/24 via 192.168.1.1;
# route 10.0.1.0/24 via 10.0.1.1;
}
# BGP Configuration
# Принимаем соединения от любых пиров
protocol bgp {
# Локальные настройки
local as 65001;
# Настройки для всех пиров
hold time 90;
keepalive time 30;
startup hold time 240;
# Принимаем соединения от любых IP
listen bgp port 179;
# Настройки для пиров
import none; # Не импортируем маршруты от пиров
export all; # Экспортируем все маршруты пирам
# Настройки для статических маршрутов
import where source = RTS_STATIC;
export where source = RTS_STATIC;
# MD5 аутентификация (опционально)
# password "your_bgp_password";
# Настройки для больших таблиц маршрутизации
table limit 100000;
# Настройки для community
import filter {
# Принимаем маршруты с community
if bgp_community.matches(65001:*) then {
accept;
}
reject;
};
export filter {
# Экспортируем маршруты с community
if source = RTS_STATIC then {
bgp_community.add(65001:100);
accept;
}
reject;
};
}
# Фильтры для community
filter community_filter {
if bgp_community.matches(65001:*) then {
accept;
}
reject;
}
# Функция для добавления community
function add_community() {
bgp_community.add(65001:100);
}
# Настройки для мониторинга
protocol pipe {
table master;
peer table bgp_table;
import all;
export none;
}