一部の接続がタイムアウトし、他の接続が拒否されるのはなぜですか?


13

ランダムなポートでTelnetを試行しているときに、次の2種類のシナリオが発生することに気づきました。

$ telnet example.com 3432
  Trying 173.252.110.27...

$ telnet example.com 3432
  Connection Refused.

誰かが2つの違いは何ですか私に説明できますか?


1
前者の場合、トラフィックはドロップされ、後者の場合、トラフィックは拒否されます。以下のリンクは、DROPとREJECTの違いをまとめたものですchiark.greenend.org.uk/~peterb/network/drop-vs-reject
tuk

回答:


10

1つの理由は、example.comのファイアウォールの動作です。ファイアウォールが単にトラフィックをドロップする場合は、最初の応答が表示されます。一方、ファイアウォールがトラフィックを拒否すると、2番目のトラフィックが発生します。

よりよく理解するには、tcpdumpWiresharkなどのパケットフィルターを使用して、テストを実行しながらトラフィックを嗅ぎます。

最初のケースはSyn、Syn、Syn ...のようになります。

2番目のケースは、Syn、Rstのようになり、ICMPポートに到達できない可能性があります。

接続が成功すると、tcp 3ウェイハンドシェイクで期待されるSyn、Syn-Ack、Ackのようになります。


2
1つの疑問、つまり、一部のアプリが一部のポートでリッスンしておらず、そのポートへの接続をブロックするファイアウォールがない場合、2つ目のケースが発生するはずです。つまり、返信にRST TCPフラグを設定する必要があります。私は正しいですか?
プラディペヘトリ2013

2
@pradeepchhetriはい、ライブホストへのトラフィックをリッスンまたはブロックしているものがなければ、接続拒否エラー(および関連するTCP RSTパケット)が発生します。しかし、最近のインターネットではそれは本当に珍しいことです。
CVn 2013
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.