gaaronk Posted June 6, 2020 Share Posted June 6, 2020 А можно опцию для Wireguard интереса что бы не делать ему down, если не было хендшейка и не было трафика более 120 секунд? Quote Link to comment Share on other sites More sharing options...
0 Werld Posted June 6, 2020 Share Posted June 6, 2020 16 минут назад, gaaronk сказал: А можно опцию для Wireguard интереса что бы не делать ему down, если не было хендшейка и не было трафика более 120 секунд? Вот как раз для этого создатели wireguard предусмотрели опцию Persistent Keepalives, в вебе кинетика она называется "Проверка активности" в настройках пира. Quote Link to comment Share on other sites More sharing options...
0 gaaronk Posted June 6, 2020 Author Share Posted June 6, 2020 Нет, Keepalives это для пробития NAT. А тут оба пира на белых адресах. На кинетике когда нет хендшейка - интерфейс идет в down, и из таблицы попадает маршрут привязанный к этому интерфейсу. На linux - нет хендшейка и нет себе. Хочется по ряду причин не использовать keepalive. Трафик бегает в этом туннеле очень редко. И хочется объем трафика минимизировать по максимуму. Quote Link to comment Share on other sites More sharing options...
0 Werld Posted June 6, 2020 Share Posted June 6, 2020 Это не для "пробития NAT", а как раз для того, чтобы state соединения оставался up, что и приводит к тому, что statefull фаерволлы считают что соединение продолжается. Wireguard,как пишут его авторы, старается оставаться как можно более тихим, это by design. Quote Link to comment Share on other sites More sharing options...
0 gaaronk Posted June 6, 2020 Author Share Posted June 6, 2020 Ну тогда процитирую. 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. Quote Link to comment Share on other sites More sharing options...
0 Werld Posted June 6, 2020 Share Posted June 6, 2020 (edited) 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 June 6, 2020 by werldmgn Quote Link to comment Share on other sites More sharing options...
0 gaaronk Posted June 6, 2020 Author Share Posted June 6, 2020 Как же не идет, когда идет? было state: up стало state: down Это никак не связанно с netfilter. Вообще никак. А трафик изнутри не пойдет. Нет маршрута в интерфейс. Да, это видимо внутрення логика - state стал down - убрали маршрут. Тут два варианта - обвешивать эту логику всякими if на предмет - это интерфейс Wireguard или нет. Или отключить выключение состояния интерфейса, что проще, как мне кажется. Quote Link to comment Share on other sites More sharing options...
0 Werld Posted June 6, 2020 Share Posted June 6, 2020 3 минуты назад, gaaronk сказал: А трафик изнутри не пойдет. Вот специально убрал PersistentKeepalive, на другом конце его тоже нет. Маршруты добавленые через этот интерфейс ушли, как вы и сказали. Но вот я посылаю пинг, и другая сторона мне сразу отвечает, т.к.маршрут в подсеть, обозначенную маской на интерфейсе остается. Так что трафик изнутри пойдет. Вопрос и остается только с пропаданием маршрутов. Quote Link to comment Share on other sites More sharing options...
0 gaaronk Posted June 6, 2020 Author Share Posted June 6, 2020 Изнутри инициируют соединение не в подсеть на интерфейсе, а сеть лежащую за интерфейсом. И это как раз проблема. Конечно пинги на стыковочные адреса работают. Quote Link to comment Share on other sites More sharing options...
0 Werld Posted June 6, 2020 Share Posted June 6, 2020 14 минуты назад, gaaronk сказал: Как же не идет, когда идет? было state: up стало state: down Вот прошло время, маршруты исчезли, пир стал "сереньким" Но интерфейс все равно 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 Quote Link to comment Share on other sites More sharing options...
0 Werld Posted June 6, 2020 Share Posted June 6, 2020 Ну то есть вы теперь согласны, что интерфейс остается up? Проблему с пропаданием маршрутов я не отрицал. 4 минуты назад, gaaronk сказал: Изнутри инициируют соединение не в подсеть на интерфейсе, а сеть лежащую за интерфейсом. Вы пытаетесь буквоедствовать, тем не менее неверно. прочитайте внимавтельно, я написал "в подсеть, обозначенную маской на интерфейсе", да наверное коряво выразился, но, тем не менее, я не писал "в подсеть на интерфейсе" Quote Link to comment Share on other sites More sharing options...
0 gaaronk Posted June 6, 2020 Author Share Posted June 6, 2020 Для того что бы в интерфейс пошел трафик, он стал link up, connected yes надо что бы трафик туда попал. Хост изнутри пингует дальнюю с сторону. Маршрута нет, и пинг идет не в интерфейс wireguard, а в дефолт. Нет трафика - нет маршрута. А нет маршрута - нет трафика. Quote Link to comment Share on other sites More sharing options...
0 Werld Posted June 6, 2020 Share Posted June 6, 2020 1 минуту назад, gaaronk сказал: Для того что бы в интерфейс пошел трафик, он стал link up, connected yes надо что бы трафик туда попал. Хост изнутри пингует дальнюю с сторону. Маршрута нет, и пинг идет не в интерфейс wireguard, а в дефолт. Нет трафика - нет маршрута. А нет маршрута - нет трафика. Когда вы пингуете "стыковочный адрес" трафик тоже идет в интерфейс wireguard. Я не понимаю, что вы мне пытаетесь доказать? Маршруты пропадают, с этим я согласен, здесь нужна реакция разработчиков. Но интерфейс не идет в down, говоря, что "было state: up стало state: down" - вы ошибаетесь, в посте выше я вам продемонстрировал. Quote Link to comment Share on other sites More sharing options...
0 gaaronk Posted June 6, 2020 Author Share Posted June 6, 2020 Хорошо. Насчет state я ошибся. Не проблема. Посмотрел не туда. Туда это вот - link: down. Не суть. Суть что пропадает маршрут, это да. Quote Link to comment Share on other sites More sharing options...
0 Le ecureuil Posted June 8, 2020 Share Posted June 8, 2020 Если keepalive раз в 120 секунд - это непосильно, то не знаю чем тут можно помочь. Quote Link to comment Share on other sites More sharing options...
0 gaaronk Posted June 8, 2020 Author Share Posted June 8, 2020 Ну это тоже ответ. Если фича нужна одному пользователю - смысла тратится на нее действительно нет. Quote Link to comment Share on other sites More sharing options...
Question
gaaronk
А можно опцию для Wireguard интереса что бы не делать ему down, если не было хендшейка и не было трафика более 120 секунд?
Link to comment
Share on other sites
15 answers to this question
Recommended Posts
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.