Jump to content
  • 0
Sign in to follow this  
gaaronk

Wireguard always UP

Question

А можно опцию для Wireguard интереса что бы не делать ему down, если не было хендшейка и не было трафика более 120 секунд?

Share this post


Link to post
Share on other sites

15 answers to this question

Recommended Posts

  • 0
16 минут назад, gaaronk сказал:

А можно опцию для Wireguard интереса что бы не делать ему down, если не было хендшейка и не было трафика более 120 секунд?

Вот как раз для этого создатели wireguard предусмотрели опцию Persistent Keepalives, в вебе кинетика она называется "Проверка активности" в настройках пира. 

Share this post


Link to post
Share on other sites
  • 0

Нет, Keepalives это для пробития NAT. А тут оба пира на белых адресах. На кинетике когда нет хендшейка - интерфейс идет в down, и из таблицы попадает маршрут привязанный к этому интерфейсу.

На linux - нет хендшейка и нет себе. 

Хочется по ряду причин не использовать keepalive. Трафик бегает в этом туннеле очень редко. И хочется объем трафика минимизировать по максимуму.

Share this post


Link to post
Share on other sites
  • 0

Это не для "пробития NAT", а как раз для того, чтобы state соединения оставался up, что и приводит к тому, что statefull фаерволлы считают что соединение продолжается. Wireguard,как пишут его авторы, старается оставаться как можно более тихим, это by design. 

 

Share this post


Link to post
Share on other sites
  • 0

Ну тогда процитирую.

 

PersistentKeepalive — a seconds interval, between 1 and 65535 inclusive, of how often to send an authenticated empty packet to the peer for the purpose of keeping a stateful firewall or NAT mapping valid persistently.

Между пирами у меня нет ни NAT, ни stateful firewall.

Share this post


Link to post
Share on other sites
  • 0
17 минут назад, gaaronk сказал:

Ну тогда процитирую.

 

PersistentKeepalive — a seconds interval, between 1 and 65535 inclusive, of how often to send an authenticated empty packet to the peer for the purpose of keeping a stateful firewall or NAT mapping valid persistently.

Между пирами у меня нет ни NAT, ни stateful firewall.

Ну а я не это же самое вам и написал? Ладно опустим PersistentKeepalive. Вот вы пишете, что интерфейс идет в down, но это же не так, вам не придется включать его снова. Как только трафик пойдет в него он его прекрасно отработает. Проблема насколько я понимаю именно в этом: "из таблицы попадает маршрут привязанный к этому интерфейсу". Ну так и пишите об этом, а не о том, что интерфейс видите ли идет в down. Никуда он не идет, как я написал выше, он просто сидит и ждет когда снова в него трафик пустите. А вот то, что из таблицы пропадают маршруты, это и связано, насколько я понимаю, с тем, что кинетик судит о состоянии соединения по state, т.к. внутри там все тот же линуксовый netfilter - statefull firewall. Можно ли сделать, чтобы маршрут не пропадал из таблицы при простое интерфейса вот это, как раз, вопрос к разработчикам. Попробуем спросить @Le ecureuil

Edited by werldmgn

Share this post


Link to post
Share on other sites
  • 0

Как же не идет, когда идет?

было state: up стало state: down

Это никак не связанно с netfilter. Вообще никак. 

А трафик изнутри не пойдет. Нет маршрута в интерфейс. Да, это видимо внутрення логика - state стал down - убрали маршрут. Тут два варианта - обвешивать эту логику всякими if на предмет - это интерфейс Wireguard или нет.

Или отключить выключение состояния интерфейса, что проще, как мне кажется.

Share this post


Link to post
Share on other sites
  • 0
3 минуты назад, gaaronk сказал:

А трафик изнутри не пойдет.

Вот специально убрал PersistentKeepalive, на другом конце его тоже нет. Маршруты добавленые через этот интерфейс ушли, как вы и сказали. Но вот я посылаю пинг, и другая сторона мне сразу отвечает, т.к.маршрут в подсеть, обозначенную маской на интерфейсе остается. Так что трафик изнутри пойдет. Вопрос и остается только с пропаданием маршрутов.

Share this post


Link to post
Share on other sites
  • 0

Изнутри инициируют соединение не в подсеть на интерфейсе, а сеть лежащую за интерфейсом. И это как раз проблема. Конечно пинги на стыковочные адреса работают.

Share this post


Link to post
Share on other sites
  • 0
14 минуты назад, gaaronk сказал:

Как же не идет, когда идет?

было state: up стало state: down

Вот прошло время, маршруты исчезли, пир стал "сереньким"

image.thumb.png.28306893c3ab01599106e4876344a234.png

Но интерфейс все равно up:

(config)> show interface Wireguard0

               id: Wireguard0
            index: 0
             type: Wireguard
      description: Waffle
   interface-name: Wireguard0
             link: down
        connected: no
            state: up
              mtu: 1420
         tx-queue: 50
          address: 10.15.57.2
             mask: 255.255.254.0
           uptime: 936
           global: no
   security-level: public

        wireguard:
           public-key: mAS
          listen-port: 49112
               status: up
Интерфейс не выключается, и если в него пойдет траффик, он снова скажет link up, connected yes

Share this post


Link to post
Share on other sites
  • 0

Ну то есть вы теперь согласны, что интерфейс остается up? Проблему с пропаданием маршрутов я не отрицал.

4 минуты назад, gaaronk сказал:

Изнутри инициируют соединение не в подсеть на интерфейсе, а сеть лежащую за интерфейсом. 

Вы пытаетесь буквоедствовать, тем не менее неверно. прочитайте внимавтельно, я написал "в подсеть, обозначенную маской на интерфейсе", да наверное коряво выразился, но, тем не менее, я не писал "в подсеть на интерфейсе"

Share this post


Link to post
Share on other sites
  • 0

Для того что бы в интерфейс пошел трафик,  он стал  link up, connected yes надо что бы трафик туда попал. Хост изнутри пингует дальнюю с сторону. Маршрута нет, и пинг идет не в интерфейс wireguard,  а в дефолт. Нет трафика - нет маршрута. А нет маршрута - нет трафика.

Share this post


Link to post
Share on other sites
  • 0
1 минуту назад, gaaronk сказал:

Для того что бы в интерфейс пошел трафик,  он стал  link up, connected yes надо что бы трафик туда попал. Хост изнутри пингует дальнюю с сторону. Маршрута нет, и пинг идет не в интерфейс wireguard,  а в дефолт. Нет трафика - нет маршрута. А нет маршрута - нет трафика.

Когда вы пингуете "стыковочный адрес" трафик тоже идет  в интерфейс wireguard. Я не понимаю, что вы мне пытаетесь доказать?  Маршруты пропадают, с этим я согласен, здесь нужна реакция разработчиков. Но интерфейс не идет в down, говоря, что "было state: up стало state: down" - вы ошибаетесь, в посте выше я вам продемонстрировал.

Share this post


Link to post
Share on other sites
  • 0

Хорошо. Насчет state я ошибся. Не проблема. Посмотрел не туда. Туда это вот - link: down. Не суть.

Суть что пропадает маршрут, это да.

Share this post


Link to post
Share on other sites
  • 0

Если keepalive раз в 120 секунд - это непосильно, то не знаю чем тут можно помочь.

Share this post


Link to post
Share on other sites
  • 0

Ну это тоже ответ. Если фича нужна одному пользователю - смысла тратится на нее действительно нет.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...