請問一下,關於多級路由器的NAT問題如何解決?

再更一下:

不好意思我可能有強迫症,剛剛的"UDPBlocked"弄的我不是很舒服,這時正好記得吐籽的答案里貼吧那篇文章看了下,換了測試地址就變成了"PortRestrictedCone",帖子里說可能是DNS解析的問題

---------------------------------

最終更新:

實在沒有辦法了,所以我最後還是把OPENWRT作為第一級,水星作為無線交換機來使用

就可以派對進行語音以及FIFA搜索聯機了,雖然電腦端用"nat類型測試"工具測還是顯示為"UDPBlocked"

我認為可能的確如Chan Jesse所說"兩次DMZ的轉換在SOHO級路由器上面可能會有問題。"

感謝各位給我的幫助!

再次感謝!!

------------------------------------

再次更新:

我移開了沙發把openwrt做為第一級,水星撤了以後,在pc端用"nat類型測試工具"測試了一下,為"UDPBlocked",然後埠轉發設置了一下,因為不知道怎麼設置所以就填了80埠,變為了"PortRestrictedCone"

然後我又重新換回原來的結構,水星路由器保持DMZ打開不變,openwrt路由器埠轉發80不變的情況下,測試結果又變為了"UDPBlocked"

不知道此情況能否給各位帶來新的判斷?

---------------------------------------

更新:

我在想,會不會是第一級路由器比較低端所以能力不足的關係?

我嘗試設置了DMZ主機以及各種埠轉發,也依舊不行

突然想起來一個情況,我有一次成功進入過派對語音,僅此一次,當時也是先是不行,過了兩小時左右再試了一次就成功了

----------------------------------------

抱歉忘了說明一個情況...我的第一級路由器是在弱電箱里...弱電箱在沙發的後面...所以..如果把第二級的路由器改為lan口連接當作交換機來使...那openwrt里的那些功能還能不能使用呢?

----------------------------------------

起因:由於PS4聯機時,派對總是顯示"NAT類型限制"所以不能語音。玩FIFA時也是顯示NAT類型不為OPEN連接失敗。PS4的網路狀態和測試里均顯示為NAT2。

配置:接光貓的第一級路由器是水星MW305R,第二級接著PS4和其他設備的是刷了pandorabox的那個新路由(用了SS)。

大致如圖。

嘗試:網上搜索聽說是因為埠沒有映射的關係,所以我嘗試了

如圖設置,因為不知道埠怎麼填所以就隨意填了80埠。

然後PSN的派對還是同樣錯誤,FIFA的錯誤從nat類型restricted變成了moderate

所以,我想請教下專業的人士,我該怎麼弄才能搞定這個問題呢?


都沒有說到重點的

除了設置為交換機這種笨辦法之外,有如下辦法:

查看低級路由在WAN端的IP,並且在高級路由上把這個IP設置為DMZ

這樣的話除了高級路由下有設備已經佔用這個埠,並且低級路由下由於無法知曉高級路由映射狀態,可能在低級路由上映射衝突埠,在高級路由上第二次映射的時候可能埠號會變化外,沒有別的影響

然後低級路由如何管理埠映射隨你便,upnp或者人工設置規則都可以

其實看來你們都不了解NAT到底是怎麼回事,留個坑以後來填

此外我看了下我的路由紀錄,PS4開機後upnp設置裡面多了一條UDP9308的規則,試試這個埠號


在水星里把OPENWRT路由器的wan口IP設成DMZ


要回答這個問題,要從NAT開始說起。從實現的技術角度,NAT可以分為四種類型:

  1. 全錐NAT(Full Cone NAT):全錐NAT 把所有來自相同內部IP 地址和埠的請求映射到相同的外部IP 地址和埠。任何一個外部主機均可通過該映射發送數據包到該內部主機。
  2. 限制性錐NAT(Restricted Cone NAT:限制性錐NAT 把所有來自相同內部IP 地址和埠的請求映射到相同的外部IP 地址和埠。但是, 和全錐NAT 不同的是:只有當內部主機先給外部主機發送數據包, 該外部主機才能向該內部主機發送數據包。
  3. 埠限制性錐NAT(Port Restricted Cone NAT):埠限制性錐NAT 與限制性錐NAT 類似, 只是多了埠號的限制, 即只有內部主機先向外部地址:埠號對發送數據包, 該外部主機才能使用特定的埠號向內部主機發送數據包。
  4. 對稱NAT(Symmetric NAT):對稱NAT 與上述3 種類型都不同, 不管是全錐NAT ,限制性錐NAT 還是埠限制性錐NAT ,它們都屬於錐NAT (Cone NAT )。當同一內部主機使用相同的埠與不同地址的外部主機進行通信時, 對稱NAT 會重新建立一個Session ,為這個Session 分配不同的埠號,或許還會改變IP 地址。

以上四種類型可以用NAT類型測試工具檢測出來(如果檢測不到,會顯示UdpBlocked)其中,全錐NAT 屬於SONY里的NAT1限制性錐NAT、埠限制性錐NAT和對稱NAT屬於NAT2。類型穩定在NAT2就OK,一般情況國內都是NAT2

NAT對於外部主機來說,內部主機是不可見的。但是對於P2P應用來說,要求能夠建立端到端的連接,如果不能建立連接,就會出現類似派對不能語音這樣的問題,也是原因所在。對應的解決辦法有二:

  1. 埠映射,對應轉發規則 — 虛擬伺服器。這裡映射的埠應該是PS4的埠,具體的PS4埠資料你需要查說明書或者打電話問客服。
  2. DMZ,對應轉發規則 — DMZ主機。DMZ綁定的主機自己暴露在公網,數據不經過路由的防火牆。多個路由建議A路由的DMZ綁定B路由為DMZ主機(IP是B路由在A里的地址),B路由的DMZ再綁定PS4。

以上。

References:

  1. 【科普】教你正確選擇路由和設置dns,改善nat類型,mtu(小白向_ps4吧

  2. P2P,UDP和TCP穿透NAT

  3. PS3對戰卡/DNS錯誤/NAT3/遊戲搜不到房間/登陸不上PSS等解決方法,這裡也許有您想要的-[PLAYMAX]


1、根據你的描述,我理解你的需求是要把PS4的部分遊戲要求PS4能夠實現雙向訪問。所以你有兩個選擇:(1)把PS4的遊戲需要對外開放的埠映射出去。從你的描述來看,相關埠你並不清楚,所以跳過這種方式;(2)直接把PS4放到DMZ區域,暴露給公網,這種做法有兩種實現途徑(保留原有拓撲):

1)水星LAN口——openwrt LAN口——PS4。openwrt的LAN口與PS4設定固定IP,網關都為水星LAN口IP,DNS也為水星LAN口 IP;水星DMZ區域,設置DMZ 的IP為PS4的固定IP;同時openwrt的DHCP一定要關閉。

2)水星LAN口——openwrt WAN口——PS4。PS4和openwrt設定為固定IP,openwrt的WAN口IP段要與水星DHCP池網段一致,而PS4的IP則設置與openwrtDHCP池網段一致;水星DMZ區域,設置DMZ 的IP為openwrt的固定IP。openwrt DMZ區域,設置DMZ 的IP為PS4的固定IP。這種辦法的風險在於,兩次DMZ的轉換在SOHO級路由器上面可能會有問題。

2、建議你用第一種方法嘗試,比較簡單,當然openwrt某些功能可能缺失。

兩種辦法的風險都在於,PS4暴露在公網上,比較危險,建議要用到的時候再開啟相應DMZ功能。


我覺得比較簡單的可能是把一個路由換成交換機,或者把一個路由當作交換機來使,這樣子兩層網路就變成一層了


1.在水星里設置DMZ把openwrt WAN口IP加入.需注意水星和openwrt必須是不同網路段(192.168.0.x、192.168.1.x)之類的.

2.把水星那台當小交換機用,即:光貓接水星的LAN口、openwrt的WAN口接水星的LAN口.然後用opwenwrt撥號.


openwrt的IP改為192.168.2.1試試


簡單粗暴有效:拉根長網線,連接水星路由器和PS4。

我就是這麼乾的,不過不是因為NAT,而是WIFI的網速不夠穩定


用交換機要花錢吧,不如直接路由改交換機就好了。


直接把水星的路由器不用了不就行了嗎。。。。

如果非要用水星的可以考慮,1.用openwrt路由WAN口直接接光貓撥號。

2.把網線拆成兩根或者在甩一根平行線。

3.水星WAN接上openwrt路由lan口上。


推薦閱讀:

對於國行 Xbox One 的宣傳大家怎麼看?
首發xbox one x有哪些理由值得入手?
國內的索粉為啥這麼喜歡黑別的遊戲平台?
為啥國行 Xbox One 和 PS4 目前都缺乏國外遊戲大作?
有什麼適合爸媽玩的ps4遊戲?

TAG:路由器 | 計算機網路 | 家用遊戲機 | 弱電 |