2012-07-24 58 views
0

假設我正在運行綁定到公有IP的TURN服務器(比如說100.0.0.1)。當服務器爲創建分配請求創建一箇中繼端口時,服務器是否會發送與XOR-RELAYED中的綁定(本例中爲100.0.0.1)不同的IP地址? ADDRESS屬性?我不太熟悉網絡知道所有可能的情況,並且RFC 5766沒有具體說明任何事情(據我所知)。TURN服務器XOR-RELAYED-ADDRESS IP與其自己的公有IP不同

換句話說,XOR-RELAYED-ADDRESS中的IP地址是多餘的嗎?在我考慮的所有情況下,客戶端只需要知道分配的端口,並且可以完全忽略XOR-RELAYED-ADDRESS的IP。只要客戶端知道中繼端口,它就可以在中繼端口上始終發送中繼數據到TURN服務器公用IP(它已經知道IP,因爲它最初必須連接...)。

有何評論?

回答

1

如果你的服務器不在NAT後面(在分配了公有IP地址的公共網絡上),那麼在XOR-RELAYED-ADDRESS中返回的IP地址將是相同的。 (它將始終與分配給其NIC的IP地址相同)。

我假設你正在考慮忽略XOR-RELAYED-ADDRESS的原因與你有關,其他問題提示TURN服務器實際上是在NAT /防火牆之後。我想你會發現IP地址是可預測的。但是你的服務器所在的防火牆/ NAT有可能會搞亂端口分配。確保您瞭解TURN服務器如何進行端口分配,並確保您的防火牆能夠正確進行端口轉發。

一點名稱澄清。您的服務器沒有「綁定」到公共或私有IP上。您的服務器套接字綁定到具有分配的IP地址並與其關聯的接口。

+0

在我的情況下,NAT直接轉發端口。感謝術語說明:) – Chris 2012-07-25 17:44:12

+0

然後,您很高興能讓客戶端承擔IP地址。 – selbie 2012-07-25 18:04:32

+0

這是否意味着如果我的TURN服務器位於NAT /防火牆之後,它仍然可以工作?我有類似的問題,中繼地址與本地地址相同,而我已經使用端口轉發從我的公共IP到端口3478上的本地IP。 – 2017-06-12 09:13:34

0

其實你們都忽略了TURN服務器上的中繼IP地址和監聽IP地址不同的情況。 TURN服務器可能正在偵聽地址1.2.3.4,但它可能會將中繼端點分配給另外兩個公用地址 - 如2.3.4.5和3.4.5.6。實際中繼的IP地址在XOR-RELAYED-ADDRESS中返回,它可能與監聽地址有很大不同。

相關問題