Eu tenho um servidor vpn que está conectado ao cliente vpn com o ip 10.30.0.x agora. Eu quero que ele seja capaz de pingar outro cliente particular conectado ao servidor vpn. Por favor, note que outro cliente privado é a sub-rede privada do servidor vpn e não está conectado a ele.
Então, o servidor vpn é algo como 10.20.0.95 e o cliente vpn é 10.30.0.190 e a sub-rede privada conectada ao servidor vpn é 10.20.0.180. Agora 10.30.0.190 não pode pingar 10.20.0.180 e vice-versa. Eu habilitei o cliente para o cliente no server.conf
Observe também que usar o mascaramento funciona, mas então eu não sei qual é exatamente o ping 10.20.0.180. Eu só vejo o pedido vindo do servidor vpn.
server.conf
port 1190
proto udp
dev tun
ca ca.crt
dh dh.pem
topology subnet
server 10.10.0.0 255.255.0.0
ifconfig-pool-persist ipp.txt
push "route 10.20.0.0 255.255.0.0"
client-config-dir ccd
ifconfig 10.10.0.1 255.255.255.0
route 10.30.0.0 255.255.0.0 10.10.0.2
client-to-client
keepalive 10 120
comp-lzo
persist-key
persist-tun
status openvpn-status.log
log-append openvpn.log
verb 3
client.conf
client
dev tun
proto udp
resolv-retry infinite
nobind
persist-key
persist-tun
remote-cert-tls server
comp-lzo
verb 3
route table for vpn server aka 10.20.0.95
0.0.0.0 10.20.0.1 0.0.0.0 UG 0 0 0 eth0
10.10.0.0 0.0.0.0 255.255.0.0 U 0 0 0 tun0
10.20.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
10.30.0.0 10.10.0.2 255.255.0.0 UG 0 0 0 tun0
route table for vpn client aka 10.30.x.x
0.0.0.0 10.30.0.1 0.0.0.0 UG 0 0 0 eth0
10.10.0.0 0.0.0.0 255.255.0.0 U 0 0 0 tun0
10.20.0.0 10.10.0.1 255.255.0.0 UG 0 0 0 tun0
10.30.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
route table for private subnet connected to vpn server
0.0.0.0 10.20.0.1 0.0.0.0 UG 0 0 0 eth0
10.10.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
10.20.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
Também vejo o seguinte tcpdump ao pingar 10.20.0.180 a partir das 10.30.x.x no servidor vpn
sudo tcpdump -i eth0 'icmp[icmptype] = icmp-echo or icmp[icmptype] = icmp-echoreply'
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
21:39:25.264549 IP 10.10.0.2 > 10.20.0.180: ICMP echo request, id 1709, seq 2457, length 64
21:39:25.852635 IP 10.10.0.2 > 10.20.0.180: ICMP echo request, id 1956, seq 70, length 64
21:39:26.264552 IP 10.10.0.2 > 10.20.0.180: ICMP echo request, id 1709, seq 2458, length 64
21:39:26.852661 IP 10.10.0.2 > 10.20.0.180: ICMP echo request, id 1956, seq 71, length 64
Enquanto o ping 10.30.x.x de 10.20.0.180 no servidor vpn
sudo tcpdump -i tun0 'icmp[icmptype] = icmp-echo or icmp[icmptype] = icmp-echoreply'
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on tun0, link-type RAW (Raw IP), capture size 65535 bytes
21:43:56.136264 IP 10.10.0.1 > 10.30.0.190: ICMP echo request, id 6694, seq 1, length 64
21:43:57.135874 IP 10.10.0.1 > 10.30.0.190: ICMP echo request, id 6694, seq 2, length 64
21:43:58.135855 IP 10.10.0.1 > 10.30.0.190: ICMP echo request, id 6694, seq 3, length 64
21:43:59.136256 IP 10.10.0.1 > 10.30.0.190: ICMP echo request, id 6694, seq 4, length 64
21:44:00.135868 IP 10.10.0.1 > 10.30.0.190: ICMP echo request, id 6694, seq 5, length 64
21:44:01.135848 IP 10.10.0.1 > 10.30.0.190: ICMP echo request, id 6694, seq 6, length 64
21:44:02.136093 IP 10.10.0.1 > 10.30.0.190: ICMP echo request, id 6694, seq 7, length 64
Qualquer ajuda será apreciada. Obrigado