Estou tentando configurar duas (ou mais) interfaces WireGuard em um servidor com a mesma porta, mas intervalos de IP diferentes (não sobrepostos).
O motivo da porta idêntica é porque a conexão está sendo encaminhada para a porta 51820 no servidor Wireguard, e queremos evitar alterar detalhes fora do servidor Wireguard.
Minha ideia seria mudar a porta do endereço local do atual 0.0.0.0:51820 para, por exemplo, 10.0.0.0/24:51820 para wg0, e 10.0.1.0/24:51820 para wg1. Isso é possível ou estou latindo para a árvore errada com essa solução?
ip address show wg0 me dá o endereço IP correto: (10.0.0.1/24 e 10.0.1.1/24 para wg1), mas ss -tuln mostra que a porta do endereço local é 0.0.0.0:51820.
Gostaria também de descartar todas as mensagens fora dos intervalos de IP correspondentes a wg0 e wg1 na porta 51820.
O servidor roda no Ubuntu 22.04.4 LTS.
Esclarecimento:
O problema é que não consigo adicionar uma segunda interface que tenha a mesma porta de escuta, mas um intervalo de IP diferente.
Exemplo: wgX.conf é:
[Interface]
PrivateKey = chave-única-para-cada-X
ListenPort = 51820
Comandos: ip link add dev wg0 type wireguard
ip address add dev wg0 10.40. 0 .1/24
wg setconf wg0.conf
ip link set up dev wg0
isso funciona bem, mas quando adiciono a segunda interface em um intervalo diferente, mas com listenPort idêntico:
ip link add dev wg1 type wireguard
ip address add dev wg1 10.40. 1 .1/24
wg setconf wg1.conf
ip link set up dev wg1
retorna o erro "Falha ao configurar a interface wg1: RTNETLINK responde: Endereço já em uso"
ip address show wg0 retorna
wg0: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1420 qdisc noqueue state UNKNOWN group default qlen 1000
link/none
inet 10.40.0.1/24
ss -tuln retorna
udp ... 0.0.0.0:51820 ...