ESTABLISHED 接続で TCP パケットが無視される
Issue
- ESTABLISHED 接続で TCP SYN パケットが無視されます。
- 外部システムが再起動し、既存ポートまたはタプルを再利用して TCP 接続を再度確立しようとすると、SYN パケットが破棄されます。このとき、警告は発生しません。RFC 5961 セクション 4.2 によると、RHEL は Challenge ACK で応答する必要があります。
- RHEL 6.6 で TCP SYN 処理が変更しました。
- 確立済みソケットにおける SYN の受信処理について。現在、SYN は破棄されますが、以前は ACK (クライアントからの古い TCP 接続の現在のシーケンス番号) が送られていました。これにより、このシーケンス番号が期待されないため、クライアントから RST を発生します。
- RHEL 6.6 へのアップストリームのカーネルコミット
c3ae62af8e755のバックポート (tcp: は、ACK フラグを設定せずに受信フレームを強制終了する必要があります) は、RFC5961-compliant behavior for SYN packets に準拠しておらず、これにより、CLOSE_WAIT ソケットで問題が発生する必要があります。 - tcp: Restore RFC5961-compliant behavior for SYN packets
- tcp 接続が適切に閉じず、LAST_ACK 状態のままになります。
- クライアントの電源が突然切れたあと、Solaris NFS クライアントは RHEL NFS サーバーからマウントすることができません。NFS サーバーを再起動すると、クライアントが再度マウントされます。
Environment
- Red Hat Enterprise Linux 6.6 の
kernel-2.6.32-504.el6から2.6.32-504.27.el6 - Red Hat Enterprise Linux 7.0 または 7.1 の
kernel-3.10.0-123.el7またはkernel-3.10.0-229.el7シリーズ - 既存の TCP セッションで再利用される TCP ポート番号
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
