Instalei wireguard
em um servidor em uma LAN e tenho um problema com um ping
entre dois componentes. a topologia é a seguinte:
srv
é uma máquina Linux (Ubuntu 18.04) que possui uma interface física com o IP192.168.10.2
e uma interface virtual com o IP192.168.20.1
remote
é uma máquina que se conecta à LAN viawireguard
e tem IP192.168.20.2
internal
é uma máquina na LAN que tem IP192.168.10.5
De um modo geral, as máquinas na LAN real estão dentro 192.168.10.0/24
e na VPN em 192.168.20.0/24
.
Não há iptables
restrições em nenhum lugar.
O encaminhamento de IP está ativado no srv
.
O problema : eu posso pingar tudo de qualquer lugar, exceto (o IP físico 192.168.10.2
da192.168.20.2
NIC no servidor da máquina remota que está na VPN).
Especificamente
- Eu posso alcançar
remote
tanto dosrv
lado dewireguard
(192.168.20.1
) quanto de qualquer outra coisa na LAN (192.156.10.5
na lista acima).- Eu posso chegar
remote
desrv
(através da VPN)
- Eu posso chegar
A tabela de roteamento em srv
( br0
é a interface "física", na realidade esta é uma ponte, mas não importa aqui)
default via 192.168.10.1 dev br0 proto dhcp metric 1024
192.168.10.0/24 dev br0 proto kernel scope link src 192.168.10.2
192.168.20.0/24 via 192.168.20.1 dev wg0 proto static
192.168.20.0/24 via 192.168.10.2 dev br0 proto dhcp metric 1024
A tabela de roteamento emremote
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 10.237.76.1 10.237.78.2 25
10.237.76.0 255.255.252.0 On-link 10.237.78.2 281
10.237.78.2 255.255.255.255 On-link 10.237.78.2 281
10.237.79.255 255.255.255.255 On-link 10.237.78.2 281
127.0.0.0 255.0.0.0 On-link 127.0.0.1 331
127.0.0.1 255.255.255.255 On-link 127.0.0.1 331
127.255.255.255 255.255.255.255 On-link 127.0.0.1 331
192.168.10.0 255.255.255.0 192.168.20.1 192.168.20.2 135
192.168.20.0 255.255.255.0 On-link 192.168.20.2 291
192.168.20.2 255.255.255.255 On-link 192.168.20.2 291
192.168.20.255 255.255.255.255 On-link 192.168.20.2 291
192.168.56.0 255.255.255.0 On-link 192.168.56.1 281
192.168.56.1 255.255.255.255 On-link 192.168.56.1 281
192.168.56.255 255.255.255.255 On-link 192.168.56.1 281
224.0.0.0 240.0.0.0 On-link 127.0.0.1 331
224.0.0.0 240.0.0.0 On-link 192.168.56.1 281
224.0.0.0 240.0.0.0 On-link 10.237.78.2 281
224.0.0.0 240.0.0.0 On-link 192.168.20.2 291
255.255.255.255 255.255.255.255 On-link 127.0.0.1 331
255.255.255.255 255.255.255.255 On-link 192.168.56.1 281
255.255.255.255 255.255.255.255 On-link 10.237.78.2 281
255.255.255.255 255.255.255.255 On-link 192.168.20.2 291
Qual pode ser a razão de um pacote enviado de 192.168.20.2
, embora 192.168.20.1
não chegue 192.168.10.2
?
O problema era com a rota dupla
O primeiro é adicionado como parte da configuração do
wg0
. Isso está correto.A segunda é recuperada do DHCP, que envia essa rota para os clientes para que eles saibam como chegar
192.168.20.0/24
, que é a rede VPN.Esta informação não é apenas útil no host que contém a VPN, mas realmente prejudicial, pois [ algumas coisas terríveis acontecem, não tenho certeza do que ] quando um pacote da rede VPN é roteado para o servidor VPN (o mesmo host)
A remoção da segunda rota resolveu o problema, mas levantou outra (não relacionada).