Nat

NAT UDP埠切換?

  • July 30, 2013

我已經閱讀了有關 Quake 3 網路程式碼的資訊,他們必須處理一些較舊的 NAT 會隨機切換客戶端埠的情況。

這些天這個問題有多普遍?實現遊戲網路協議時是否值得處理?

換句話說,實現虛擬連接的UDP網路協議是否需要處理NAT突然改變客戶端埠的情況?

您不應依賴源埠在來自同一主機的連接之間保持穩定,並且如果您使用的是無連接的 UDP(通常推薦用於遊戲應用程序,因為保持低延遲勝過需要可靠傳輸),您不應該期望它們在個人之間保持穩定數據包。

NAT 本質上通常需要處理源埠資訊,因此這使情況更加複雜,而單級 NAT 可以相對聰明,並嘗試將來自給定主機的數據包的源埠保持到另一個穩定一層(在移動網路和一些免費無線接入點中並不少見)從視窗中消失。

引用自:https://serverfault.com/questions/527348