私はソックスプロキシと一緒にカールを使用しています。プロキシは次のように構成されます。ANY_PROXY="socks5://NNN.NNN.NNN.NNN.PPPP"
私はカールがプロキシを介さずにローカルにホスト名を解決することを観察しました。 IPを含むURLを要求すると、要求は正常に機能しますが、ホスト名をローカルで解決できず、カールが失敗します。
マニュアルページで、次の明示的なCLIオプションが見つかりました。
--socks5-hostname <host[:port]> Use the specified SOCKS5 proxy (and let the proxy resolve the host name).
興味深いことに、括弧内のテキストは、このオプションがプロキシを介してホスト名も解決することを強調します。ただし、これはすべてホスト名解決に関するものであり、残りのマニュアルページには名前解決がプロキシとどのように機能するかを説明するテキストはありません。
バージョン:curl 7.27.0 (x86_64-redhat-linux-gnu) libcurl/7.27.0 NSS/3.15.1 zlib/1.2.7 libidn/1.26 libssh2/1.4.3
カールがホスト名を指定せずにプロキシを介してホスト名を解決できるようにするオプションまたは代替環境変数はありますか--socks5-hostname <host:port>
?
答え1
私のような愚か者には微妙な部分があります。
7.21.7以降、SOCKS 5ホスト名
-x
プロキシを指定してプロトコルプレフィックスを使用できるため、このオプションは重複しています。--proxy
socks5h://
h
次の小さな部分は、socks5
カールにプロキシを介してホスト名を見つけるように指示します。
カールを作るプロキシによるホスト名の検索エクスポートする必要があります。
ALL_PROXY="socks5h://NNN.NNN.NNN.NNN.PPPP"
エージェントと比較して地元で探す:
ALL_PROXY="socks5://NNN.NNN.NNN.NNN.PPPP"