[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: События с линком Wireguard



Maksim Dmitrichenko <dmitrmax@gmail.com> wrote:

> Что-то не возьму в толк. Вот поднимаю я туннель с Wireguard. После этого у
> меня создается линк, допустим wg0, если в конфиге есть PostUp-скрипт, то он
> выполняется. Но фактически нет никакого события, которое, кладёт линк,
> если, например, peer умер. В результате, если я, например, хочу настроить
> default route для зарубежного трафика в этот туннель, то если peer умрет,
> зарубежный трафик не будет ходить. Хотелось бы это событие как-то
> отлавливать и менять правила разметки трафика и policy forwarding'а, когда
> peer оживает или пропадает. Но как-то готовых средств я не нахожу.

У wireguard невозможно достоверно определить - умер линк или нет. ибо:

"By default, WireGuard tries to be as silent as possible when not being 
used; it is not a chatty protocol. For the most part, it only transmits
data when a peer wishes to send packets. When it's not being asked to
send packets, it stops sending packets until it is asked again."

> Кто-нибудь решил эту задачу в каком-то более менее промышленном виде, а не
> на коленке написанным скриптом, который с заданной периодичностью дергает
> wg show?

Флагман промышленности cisco со своим ip sla занимается тем-же самым -
костылянием условий вокруг ping & co. Только там это спрятано за ящиком
синтаксического сахара самобытного cli.

А поскольку wireguard это переусложнённый ipip туннель, то выбор тут
небольшой - наскриптовать ping/wg show или уже промышленно так, завести
bird2 с bgp и анонсить себе маршруты с удалённой стороны.


Reply to: