wget para um servidor IPv4 de VPS somente IPv6
Eu tenho um VPS CentOS 7 que não possui IPv4 e possui apenas rede IPv6 . Abri a porta 443 para aceitar todas as conexões TCP.
Quando eu tento wget https://www.litespeedtech.com/packages/6.0/lsws-6.0RC1-ent-x86_64-linux.tar.gz
, ele lança um erro (que eu acredito que seja porquehttps://litespeedtech.com/não está habilitado para IPv6):
Resolving www.litespeedtech.com (www.litespeedtech.com)... 52.55.120.73
Connecting to www.litespeedtech.com (www.litespeedtech.com)|52.55.120.73|:443... failed: No route to host.
Ao tentar o mesmo para o Google (que é habilitado para IPv6) wget https://google.com
, é bem-sucedido:
Resolving www.google.com (www.google.com)... 2a00:1450:4016:805::2004, 172.217.23.68
Connecting to www.google.com (www.google.com)|2a00:1450:4016:805::2004|:443... connected.
HTTP request sent, awaiting response... 200 OK
Como posso me conectar a servidores IPv4 do meu VPS somente IPv6? Já ouvi falar do TunnelBroker, mas sou um novato completo e não tenho ideia do que devo fazer para configurá-lo.
Respostas
IPv6 e IPv4 são protocolos diferentes. Se você tiver apenas endereço IPv6 no espaço da Internet, não poderá se conectar diretamente a serviços somente IPv4. É uma resposta muito curta - "não, você não pode".
O TunnelBroker e outros serviços gratuitos oferecem apenas túneis em outras direções, ou seja, de IPv4 para IPv6 e não vice-versa, até onde eu sei. Você pode configurar seu próprio túnel em outro host executando dual-stack (tanto IPv4 quanto IPv6) ou tentar encontrar algum serviço comercial para esse fim, mas isso está fora do escopo do Server Fault e duvido que seja isso que você precisa.
Para baixar um arquivo, você pode usar outro PC e apenas transferi-lo para sua caixa IPv6 por SSH.
A solução foi mudar para o Debian 10 (embora isso também deva funcionar para o Ubuntu) e substituir os servidores de nomes /etc/resolv.conf
para usar este serviço de transferência NAT64 público :
search blue.kundencontroller.de
options rotate
nameserver 2a00:1098:2b::1
nameserver 2a00:1098:2c::1
nameserver 2a01:4f8:c2c:123f::1
nameserver 2001:67c:2b0::4
nameserver 2001:67c:2b0::6
Por favor, note que o resolv.conf é especificamente para EUServ VPS-es. Se você estiver usando algum outro VPS, copie e cole apenas os servidores de nomes
Isso permitiu que o VPS (magicamente) acessasse a Internet IPv4 (sim, mesmo instalando pacotes de sites de fornecedores IPv4).
Este serviço é executado por um único indivíduo, que também tem acesso a todo o seu tráfego IPv4 e a todo o seu tráfego DNS. Se você está transmitindo dados confidenciais ou está criando um site sério, acho que a melhor aposta é obter um VPS compatível com IPv4 a partir de agora. Você também pode usar isso para baixar algum pacote que não conseguiu e, em seguida, reverter para seus servidores de nomes originais.
Usar o Wget direto não é a única solução para obter pacotes de instalação para o seu servidor. Como a rede somente IPv6 funciona perfeitamente bem para o seu caso de uso (um site atrás do Cloudflare), eu não tentaria usar nenhum hack para obter conectividade IPv4 mesmo que temporariamente, mas usaria outras maneiras de transferir os dados :
Use um servidor intermediário com conectividade IPv4 e IPv6 e espelhe o pacote lá.
user@intermediate:/var/www$ wget https://ipv4only.example.com/packages/install.tar.gz user@vps:~$ wget https://intermediate.example.net/install.tar.gz
Se você já tiver conexão SSH com o servidor, provavelmente também poderá usar SFTP ( SSH File Transfer Protocol ) para carregar o pacote em vez de baixá-lo diretamente.
Configure seu Wget para usar um proxy HTTPS em
~/.wgetrc
(ou global/etc/wgetrc
):https_proxy = http://[Proxy_Server]:[port]
Você pode usar qualquer proxy que suporte IPv6 e HTTPS e esteja disposto a confiar. No entanto, eu ainda verificaria a integridade do arquivo comparando as somas MD5 (
md5sum install.tar.gz
).