cURL proxy socks5: “Resposta vazia do servidor”

2

Estou acessando um recurso http usando o Chrome, FoxyProxy sem problemas. O proxy é definido como socks5 na porta padrão 1080 .

Eu tentei acessar o mesmo recurso usando cURL (URLs reais foram alterados por motivos de privacidade):

$ curl -vvv -socks5 SOCKS_SERVER:1080 -X GET "THE_URL_FROM_BROWSER"

E tenho:

* About to connect() to SOCKS_SERVER port 1080 (#0)
*   Trying IP... connected
* Connected to SOCKS_SERVER (IP) port 1080 (#0)
> GET / HTTP/1.1
> User-Agent: curl/7.21.4 (universal-apple-darwin11.0) libcurl/7.21.4 OpenSSL/0.9.8r zlib/1.2.5
> Host: SOCKS_SERVER:1080
> Accept: */*
> 
* Empty reply from server
* Connection #0 to host SOCKS_SERVER left intact
* Connection #0 seems to be dead!
* Closing connection #0
* About to connect() to URL_HOST port 80 (#0)
*   Trying SOME_IP...

O que nunca volta com uma resposta.

Alguma idéia do motivo pelo qual o cURL não pode acessar o mesmo recurso acessado pelo FoxyProxy?

    
por Adam Matan 27.09.2012 / 11:22

1 resposta

5

Eu obtenho o mesmo resultado, e olhando para a saída strace, ele tenta se conectar diretamente ao URL_HOST.

No entanto, se eu usar

curl -x socks5://SOCKS_SERVER:1080 "THE_URL_FROM_BROWSER"

Funciona como esperado (use socks4a ou socks5h para ter nomes de host resolvidos pelo proxy, se suportado)

    
por 27.09.2012 / 22:46