LINUX.ORG.RU
решено ФорумAdmin

Wireguard клиенты

 


0

1

Можно ли в wireguard на клиентах использовать конфиги с одинаковыми ключами, но разными ip?

★★★★★

Последнее исправление: hbars (всего исправлений: 1)

Конфиги с одинаковыми ключами использовать в принципе нельзя, потому что весь роутинг внутри WireGuard построен исходя из того, что ключ однозначно идентифицирует клиента.

intelfx ★★★★★
()

Можно, но есть один момент.

Если оба одновременно, то работать будет тот, ip которого имеет текущую запись на сервере. Это же относится и к поддержанию кипэлайв, кто значится в системе, тот и работает. Если тыкать одновременно запросы, то работает то на одном, то на другом со сбоями.

Такие проблемы не возникают, если работа таких клиентов не является одновременной.

AlexZander
()
Последнее исправление: AlexZander (всего исправлений: 6)
Ответ на: комментарий от intelfx

Интересно, поэтому warp работает? Он ключи выдает разные, в ip адрес туннеля одинаковый у всех. Или там что-то ещё есть? Как считаете?

ЗЫ. Вопрос не конкретно Вам, а к тем кто зайдёт в топик.

NyXzOr ★★★★
()
Ответ на: комментарий от intelfx

Тогда почему это не работает:

network:
  version: 2
  tunnels:
    wg0: #server
      mode: wireguard
      addresses:
        - 10.1.1.254/24
        - "fd42:42:44::254/64"
      key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
      port: 6666
      optional: true
      peers:
        - keys: #me dell
            public: xQQ6TG0lUAh9dUVqlw0ovqElABScdY/oldffKoTMWEw=
          allowed-ips:
            - 0.0.0.0/0
            - ::/0
            - 10.1.1.15/32
            - fd42:42:44::15/128
        - keys: #kazik
            public: 7r80Ppa45LZCbg/jTJ4yC5e0oa5madSWqy5yCh9AJF4=
          allowed-ips:
            - 0.0.0.0/0
            - ::/0
            - 10.1.1.14/32
            - fd42:42:44::14/128
        - keys: #sasha
            public: yPYXxMIMqWoSsP6KdrJPXshrbZ3X23xK8Tzwt3ecGyQ=
          allowed-ips:
            - 0.0.0.0/0
            - ::/0
            - 10.1.1.17/32
            - fd42:42:44::17/128
Получается что работает только первый.
interface: wg0
  public key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  private key: (hidden)
  listening port: 6666
  fwmark: 0x42

peer: xQQ6TG0lUAh9dUVqlw0ovqElABScdY/oldffKoTMWEw=
  endpoint: [2001:470:1f0b:19da::1]:33606
  allowed ips: fd42:42:44::15/128, 10.1.1.15/32, ::/0, 0.0.0.0/0
  latest handshake: 20 seconds ago
  transfer: 410.07 KiB received, 3.24 MiB sent

peer: 4U9Rpjpu3vAMvFsG8K4Sv2vQkV12y4hQe/ww5HBq4mI=
  allowed ips: fd42:42:44::11/128, 10.1.1.11/32

peer: Ex6vIW2LEB5DlRUUhjEU4MENzTBCuLrUk/YPO11+uwM=
  allowed ips: fd42:42:44::10/128, 10.1.1.10/32

Почему остальным не прописывается ::/0, 0.0.0.0/0?
Или я нихрена не понимаю и все написал не так, и делать нужно по другому.

hbars ★★★★★
() автор топика
Ответ на: комментарий от AlexZander

Такие проблемы не возникают, если работа таких клиентов не является одновременной.

Да. Но если они подключаются с разных ip, и в конфигах тоже разные ip. Только ключи одинаковые.

hbars ★★★★★
() автор топика
Ответ на: комментарий от hbars

Почему остальным не прописывается ::/0, 0.0.0.0/0?

O_o

А чего ты вообще пытаешься этим добиться? Allowed IPs работает в обе стороны. Мало того что ты вписал туда нулевую маску (т. е. по сути присвоил пиру «все адреса»), так ещё и присвоил «все адреса» всем пирам одновременно.

И то, и другое — бессмыслица.

Т. е. при попытке отправить любой пакет с интерфейса туннеля он должен уйти… какому из пиров? Из твоей конфигурации получается, что всем одновременно. Но так не бывает.

Не говоря уже о том, что после 0.0.0.0/0 добавлять в этот список любые другие адреса концептуально бессмысленно, т. к. пустая маска включает в себя все адреса. Из этого делаю вывод, что ты скорее всего неправильно понимаешь смысл этой настройки.

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 4)
Ответ на: комментарий от intelfx

Почему остальным не прописывается ::/0, 0.0.0.0/0?

А чего ты вообще пытаешься этим добиться? Allowed IPs работает в обе стороны. Мало того что ты вписал туда нулевую маску (т. е. по сути присвоил пиру «все адреса»), так ещё и присвоил «все адреса»*всем пирам одновременно*.

И то, и другое — бессмыслица.

Ну задумка была такая что-бы несколько клиентов могли подключаться к серверу и ходить через него в инет. Поэтому и ::/0, 0.0.0.0/0.
С первой записью в конфиге работает. У остальных отсекается ::/0, 0.0.0.0/0.

hbars ★★★★★
() автор топика
Последнее исправление: hbars (всего исправлений: 1)
Ответ на: комментарий от intelfx

Поспал. Утром понял.
То что мне нужно получится только с одним пиром.

hbars ★★★★★
() автор топика

Все работает.
Сам дурак. Я просто думал что на стороне сервера тоже нужно всем прописывать ::/0, 0.0.0.0/0.
Только mtu на пирах нужно меньше 1420. У меня mtu 1384 работает замечательно.
Никакие шаманства с mtu в iptables не помогли.
Может потому-что у меня ipv6 тоже через туннель.
Тема закрыта.

hbars ★★★★★
() автор топика
Последнее исправление: hbars (всего исправлений: 2)
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.