Fallback IPv6 para IPv4

2

Atualmente estou conectado à Internet por meio do IPv4, estou usando o túnel do sixxs.net e tenho uma sub-rede e um do IPv6 atribuído à minha interface eth0.

Então, eth0 tem IPv4 e IPv6:

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
    link/ether 00:02:XX:XX:61:36 brd ff:ff:ff:ff:ff:ff
    inet XXX.XXX.0.22/24 brd XXX.XXX.0.255 scope global eth0
    inet6 2a01:XXXX:XXXX::1/64 scope global 
       valid_lft forever preferred_lft forever

Quando estou tentando me conectar a alguns, por exemplo. website que é IPv6 pronto, é bom, IPv6 é o preferido, mas se algo acontecer e é IPv6 não está disponível eu gostaria de ter fallback para IPv4. Isso é possível?

Ou é possível forçar o usuário temporário IPv4 em vez de IPv6, mesmo que o programa não suporte (por exemplo, por opção -4)?

    
por Ency 06.03.2011 / 11:17

1 resposta

3

Isso já deve acontecer, já que é (como deveria ser) o comportamento padrão da sua rede.

No entanto, na prática, há uma ou duas pequenas coisas que podem atrapalhar. Veja como funciona:

  1. Você deseja acessar um URL, digamos www.kame.net . Seu DNS deve solicitar um AAAA e um A .

  2. Se um registro AAAA for retornado, ele tentará se conectar ao endereço IPv6.

  3. Se nenhuma conexão puder ser estabelecida (host off-line, conexão IPv6 inativa, etc), ou se nenhum registro AAAA existir, o IPv4 será usado.

Problemas podem ocorrer nos seguintes itens:

  1. Um servidor DNS incorretamente configurado ou antigo que não retorna AAAA endereços significa que o IPv6 nunca é usado.

  2. Uma rede IPv6 configurada incorretamente (por exemplo, ter um endereço IPv6 roteável (não um endereço local vinculado), mas nenhum RA foi descoberto ou o RA não está realmente conectado à Internet , a pilha TCP / IP pode levar até 90 segundos para expirar e voltar ao IPv4, tornando-a praticamente inútil.

Se você estiver escrevendo seu próprio aplicativo que realiza suas próprias pesquisas de DNS, esse também é o comportamento que você deve gravar em seu aplicativo. Se esse também for o caso, o suporte ao IPv6 é um pouco mais complicado do que isso (por exemplo, nosso analisador de logs, construído no IPv4, tinha um campo de 32 bits de endereço fixo para o endereço IP. Isso, claro, quebrou quando implementamos nossa primeira rede IPv6).

    
por 06.03.2011 / 11:46