Executando o túnel ipv6 no windows 7 ao lado do servidor dns local

1

Estou executando um túnel IPv6 via Hurricane Electric no Windows 7, que vem funcionando bem há anos. Meu roteador não suporta IPv6 nativamente.

Também estou experimentando a execução de um servidor DNS local (instalei o dnsmasq em um Raspberry Pi e confirmei que ele está funcionando na medida em que vejo meu iPad usá-lo quando defino o servidor DNS para o endereço IPv4 da LAN do Pi).

No entanto, na máquina com Windows 7, não consigo acessar o servidor DNS local porque ele sempre usa os servidores DNS IPv6 (que estão definidos como OpenDNS). Embora o Pi possa executar o IPv6 ou mesmo outro túnel, nenhum deles me ajudará porque (a) a outra extremidade do túnel não conseguirá ver um endereço IPv6 local, (b) um endereço IPv6 externo para o Servidor DNS seria bloqueado pelo firewall do roteador (que eu não gostaria de abrir para isso) e (c) que iria derrotar o ponto, pois seria necessário sair e voltar através de ambos os túneis para que não seja mais local. É claro que não posso ter uma conversa IPv6 diretamente entre o Win7 e o Pi, já que o roteador não suporta isso.

Existe uma maneira de fazer com que o Windows volte para os servidores DNS IPv4 (e, portanto, para o local) se os IPv6 não encontrarem um endereço? (Eu sei que eu poderia configurar uma solução de hardware usando um roteador alternativo executando ipv6, mas se eu puder, eu gostaria de resolver o problema sem).

    
por frankieandshadow 01.03.2015 / 19:16

1 resposta

0

Clearly I can't have an IPv6 conversation directly between Win7 and Pi as the router doesn't support this.

Você pode.

Suponho que você tenha um desses dispositivos "gateway residencial" / "roteador WiFi" com várias portas Ethernet e que tanto o computador Win7 quanto o Rπ estejam conectados às portas "LAN".

Esse "roteador" geralmente é um switch + roteador combinado, com uma porta Ethernet atribuída ao lado "WAN" e todos os outros ao lado "LAN". Nesse caso, não há roteamento no nível do IP quando os dispositivos na mesma LAN se comunicam; apenas comutação de nível Ethernet. Existe roteamento apenas entre LAN e WAN.

Portanto, o roteador IPv4 não precisa para suportar o IPv6 para que todos os dispositivos da LAN o usem. As chances são de que ambos os computadores possam alcançar um ao outro por meio de endereços IPv6 na mesma sub-rede.

Por exemplo, os endereços de fe80::… do link-local funcionariam, embora sejam irritantes de usar.

endereços locais únicos também funcionariam - eles são o equivalente aproximado dos amplamente conhecidos endereços RFC 1918 (o aqueles que começam com 10. ou 192.168. ) Basta escolher um prefixo de rede ULA aleatório e configurar endereços a partir dele nos dois dispositivos.

E se você precisar de IPv6 roteamento , isso pode ser feito por um dispositivo diferente. Como o seu provedor IPv6 é a Hurricane Electric, você pode transformar seu PC Win7 ou seu Raspberry Pi - qualquer um que você configure como o ponto de extremidade de encapsulamento - em um roteador IPv6 totalmente capaz sua LAN e o túnel HE, fornecendo conectividade IPv6 para toda a LAN.

(Eu fiz isso no Windows XP Pro, na verdade.)

Você só precisa de um intervalo de endereços IPv4 /64 -sized 1 para atribuir à sua LAN. O Hurricane Electric atribui um para cada túnel - procure por "Routed / 64" na página de configuração.

Então, assumindo que sua interface de túnel HE é chamada de "he0", e sua placa Ethernet é chamada de "Ethernet":

  1. Execute netsh em um prompt de comando elevado.

  2. netsh> interface ipv6
  3. Habilite os recursos de roteamento IPv6 no Win7. Você deve ativar o encaminhamento de pacotes nas interfaces de rede "WAN" (túnel) e LAN, mas somente na interface LAN.

    set interface "Ethernet" forwarding=enable advertise=enable
    set interface "he0" forwarding=enable
    
  4. Encaminhe sua rede / 64 através de sua interface Ethernet local, e certifique-se de publicar :

    add route your-prefix/64 "Ethernet" publish=yes valid=1d preferred=1h

    (Por exemplo, add route 2001:470:1f0b:123::/64 … )

    A opção "publicar" significa que o Win7 incluirá esta rota nos pacotes "Anúncio de roteador" que ela transmite para a LAN. Como é um prefixo / 64, outros dispositivos configuram automaticamente seus próprios endereços IP para ele.

    Os temporizadores "válidos" e "preferidos" não são estritamente necessários, eles apenas dizem a todos os outros dispositivos para esquecerem a rota do IPv6 se não tiverem sido anunciados por um dia.

  5. Publique também a rota "%" ::/0 existente:

    set route ::/0 "he0" publish=yes valid=1d preferred=1h
  6. Até agora, o próprio Win7 terá configurado automaticamente um endereço IPv6; verifique show addr em netsh.

  7. Conecte-se ao seu Rπ e dê uma olhada em ip addr - você também deverá ver um endereço IPv6.

É claro que você pode fazer o mesmo com o Rπ também ... na verdade, você provavelmente deve fazer isso no Rπ. Mas isso já está crescendo Enquanto isso, sinta-se à vontade para postar uma nova pergunta sobre como fazer o Linux funcionar como um roteador IPv6. (Você precisará de radvd .)

1 Para que a autoconfiguração funcione, deve ser um prefixo / 64. O que significa que, se você quiser usar o seu "roteado / 48" para a LAN, você pode usar add route prefix/48 , mas você ainda deve escolher uma sub-rede / 64 e adicionar um (segundo) rota para isso também.

    
por 01.03.2015 / 21:31