前提・実現したいこと
TCP の 3 way handshake において、サーバーが SYN パケット受信し SYN + ACK を送付後、クライアントが ACK を返さなかった場合に SYN + ACK を再送しているか確認したい。
確認方法についてや、以下の "試したこと" に関してアドバイスいただけますと幸いです。
前提条件/制約
クライアントは自社環境のため、設定の確認や変更が可能。
サーバーは現時点ではアクセス許可が下りておらず、設定の確認などができない状況。(また、詳細も不明)
そのため、外部から観測した挙動のみで判断する必要がある。
試したこと1
hping3 をクライアント側で使用し、送信元 IP を別のマシンの IP に偽装。
別マシンにて、パケットをキャプチャし、SYN + ACK が送られてくるかを確認したところ、なぜか SYN + ACK のパケットが受信できず。
(正しく、送信元 IP の偽装ができてなかった?)
試したこと2
クライアント側のファイアウォール設定で、当該サーバーからの inbound 通信を DENY
その状況で hping3 で SYN パケットを送り、返された SYN + ACK パケットがファイアウォールで破棄され、複数回 SYN + ACK が送られてくることを期待。
(パケットキャプチャは NIC でパケットを取得しているため、ファイアウォールで破棄される前のパケットが取得できる認識)
結果としては、自分から張ろうとした接続のためか、ファイアウォールでパケットが破棄できず、普通に SYN + ACK → ACK を返してしまった。
補足情報(FW/ツールのバージョンなど)
サーバー: 詳細不明。
クライアント:
- ubuntu 18.04
- hping3 version 3.0.0-alpha-2
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/12/07 15:25