Telnet sobre o proxy ipv4 para o host ipv6

2

Eu tenho um servidor dante socks que é configurado para escutar em um ipv4 IP e ter um IP externo ipv6.
Eu estou tentando descobrir como verificar se isso realmente funciona.
Eu tentei usar curl , mas se eu digitar:

curl http://google.com --socs5 1.2.3.4:9000

Eu recebo um erro no lado de meias de data porque google.com resolve um endereço ipv4 e dante diz que não pode rotear o IPv4 porque não tem endereço IPv4 configurado como externo. O que é praticamente esperado.

Então, encontrei o parâmetro -6 para curl. Agora ele resolve google.com para um endereço IPv6, mas também tenta resolver 1.2.3.4 para um endereço IPv6 errado.

Se eu tentar usar explicitamente o IPv6 como um URL para o curl, recebo um erro:

curl 'http://[2a00:1450:400c:c03:0:0:0:8b]/' --socks5 1.2.3.4:9000

Também tentei usar proxychains com o telnet, mas parece que se eu especificar um endereço IPv4 como proxy nos proxychains:

socks5 1.2.3.4

Ele ignora esse proxy e faz um pedido direto se usar o IPv6 com o telnet:

proxychains telnet 2a00:1450:400c:c03:0:0:0:8b 25

Então, como faço telnet para algo com endereço IPv6 por meio de um proxy de meias em um endereço IPv4?

    
por Glueon 14.02.2015 / 21:22

1 resposta

3

O que você está vendo é uma das inúmeras razões pelas quais é quase sempre melhor enviar um nome de host sobre SOCKS e deixar o servidor SOCKS resolvê-lo para um endereço IP, em vez de resolver o endereço IP no cliente SOCKS.

Na página curl man, menciono duas opções diferentes do SOCKS5 dependendo de qual lado você deseja resolver o nome do host. --socks5 resolverá o nome do host no cliente, --socks5-hostname resolverá o nome do host no servidor. Eu recomendo usar o mais tardar. Outros clientes SOCKS também podem precisar ser configurados para fazer a resolução do nome do host no servidor SOCKS. Por exemplo, descobri que o Firefox resolve nomes de host no lado do cliente por padrão, mas tem uma opção de configuração para fazê-lo no servidor.

Além disso, as sugestões da página de manual usam --proxy em vez de --socks* opções. Da minha leitura, a sintaxe correta para o seu caso seria --proxy socks5h://192.0.2.4:9000/

    
por 15.02.2015 / 17:08

Tags