非アクティブな状態が一定期間続いた後、EC2 SSH接続でpacket_write_wait:Broken Pipeエラーが発生し続けます。
ServerAliveInterval
とClientAliveInterval
の設定を5
から120
までのさまざまな値で変更してみました。また、TCPKeepAlive
設定をno
またはyes
に変更してみました。これらの設定を/etc/ssh/sshd_config
と~/.ssh/config
の構成に適用してみました(Host *
ブロックとHost SERVER.COM
ブロックでこれらを試しました)。
それでも、packet_write_wait:Broken Pipeエラーで切断され続けます。この問題を修正するにはどうすればよいですか?
これは、長期間にわたって大きなパケット損失が発生したり、AWS間でルートが変更されたりすることを意味します(必ずしもプロバイダーではなく、ルーターまたは中間プロバイダーである場合もあります)。そのため、tcpキープアライブも応答されません。トラフィックを検査し、wireshark/tsharkをバックグラウンドで使用して両側で送受信されたすべてのパケット。データが配信されない、またはTCP=再送信がある場合は、これが問題の原因です。