104 lines
2.6 KiB
Plaintext
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;
|
|
} |