2012-01-13 19 views
0

如何映射發送的數據包及其來自服務器的響應?使用port安全嗎?例如,我捕獲了一個tcp數據包,從X.X.X.X:45621到Y.Y.Y.Y:993,即將到來的另一個來自Y.Y.Y.Y的數據包:993,以及到X.X.X.X:45621。我應該如何映射發送的數據包及其相應的響應?

可以肯定地說,第二個數據包是第一個數據包的響應嗎?

以下兩種情況是否會造成問題?

1)端口重新使用

2)如果(可能?)多個請求來自一個端口到同一遠程機器?

+0

如果從特定端口發送數據包,則接收到該端口的數據包是響應。至少在連接關閉之前。 – 2012-01-13 11:12:56

+0

這只是你如何定義*響應*的問題。如果您將* response *定義爲「源IP /端口和目標IP /端口交換的接收主機發送的後續數據包」,則它是「響應」。如果你有其他的定義,那麼也許。 (例如,這是多少個NAT設備爲UDP定義「響應」。) – 2012-01-13 17:42:21

回答

3

TCP連接(或UDP僞連接)由4項標識:本地IP地址,本地端口號,遠程IP地址和遠程端口號。如果從一個數據包到下一個數據包的所有4個數據都是相同的,那麼它們是相同的連接。如果其中任何是不同的,這是一個不同的連接。請注意,「本地」IP地址和端口顯示爲傳出數據包的源IP地址和端口,以及傳入數據包的目標IP地址和端口,反之則顯示爲「遠程」。

所有這些在連接的生命週期內都是有效的。連接關閉後,同一個4元組可能會被重新用於新連接。

1)問:端口重新使用 答:許多連接可以使用相同的端口。至少有四個元組中的其他3個成員之一將區分連接。

2)問:如果多個請求來自一個端口到同一個遠程機器怎麼辦? 答:如果多個連接到達目的地是同一個IP地址的同一個端口,並且它們具有相同的源端口,只要它們來自不同的源主機即可:源IP地址將不同。這種情況不會發生多個連接來自相同主機註定相同端口相同主機,因爲同一個源主機上沒有兩個套接字可能已被綁定到同一個源端口。

相關問題