最近遇到一個比較奇葩的需求:App與硬件通過WiFi LAN通信, 同時App需要與服務器通過3G/4G WAN通信,如下圖:
眾所周知,手機同時打開WiFi和3G時候,會優先走WiFi。這個該如何實現呢?市面上有一個極路客APP已經實現此方案,網上各種搜索資料,出現一個Multipath TCP概念,但是這個系統沒有API,瞬間抓狂,直接查看極路客APP與他們硬件連接的WIFI,發現與我們平時WiFi不一樣,DNS沒有。
經過各種測試,最后發現不填路由IP和DNS,填寫IP和子網掩碼就可以實現WiFi LAN通信,同時3G/4G WAN通信,所以只需要硬件那邊做下配置就OK,最后發現蘋果官網資料也顯示不需要路由IP,有可能這就是所謂的multipath tcp技術,集成在系統內核里,系統自動根據這判斷選擇哪個網絡通道。