Re: События с линком Wireguard
On Sun, Aug 07, 2022 at 11:01:16PM +0300, Andrey Jr. Melnikov wrote:
> Eugene Berdnikov <bd4@protva.ru> wrote:
>
> > Спецификация GRE не регламентирует поведение инкапсулятора, который
> > может мониторить состояние туннеля, либо нет, по своему усмотрению.
> > Так что вендоры вольны реализовать над GRE любые модели поведения:
> > как голый GRE (stateless), так и l2tp (например) со своими таймерами.
> Да оно вообще ничего не регламентирует. Как и прохождение через кривые
> провайдерские NAT'ы и прочие перелести современных инетрнетов.
В 1994 году об этих современных реалиях можно было лишь гадать... Многие
сетевики, насколько я помню, считали что мир пойдёт в сторону технологий
source routing, в том же RFC1701 для GRE есть целая пачка заготовок
на этот счёт. Но к концу 90х явно стал побеждать привычный нам NAT.
Однако явторы GRE не были совсем уж тупы, они также ввели поле "key",
которое дало потом возможность делать трекинг коннекций на шлюзе и
выходить за NAT. Благодаря этому полю GRE до сих пор полужив.
> > Но задача, которая обсуждается здесь, более высокого уровня: что делать,
> > если машрут через туннель недоступен. Сам инкапсулятор этого не знает.
> > И даже если он мониторит состояния линка и может передать его на уровень
> > дивайса (link up/down) или на 3-й уровнь (icmp-unreach и т.п.), варианты
> > вида "переключить маршрут" выходят за рамки p2p-туннеля. Для этого нужен
> > BGP/OSPF/etc, а GRE тут просто низший уровень, который задачу не решает.
> В оригинале автор сомневался, что решение "скриптик с wg show" это не
> профессионально и всё такое, а дальше - понеслось.
В общем, он правильно сомневается: bgpd или ospfd отслеживают события
"link up/down" гораздо надёжнее, чем самопальные скрипты. Хотя бы потому,
что между двумя poll-ами вида "wg show" можно пропустить события
link down-up, скрипт этого не заметит, а вот ядро маршрутик-то через
могнувший дивайс аккуратно удалит. С push-ами через netlink таких пропусков
не будет. У quagga с этим всё вроде нормально, про bird не скажу, но
думаю что у него аналогично.
--
Eugene Berdnikov
Reply to: