クライアントこんにちは後にカールが停止します。

クライアントこんにちは後にカールが停止します。

Ubuntuで次のコマンドを実行するとき:

 curl -v --insecure -XGET 'https://user:pass@IP_ADDR:PORT/SOME_FILE.php'

私は次のような結果を得ます。

* Hostname was NOT found in DNS cache
*   Trying IP_ADDR...
* Connected to IP_ADDR (IP_ADDR) port PORT (#0)
* successfully set certificate verify locations:
*   CAfile: none
  CApath: /etc/ssl/certs
* SSLv3, TLS handshake, Client hello (1):

数分後、私はこれを得ました:

* Unknown SSL protocol error in connection to IP_ADDR:PORT 
* Closing connection 0
curl: (35) Unknown SSL protocol error in connection to IP_ADDR:PORT 

CentOSで同じことを試しましたが、まだ停止しましたが、Client Hello最終的に次のような結果が得られました。

curl: (28) Operation timed out after 0 milliseconds with 0 out of 0 bytes received

原因が何であるか、解決策を知っている人はいますか?

ベストアンサー1

誤って設定されたMTUのために同じ問題が発生しましたが、他の考えられる原因がたくさんあります。

重要なことは、エッジルータからのトラフィックをスニッフィングすることです。ここで、要求しているサーバー(GitHub.com)に送信されたICMPメッセージを表示できます。分裂。これにより、接続がめちゃくちゃになり、再送信、ACKの重複などが発生する可能性があります。

ここに画像の説明を入力してください。

ICMPパケットには、MTU of next hop奇妙な値1450を含むフィールドがあります。一般的な値は1500です。

ここに画像の説明を入力してください。

ルータを確認しましたが、インターフェイスの1つ(Ethernetトンネル)にその値がMTUとして含まれているため、ルータはすべてのインターフェイスのうち最小のMTUをネクストホップとして使用しました。このインターフェイスを削除すると(使用されていない)、SSHハンドシェイクが再び機能し始めました。

おすすめ記事