訪問家庭內網資源
現狀
通常家庭接入Internet都是採用無線路由經PPPoE連線到ISP的。家庭的各種裝置,例如計算機、筆記本、移動裝置、NAS和智慧硬體等各自有一個區域網IP地址,通過雙絞線或者WiFi連線到無線路由器。無線路由自己有一個區域網IP地址,可以通過Web經由WiFi或其LAN口來管理。無線路由對外則是WAN口,以PPPoE連線到ISP。無線路由在Internet上的IP地址是由ISP分配的。
如何在外部Internet訪問內網資源
如果你在外部網路中或者使用手機蜂窩資料上網,那麼家裡的區域網是無法直接用Internet來訪問的。要訪問家裡的區域網首先就要通過連線到Internet的路由器的IP地址來訪問。我們可以通過在路由器上設定其埠與內網某裝置IP地址的埠相對映的方式獲得對內網裝置的訪問。
例項:如果要使用RDP訪問家中的某個伺服器,則可以通過這種方式對映其3389埠到路由器的7779埠,以後只要通過220.191.88.88:7779來訪問:
然而,ISP通過PPPoE分配給路由器的IP地址不一定是固定的,不能保證此IP地址一直可用。解決這個問題,第一個辦法是向ISP申請一個域名與自己的外網IP地址進行對映,比如使用花生殼。
例項:交大的EPCC實驗室(嵌入式與普適計算中心)就有其自己的域名epcc.sjtu.edu.cn,我在實驗室設定了一臺PC的IP地址並將其3389埠對映到路由器的埠7779,這樣我在外部Internet就可以通過epcc.sjtu.edu.cn:7779來RDP這臺機器了:
使用IP地址或者域名訪問路由器,可以通過埠對映的形式與區域網中的任何裝置進行通訊。然而這種方法不太靈活,對移動app訪問內網資源很不友好。如果內網資源的埠地址很多,或者埠地址會發生變化,對映就變得很困難。因而現在許多商家都採用“資源客戶端-伺服器-訪問客戶端”的對映方式實現對內網資源的訪問。
內網中的資源客戶端與伺服器保持一條連線,當訪問客戶端需要訪問資源的時候,首先登入到伺服器,取得與資源客戶端的聯絡,然後便可與資源客戶端進行通訊。
例項1:推送伺服器使用蘋果APNS將訊息傳送至內網WiFi中的iPad。
例項2:使用TeamViewer遠端控制內網計算機。
例項3:使用TeamViewer建立VPN連線。
例項4:使用TeamViewer搭建私有云。
例項5:使用WDMyCloud搭建私有云。
例項6:使用App管理智慧裝置。
例項7:使用螢石App訪問內網攝像頭。