不急不徐,持之以恒。

          http://blog.gopersist.com/

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            24 隨筆 :: 0 文章 :: 52 評論 :: 0 Trackbacks
          我們看看不同NAT之間的NAT打洞。NAT打洞需要Server配合,需要2種Server:
          1. 類似WebRTC中的信令服務器,作用是幫助客戶機溝通IP和PORT信息;
          2. STUN Server,用來讓客戶機判斷自己所在的NAT環境。
          現在假設客戶端和Server的通訊都沒問題,客戶端知道自己所處環境,并且將自己的信息通過服務器發送給了另一方客戶端,它們可能的打洞情況如下:
          1. Full Cone NAT 與 Full Cone NAT:通訊很容易,各自通過STUN Server獲取外部IP和Port后,通過信令服務器通知另一方,即可通訊。
          2. Full Cone NAT 與 Restricted Cone NAT或Port Restricted Cone NAT在互相告知IP和Port后,如果由Full Cone NAT端先發送數據包,會失敗,必須由Restricted Cone NAT或Port Restricted Cone NAT端先發送數據包給Full Cone NAT,之后雙方即可互相通訊。
          3. Full Cone NAT 與 Symmetric NAT通訊時,必須先由Symmetric NAT端發送數據包給Full Cone NAT端,Full Cone NAT端通過發來的數據包獲得目標的新端口號,之后通過這個新端口號完成互相通訊。
          4. Restricted Cone NAT 與 Restricted Cone NAT、Restricted Cone NAT 與 Port Restricted Cone NAT、Port Restricted Cone NAT 與 Port Restricted Cone NAT之間通訊時,先發送數據包的一方會失敗,之后另一方發送數據包成功后,可互相通訊。
          5. Restricted Cone NAT 與 Symmetric NAT通訊時,先由Restricted Cone NAT發送數據包給Symmetric NAT,發送數據會失敗,只是為了下次能接收從Symmetric NAT端發送過來的數據包。然后由Symmetric NAT發送數據包到Restricted Cone NAT端,Restricted Cone NAT端會收到數據包,并且將新的端口號記下,使用新的端口號可與Symmetric NAT端通訊。
          6. Port Restricted Cone NAT 與 Symmetric NAT通訊時,由于Port Restricted Cone NAT會對IP:PORT對進行限制,所以當Symmetric NAT端使用新PORT發來數據包時,Port Restricted Cone NAT端收不到,它們之間無法通訊。
          7. Symmetric NAT 與 Symmetric NAT也無法通訊 。
          posted on 2014-10-23 14:17 老林 閱讀(6507) 評論(0)  編輯  收藏 所屬分類: 即時通訊(IM)
          主站蜘蛛池模板: 涟源市| 胶州市| 乐至县| 丁青县| 日照市| 牟定县| 延边| 苏尼特右旗| 体育| 通州市| 鹿邑县| 唐河县| 福泉市| 绥江县| 瑞丽市| 社旗县| 紫金县| 忻城县| 枣阳市| 罗田县| 偏关县| 晋州市| 潼南县| 荔浦县| 南澳县| 合江县| 蛟河市| 民勤县| 清丰县| 鞍山市| 静海县| 平乐县| 威宁| 定陶县| 错那县| 绥棱县| 阳信县| 兴仁县| 板桥市| 天津市| 吕梁市|