Что: 00d9a473e8c475152bafd316675dc3945ae64e3a
Когда: 2024-08-10 20:53:42+03:00
Темы: bgp
Снова смена OSPF на BGP Ради переключения контекста и отдыха, решил снова повозиться с тестовым кластером на работе, который когда-то (c7e63aec647725b80611c735b34f39474888c6cc) настраивал стажёр, где был поднят OSPF в стойке. Решил сделать простейшую задачу: подключать двумя Ethernet хвостами (не только одним) серверы в коммутатор, чтобы OSPF автоматом понял что есть несколько путей и появился бы failover (а то и ECMP). Был уверен, что OSPF весь из себя такой умный и легко сможет понять, что если он слышит через коммутатор себя самого, то значит просто двумя хвостами подключён. BIRD пишет сообщения что получен плохой пакет с таким же идентификатором маршрутизатора как и у него. И как бы типа в общем-то всё работает, но... маршрут постоянно прыгает и меняется то на один NIC, то на другой. Так что на практике ничего не работает. Пошёл к сетевикам, спросить это либо я криворукий, либо от OSPF многого хочу, либо ещё чего. Говорят, что OSPF такое не дюжит, действительно. Облом. Удручён. Ну не хочу я с L2 связываться, ибо нефиг. Додумался только до того, чтобы BGP поднять на них, ибо он уже point-to-point и коммутатор ему не помеха. Неприятно с ним то, что нет autodiscovery и нужно прописывать номера автономных систем. Но это мелочи. Избавился и дома от OSPF, снова, просто ради практики. Но с появлением 10GbE мне надо чтобы трафик до второго сервера, пускай даже с дополнительным hop-ом, но ходил через 10GbE соединения. В OSPF я это решал добавляя руками стоимость каналов. А в BGP такого нет. MED например имеет меньший приоритет чем проверка длины AS-пути. Вариантов как поменять приоритетность маршрутов в BGP -- масса. Возможно я творю ещё большую дичь, но пока сделал так: для каждого интерфейса (WAN, 1GbE или 10GbE) применяется export фильтры, который добавляет один из трёх community, типа метка по какому каналу он приходит. А в import фильтрах, если среди community есть только та, которая с меткой 10GbE, то priority увеличивается. До одного и того же хоста мой компьютер может дойти напрямую через WG туннели поверх 1GbE, через WG туннели до промежуточного сервера, с которого снова либо через 1GbE, либо через 10GbE соединения до сервера. В общем, много путей. Но только тот, кто проходит исключительно через 10GbE, будет иметь ровно один нужный мне community. Вроде работает всё как надо. До управления приоритетами в этом BGP, у меня на одном хосте могли быть выбраны маршруты через один интерфейс, а на другом через совершенно другой и трафик шёл вообще асимметрично. В DN42: https://dn42.eu/howto/BGP-communities community используются чтобы помечать и скорости и задержки и уровень безопасности каналов между хостами.
Сгенерирован: SGBlog 0.34.0