2012-03-11 83 views
1

RFC 5780爲STUN定義了由服務器發送回請求客戶端的STUN消息響應的Response-Origin屬性。STUN協議:如何檢測兩次或兩次NAT防火牆?

它把它描述爲:

響應-ORIGIN屬性是由服務器插入並表示響應從發送源IP地址和端口。這對檢測雙重NAT配置很有用。它僅存在於綁定響應中。

客戶端如何使用服務器的源IP和端口來檢測雙重NAT配置?無法從UDP數據包的源字段中輕鬆讀取源地址信息,因爲入站NAT僅重新寫入目標地址而不是源地址?

回答

0

服務器可以告訴兩件事:

i)它爲您提供什麼IP地址。如果它不匹配你的IP地址,你知道你和服務器之間有一個NAT。您已被翻譯。

ii)它看到遠程對等體的IP地址,以及遠程對等體與服務器通信的IP地址。如果它們不匹配,則遠程對等體也在NAT後面。

因此,你可以找到你是否正在處理雙重NAT的情況。

現在,不要將這與您和服務器之間存在兩個NAT的情況混淆。但在這種情況下,您不必擔心,因爲服務器將在您從您到服務器的路上使用最後一次NAT。

+0

因此,如果我正確地聽到您的意思,那麼您說當RFC 5780引用雙重NAT時,它指的是您的遠程對等方也是NAT。但是,如果這是正確的,我也沒有看到RESPONSE-ORIGIN屬性如何對此有所幫助。該規範將RESPONSE-ORIGIN定義爲包含STUN服務器的IP和端口信息,而不是遠程對等端的信息。該信息如何有助於確定有關遠程對等方的信息? – Nantucket 2012-03-12 23:40:15

+0

您在RFC 5780中讀到RESPONSE-ORIGIN是服務器IP和端口的位置?哪一頁?它只是說它插入了應答者的信息,而不是它自己的IP地址和端口。 – JVerstry 2012-03-12 23:56:05

+0

在我從RFC 5780引用的行中,它表示RESPONSE-ORIGIN「由服務器插入,並指示響應從其發送來的源IP地址和端口」。響應將從服務器的IP和端口發送。 – Nantucket 2012-03-13 06:45:28