OpenVPN com clientes IPv4 e IPv6 mistos


10

Eu tenho um servidor VPN que lida com vários clientes; alguns apenas com ipv4, outros com ipv4 e ipv6 e outros que serão apenas ipv6. Alguns desses clientes estão em roaming, portanto, idealmente, eles devem se conectar ao ipv6, se estiver disponível, e voltar ao ipv4, se não estiver.

Na minha configuração atual, o OpenVPN ouve o ipv4 e o ipv6:

proto udp
proto udp6
dev tun

Minha primeira pergunta é aqui: enquanto isso parece funcionar, é seguro e correto ter os dois proto em um arquivo de configuração?

Meus clientes têm duas instâncias remotas na configuração:

remote vpn.domain.tld port udp6
remote vpn.domain.tld port udp

Minha pergunta aqui, também, como isso parece funcionar (tentar o udp6 primeiro, se isso falhar, fará o fallback para o udp), essa é uma boa maneira de fazer isso?

Respostas:


10

Bem.

No lado do servidor, especificar "proto" duas vezes na verdade não faz nada - "proto udp6" fará com que ele ligue um soquete de pilha dupla para lidar com v4 + v6, substituindo o "proto udp" na linha anterior.

Em um cliente 2.3, ter dois controles remotos, com "udp6" e "udp", é o caminho a percorrer, pois o código de soquete antigo não pode se autoproteger adequadamente.

Em um cliente git master (2.4-to-be) ou 3.0 (OpenVPN Connect), você pode simplesmente usar "udp", pois ele chamará adequadamente getaddrinfo () e usar qualquer protocolo IP que o servidor e a rede suportem, tentando primeiro uma família e caindo para o outro, usando a preferência que os sinais do SO (via ordenação de resultados getaddrinfo ()).

gert


FYI no OpenVPN anterior à 2.4, você não pode fazer pilha dupla. A configuração "proto udp6" não será vinculada à pilha dupla. No OpenVPN 2.4, você pode simplesmente usar "proto udp" conforme indicado.
— Ben Franske

Encontrei várias documentações contraditórias para este tópico. Na configuração prática "proto udp6" no OpenVPN 2.4, resulta em pilha dupla. Pelo menos esse é o comportamento do meu servidor. Pelo menos wiki.archlinux.org/index.php/… afirma o mesmo.
— Martin
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.