OpenVPN usando IPv6 no VPS

2

Estou tentando criar um túnel IPv6 usando o OpenVPN no Debian Sid. O IPv4 está funcionando bem, mas não consigo fazer o IPv6 funcionar. Eu posso pingar o servidor e outros clientes usando o IPv6, mas não consigo acessar a internet de um cliente.

Eu fiz horas de pesquisa, mas ainda não entendi completamente o IPv6, então esse problema pode ser realmente fácil de consertar. Alguma explicação seria legal!

O problema é que estou usando um VPS e só tenho uma sub-rede / 64 para tudo:

2a00:a123:4:b5::/64

Então, pensei em adicionar isso à minha configuração do OpenVPN (crie uma sub-rede /112 menor para o OpenVPN):

server-ipv6 2a00:a123:4:b5:80::/112
push "route-ipv6 2000::/3"

Agora, quando eu executar ifconfig tun0 , obtenho:

inet6 addr: 2a00:d880:6:f2:80::1/112 Scope:Global

E meus clientes recebem:

client1,10.8.0.2,2a00:d880:6:f2:80::1000
client2,10.8.0.3,2a00:d880:6:f2:80::1001

Adicionei todos esses 4 IPs no CP do SolusVM (não sei se isso é necessário, pensei que seria para o roteamento de volta para o VPS). Eu também defino net.ipv6.conf.all.forwarding para 1 .

Ainda assim, não consigo acessar a Internet pelo IPv6 dos clientes. Se eu executar traceroute6 google.com em um cliente, chego ao IP do servidor, mas apenas os tempos limite depois disso.

Também encontrei esta pergunta semelhante , mas a A coisa do proxy NDP não parece funcionar para mim usando o seguinte comando:

ip neigh add proxy 2a00:d880:6:f2:80::1000 dev tun0
ip neigh add proxy 2a00:d880:6:f2:80::1001 dev tun0
    
por Louis Matthijssen 29.11.2014 / 21:36

3 respostas

0

Ok, depois de horas de tentativas eu esqueci de fazer uma coisa simples. Adicione uma regra de firewall.

ip6tables -t nat -A POSTROUTING -s 2a00:a123:4:b5:80::/112 -j SNAT --to 2a00:a123:4:b5::1234

Adicionar os IPs no CP do SolusVM não é necessário. A coisa do proxy NDP também não é necessária.

    
por 29.11.2014 / 23:38
2

Eu não acho que o SNAT é o direito sobre isso também. Eu tive uma pergunta semelhante e descobri que precisava apenas das regras corretas de FORWARD com um pouco de ajustes. Essencialmente, você só precisa encaminhar o tráfego IPv6 da interface OpenVPN para sua interface WAN externa que possui a configuração IPv6.

ip6tables permitem o tráfego IPv6 do OpenVPN através do meu VPS

No seu caso, acho que isso deve funcionar melhor:

ip6tables -A FORWARD -m state --state NEW -i tun+ -o $WAN -s 2a00:a123:4:b5::/64 -j ACCEPT
ip6tables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

Estou supondo que você use o roteamento (tun) em oposição à ponte Ethernet (toque)

Parece que você tem apenas um bloco / 64, que deve ser a única regra FORWARD que você precisa.

$ WAN é um marcador para sua interface externa com conectividade IPv6. Eu não recebo IPv6 nativo no meu VPS, então no meu caso foi a interface de túnel sit1 (CentOS). Parece que você já tem um bloco IPv6, então será qualquer interface WAN externa.

Quando as regras de encaminhamento corretas estiverem em vigor, o tráfego IPv6 pode fluir sem ser bloqueado pelo firewall. O NAT não precisa estar envolvido com o IPv6 na maioria dos casos.

    
por 03.03.2015 / 10:07
1

Primeiro, você precisa ativar o proxy_ndp:

 sysctl -w net.ipv6.conf.all.proxy_ndp=1

(e adicione a linha correspondente un /etc/sysctl.conf ).

Os comandos corretos são:

ip neigh add proxy 2a00:d880:6:f2:80::1000 dev eth0
ip neigh add proxy 2a00:d880:6:f2:80::1001 dev eth0

assumindo que eth0 é o nome do seu dispositivo de rede não-OpenVPN.

Isto significa que este host deve servir um proxy NDP no devcie eth0:

  • ele deve dizer "sim, sou eu" quando alguém perguntar "2a00: d880: 6: f2: 80 :: 1000" no link dev0;

  • isto significa que este host receberá os pacotes para 2a00: d880: 6: f2: 80 :: 1000 vindo do link eth0;

  • você não precisa dizer a ele em qual interface é a real 2a00: d880: 6: f2: 80 :: 1000, a tabela de roteamento IPv6 terá o cuidado de rotear o correto para o destino adequado.

E não se esqueça de ativar o encaminhamento de IP IPv6:

sysctl -w net.ipv6.conf.all.forwarding=1
    
por 03.03.2015 / 10:29

Tags