Roteando tráfego entre sub-redes com iptables

2

Eu tenho uma máquina virtual KVM que está atuando como um gateway de VPN para uma rede de outras máquinas virtuais (e eventualmente físicas). Eu tenho meu hipervisor configurado com um toque para cada máquina e uma ponte para conectá-los para que todos compartilhem a mesma sub-rede e possam se comunicar uns com os outros. Agora, eu preciso do gateway de VPN para encaminhar pacotes de sua interface de toque para o resto da rede. Por exemplo, digamos que a sub-rede da VPN seja 192.168.15.0/24 e a sub-rede da máquina virtual seja 192.168.10.0/24 . O gateway da VPN fica em 192.168.15.1 e um exemplo de computador remoto tem o endereço 192.168.15.5 . Eu pensaria que definir uma rota estática no computador remoto com ip route add 192.168.10.0/24 via 192.168.15.1 dev <tap device> faria com que os pacotes fossem redirecionados para o gateway da VPN e, em seguida, ter uma regra iptables como iptables -A FORWARD -s 192.168.15.0/24 -d 192.168.10.0/24 -j ACCEPT no gateway da VPN permitiria que os pacotes chegassem ao destino. ip_forward está ativado. Eu posso mostrar que os pacotes estão chegando de um computador remoto para o gateway, mas ping 192.168.10.5 do computador remoto retorna: From 192.168.10.5 icmp_seq=1 Destination Net Unknown.

Alguma ideia de como resolver isso?

Editar 1 : o computador remoto tem uma rota apropriada para o gateway através da VPN.

    
por PyroAVR 30.09.2018 / 23:25

1 resposta

1

Eu entendi! O problema estava no roteamento da VPN. A VPN não estava configurada no modo de comutação, portanto era impossível rotear pacotes que precisavam ser encaminhados pelo gateway. Eu uso tinc vpn, então adicionando um Mode = switch a tinc.conf no gateway e os clientes fizeram o truque!

    
por 06.10.2018 / 03:46