Rede por trás do cliente OpenVPN

Rede por trás do cliente OpenVPN

Bom dia, estou com um problema com a rede OpenVPN. A ideia principal é conforme ilustrado, servidor OpenVPN remoto, 2 clientes, MyPC e cliente OpenWRT com sua própria rede com Client_1 e Client_2. Preciso conseguir acessar Client_1 do MyPC e vice-versa. Parece um problema de roteamento ou encaminhamento.


|-----------------------|           |-----------------------------------|
|Ubuntu 14.04           |           |OpenWRT router                     |
|OpenVPN Server         |  <----->  |Acts as OpenVPN client             |
|WAN 192.168.1.197      |           |LAN: 192.168.0.1, WAN:192.168.1.1  |
|OpenVPN IP: 172.20.2.1 |           |OpenVPN IP:172.20.1.100            |
|-----------------------|           |-----------------------------------|
            ^                               ^                   ^
            |                               |                   |
            |                               |                   |
            v                               v                   v
|-----------------------|           |-------------------| |------------------|
|MyPC, OpenVPN client   |   (1)     |Network client_1   | |Network client_2  |
|LAN: 192.168.1.205     | <-------> |LAN: 192.168.0.213 | |LAN: 192.168.1.101|
|OpenVPN IP:172.20.2.101|           |-------------------| |------------------|
|-----------------------|

O resultado do ping

Ping MyPC -> Servidor OpenVPN OK
Ping MyPC -> OpenWRT OK
Ping MyPC -> client_1 Resposta de 192.168.1.205: Host de destino inacessível.

Ping servidor OpenVPN -> MyPC OK
Ping servidor OpenVPN -> OpenWRT OK
Ping servidor OpenVPN -> client_1 De 192.168.1.197 icmp_seq=1 Host de destino inacessível

Ping OpenWRT -> Servidor OpenVPN OK
Ping OpenWRT -> Meu PC OK
Ping OpenWRT -> cliente_1 OK

Ping client_1 -> Servidor OpenVPN de 192.168.0.1 icmp_seq=1 Porta de destino inacessível
Ping client_1 -> MyPC de 192.168.0.1 icmp_seq=1 Porta de destino inacessível
Ping cliente_1 -> OpenWRT OK

Configurações OpenVPN, servidor e clientes

======OpenVPN configuration ===================================================================
port 1198
proto udp
dev tap2
ca keys/remote_management/ca.crt
cert keys/remote_management/remote_man.crt
key keys/remote_management/remote_man.key
dh keys/remote_management/dh4096.pem
server-bridge 172.20.2.1 255.255.255.0 172.20.2.100 172.20.2.253 #@@ br1 eth2
crl-verify keys/remote_management/crl.pem
ifconfig-pool-persist servers/remote_man/logs/ipp.txt
tls-auth servers/remote_man/ta.key 0
cipher AES-128-CBC
user nobody
group nogroup
status servers/remote_man/logs/openvpn-status.log
log-append servers/remote_man/logs/openvpn.log
verb 2
mute 20
max-clients 10
management 127.0.0.1 7507
keepalive 10 120
client-config-dir /etc/openvpn/servers/remote_man/ccd
tls-server
client-to-client
comp-lzo
persist-key
persist-tun
ccd-exclusive
push "route 172.20.2.0 255.255.255.0"
route 192.168.0.0 255.255.255.0

======OpenVPN client MyPC configuration ======================================================
client
proto udp
dev tap
ca ca.crt
dh dh4096.pem
cert ***.crt
key ***.key
remote *** 1198
tls-auth ta.key 1
cipher AES-128-CBC
verb 2
mute 20
keepalive 10 120
comp-lzo
persist-key
persist-tun
float
resolv-retry infinite
nobind

======OpenVPN client OpenWRT configuration ===================================================
client
proto udp
dev tap
ca /etc/openvpn/sol102/ca.crt
dh /etc/openvpn/sol102/dh4096.pem
cert /etc/openvpn/sol102/sol102.crt
key /etc/openvpn/sol102/sol102.key
remote *** 1198
tls-auth /etc/openvpn/sol102/ta.key 1
cipher AES-128-CBC
verb 2
mute 20
keepalive 10 120
comp-lzo
persist-key
persist-tun
float
resolv-retry infinite
nobind

Configurações OpenWRT

======Configuração de rede OpenWRT========================================= ==================
interface de configuração 'loopback'
        opção ifname 'lo'
        opção proto 'estático'
        opção ipaddr '127.0.0.1'
        opção máscara de rede '255.0.0.0'

configurar globais 'globais'
        opção ula_prefix 'fdf2:d4ae:ecd5::/48'

interface de configuração 'lan'
        opção ifname 'eth0.1'
        opção force_link '1'
        tipo de opção 'ponte'
        opção proto 'estático'
        opção máscara de rede '255.255.255.0'
        opção ip6assign '60'
        opção ipaddr '192.168.0.1'

interface de configuração 'wan'
        opção ifname 'eth0.2'
        opção proto 'dhcp'

interface de configuração 'wan6'
        opção ifname '@wan'
        opção proto 'dhcpv6'

interruptor de configuração
        nome da opção 'switch0'
        opção redefinir '1'
        opção enable_vlan '1'

configuração switch_vlan
        dispositivo de opção 'switch0'
        opção vlan '1'
        portas opcionais '1 2 3 4 5t'

configuração switch_vlan
        dispositivo de opção 'switch0'
        opção vlan '2'
        portas de opção '0 5t'

interface de configuração 'OVPN'
        opção proto 'nenhum'
        opção delegar '0'
        opção ifname 'tap0'

======Configuração do Firewall OpenWRT========================================= ==================
padrões de configuração
        opção syn_flood '1'
        entrada de opção 'ACEITAR'
        saída de opção 'ACEITAR'
        opção encaminhar 'REJEITAR'

zona de configuração
        nome da opção 'lan'
        entrada de opção 'ACEITAR'
        saída de opção 'ACEITAR'
        opção encaminhar 'REJEITAR'
        opção rede 'lan'

zona de configuração
        nome da opção 'wan'
        entrada de opção 'REJEITAR'
        saída de opção 'ACEITAR'
        opção encaminhar 'REJEITAR'
        opção máscara '1'
        opção rede 'wan wan6'

regra de configuração
        nome da opção 'Permitir-DHCP-Renovar'
        opção src 'wan'
        opção proto 'udp'
        opção destino_port '68'
        opção alvo 'ACEITAR'
        família de opções 'ipv4'

regra de configuração
        nome da opção 'Allow-Ping'
        opção src 'wan'
        opção proto 'icmp'
        opção icmp_type 'echo-request'
        família de opções 'ipv4'
        opção alvo 'ACEITAR'

regra de configuração
        nome da opção 'Allow-DHCPv6'
        opção src 'wan'
        opção proto 'udp'
        opção src_ip 'fe80::/10'
        opção src_port '547'
        opção destino_ip 'fe80::/10'
        opção destino_port '546'
        opção família 'ipv6'
        opção alvo 'ACEITAR'

regra de configuração
        nome da opção 'Allow-ICMPv6-Input'
        opção src 'wan'
        opção proto 'icmp'
        listar icmp_type 'solicitação de eco'
        listar icmp_type 'echo-resposta'
        listar icmp_type 'destino inacessível'
        listar icmp_type 'pacote muito grande'
        listar icmp_type 'tempo excedido'
        listar icmp_type 'cabeçalho ruim'
        listar icmp_type 'tipo de cabeçalho desconhecido'
        listar icmp_type 'solicitação de roteador'
        listar icmp_type 'solicitação de vizinho'
        listar icmp_type 'anúncio do roteador'
        listar icmp_type 'anúncio vizinho'
        limite de opção '1000/seg'
        opção família 'ipv6'
        opção alvo 'ACEITAR'

regra de configuração
        nome da opção 'Allow-ICMPv6-Forward'
        opção src 'wan'
        opção destino '*'
        opção proto 'icmp'
        listar icmp_type 'solicitação de eco'
        listar icmp_type 'echo-resposta'
        listar icmp_type 'destino inacessível'
        listar icmp_type 'pacote muito grande'
        listar icmp_type 'tempo excedido'
        listar icmp_type 'cabeçalho ruim'
        listar icmp_type 'tipo de cabeçalho desconhecido'
        limite de opção '1000/seg'
        opção família 'ipv6'
        opção alvo 'ACEITAR'

configuração inclui
        caminho da opção '/etc/firewall.user'

zona de configuração
        saída de opção 'ACEITAR'
        nome da opção 'OVPN_FW'
        opção máscara '1'
        entrada de opção 'ACEITAR'
        opção encaminhar 'REJEITAR'
        opção de rede 'OVPN'
        opção mtu_fix '1'

encaminhamento de configuração
        opção destino 'OVPN_FW'
        opção src 'lan'

encaminhamento de configuração
        opção destino 'wan'
        opção src 'lan'

encaminhamento de configuração
        opção destino 'lan'
        opção src 'OVPN_FW'

Eu tenho algum tcpdump

======OpenVPN server tcpdump icmp filtered ====================================================  
12:46:11.654580 IP 172.20.2.101 > 192.168.0.213: ICMP echo request, id 1, seq 83, length 40
12:46:11.654580 IP 172.20.2.101 > 192.168.0.213: ICMP echo request, id 1, seq 83, length 40
12:46:14.652217 IP 172.20.2.1 > 172.20.2.101: ICMP host 192.168.0.213 unreachable, length 68
12:46:14.652244 IP 172.20.2.1 > 172.20.2.101: ICMP host 192.168.0.213 unreachable, length 68
12:46:14.657835 IP 172.20.2.101 > 192.168.0.213: ICMP echo request, id 1, seq 84, length 40
12:46:14.657835 IP 172.20.2.101 > 192.168.0.213: ICMP echo request, id 1, seq 84, length 40
12:46:17.656214 IP 172.20.2.1 > 172.20.2.101: ICMP host 192.168.0.213 unreachable, length 68
12:46:17.656241 IP 172.20.2.1 > 172.20.2.101: ICMP host 192.168.0.213 unreachable, length 68
12:46:17.661768 IP 172.20.2.101 > 192.168.0.213: ICMP echo request, id 1, seq 85, length 40
12:46:17.661768 IP 172.20.2.101 > 192.168.0.213: ICMP echo request, id 1, seq 85, length 40
12:46:20.660206 IP 172.20.2.1 > 172.20.2.101: ICMP host 192.168.0.213 unreachable, length 68
12:46:20.660233 IP 172.20.2.1 > 172.20.2.101: ICMP host 192.168.0.213 unreachable, length 68
12:46:20.665362 IP 172.20.2.101 > 192.168.0.213: ICMP echo request, id 1, seq 86, length 40
12:46:20.665362 IP 172.20.2.101 > 192.168.0.213: ICMP echo request, id 1, seq 86, length 40
12:46:23.666797 IP 172.20.2.1 > 172.20.2.101: ICMP host 192.168.0.213 unreachable, length 68
12:46:23.666824 IP 172.20.2.1 > 172.20.2.101: ICMP host 192.168.0.213 unreachable, length 68


======OpenWRT client tcpdump icmp filtered ==================================================== 
12:44:17.299404 IP 172.20.2.1 > 172.20.2.100: ICMP redirect 172.20.2.101 to host 172.20.2.101, length 48
12:44:18.461809 IP 172.20.2.1 > 172.20.2.100: ICMP redirect 172.20.2.101 to host 172.20.2.101, length 196
12:44:19.464258 IP 172.20.2.1 > 172.20.2.100: ICMP redirect 172.20.2.101 to host 172.20.2.101, length 196
12:44:20.466652 IP 172.20.2.1 > 172.20.2.100: ICMP redirect 172.20.2.101 to host 172.20.2.101, length 196
12:44:20.944332 IP 172.20.2.1 > 172.20.2.100: ICMP redirect 172.20.2.101 to host 172.20.2.101, length 48
12:44:32.311732 IP 172.20.2.1 > 172.20.2.100: ICMP redirect 172.20.2.101 to host 172.20.2.101, length 308

Editar: não é possível colocar tanto código, entãohttp://pastebin.com/ThgqBUgM(O link não é mais válido)

Responder1

Seu problema provavelmente é roteamento, o servidor Ubuntu precisa saber onde encontrar 192.168.0.0/24 - route add -net 192.168.0.0/24 gw 172.20.1.100, sem que essa rota corresponda ao gateway padrão e os pacotes sejam roteados usando interface errada. Todo dispositivo que encaminha pacotes (OpenWRT e Ubuntu) precisa conhecer 3 redes: 192.168.0.0/24e .192.168.1.0/24172.20.1.0/24

informação relacionada