Eu configurei uma caixa linux (em um esxi5) que atua como um servidor OpenVPN. o servidor está configurado para usar a ponte para os clientes, que essencialmente funciona, com uma exceção.
Se o cliente fizer ping em alguma máquina na rede que não seja o próprio servidor, ela não funcionará. Excluí tudo o que sei (iptables, etc) e a execução do tcpdump resumia-se às seguintes coisas:
- Vejo solicitações ARP em tap0 e br0
- Vejo as respostas do ARP no br0
- NÃO vejo as respostas do ARP na torneira0
Pergunta: por que o dispositivo br0 não encaminha respostas ARP ao dispositivo tap0?
client-to-client
no arquivo de configuração openvpn do seu servidor? Se seus servidores estiverem conectados à rede VPN usando o openvpn como cliente, a sentença poderá ser verdadeira. PS. Que tipo de distro você está usando?Respostas:
Sem mais informações, estamos supondo, mas vamos tentar:
Primeiro, verifique se eth0 e tap0 estão no modo promíscuo. br0 não deve estar no modo promíscuo.
Em seguida, verifique se você tem arptables e quaisquer regras do iptables que possam estar interferindo.
Como você já recebe respostas arp, provavelmente não possui isso , mas verifique assim mesmo.
finalmente verifique as configurações do rp_filter , mas também verifique os parâmetros sysctl extras que você pode ter definido.
fonte
Se o seu host ESXi tiver conexões redundantes à rede, existem vários problemas de ARP que podem aparecer devido à configuração padrão do Net.ReversePathFwdCheckPromisc. Os usuários do pfSense que usam o CARP foram os primeiros a depurar isso, descritos em https://doc.pfsense.org/index.php/CARP_Configuration_Trou Resolução de Problemas
Em um ambiente semelhante, temos a ponte OpenVPN configurada no FreeBSD, mas também a complicação adicional de vlans. Em um host em que Net.ReversePathFwdCheckPromisc não foi definido como 1 e onde existem vários uplinks na rede, vemos uma perda maciça de pacotes (95% +) no tráfego de entrada para o dispositivo de toque. Funciona muito bem quando definido como 1.
fonte