1. 程式人生 > >本地電腦搭建外網可訪問服務原理與實戰

本地電腦搭建外網可訪問服務原理與實戰

網際網路上的電腦相互通訊是通過IP地址的,那就是說理論上每臺能上網的電腦都應該有一個世界上獨一無二的IP,但限於IPV4的最大數量限定,這是不可能達到的事情,所以現在出現了IPV6,進一步擴充套件了IPV4的數量限制。

為了解決IPV4的資源緊張問題,網際網路多數由區域網組成,每個區域網都是一個獨立的小王國,通過一個擁有公網IP的閘道器實現與外界英特網通訊。

IPv4

地址長度:32位(4 個位元組)

地址數量:2^32

IPv6

地址長度:128位(16 個位元組)

地址數量:2^128

IPV4數量限制解決方案

讓一臺內網計算機擁有公網許可權

內網穿透原理最基本底層裡面都或多或少使用了動態域名解析、埠對映、p2p穿透等這些技術。動態域名解析是解決動態公網IP問題,同時結合了路由埠轉發原理。埠對映應用是一個介質,起到中轉作用,可以解決埠被遮蔽或無公網IP問題。p2p穿透是二端通訊,點到點的通訊,二點訪問端都是需要使用經過資料處理通訊的客戶端,適用於任何環境。

內網對應的是外網,只要是涉及內外網間的連通都可以理解為內網穿透。內網穿透可以實現二點直連方式資料互動,穿透是不限速的,速度取決於兩端點。

埠對映

埠對映是NAT的一種,功能是把在公網的地址轉翻譯成私有地址, 採用路由方式的ADSL寬頻路由器擁有一個動態或固定的公網IP,ADSL直接接在HUB或交換機上,所有的電腦共享上網。(百度百科)

埠對映即在路由器註冊埠轉發服務,在路由器新增一個數據判斷,如果外界訪問自己的某個埠資料,就將這些資料轉發到區域網的某個IP上。實現埠對應區域網的特定服務--區域網計算機IP和埠。

伺服器資料轉發

不少所謂的穿透其實是資料全轉發,兩端都連線了一個伺服器,AB主機的資料都是通過外網的伺服器進行中間轉發,這樣就有效的避開了埠對映時所觸及不到的路由器了。但缺點就是資料轉發速度高度依賴於伺服器。

實現資料轉發時,我們需要在服務端也就是被動訪問端下載一個內網穿透工具,讓其與伺服器保持連線,以便隨時獲取主動訪問的資料。

訪問例項

內網裝置訪問外網:

內網客戶端主動發起請求後,路由器會記錄其請求的目標外網服務所對應的伺服器資訊(IP和埠)並與內網客戶端的區域網IP和埠做繫結,註冊成NAT表。進而實現兩個端點的點對點通訊。

其詳細過程例如:

外網服務: 116.33.13.10:8000

路由器公網IP:113.67.11.104

路由器內網IP:192.168.0.1

內網客戶端IP:192.168.0.100

內網客戶端(192.168.0.100)隨機生成了一個埠55667,併發送連線外網服務請求(116.33.13.10:8000),路由器區域網(192.168.0.1)接受到連線請求便通過公網IP(113.67.11.104)隨機生成了一個埠號22334去於外網服務進行連線,在此時路由器會建立一條NAT資料,表示外網服務的IP和埠與區域網客戶端的IP和埠連線關係。這樣他們就能互相互動資料了。

 

外網裝置訪問內網:

如果按照上面的流程,其重要一環就是路由器的NAT資料關聯關係,但是內網服務作為被動者時,路由器是不存在此埠關聯資料的。所以外網的主動訪問資料會被路由器識別為無效資料而丟失。

當然我們可以在路由器做埠對映,但是很重要的前提是你所能做埠對映的路由器是有公網IP的,但生活上基本是不可能的,公網IP基本都會被運營商所直接管轄,而我們的路由器連線的是運營商的路由器,是一個區域網IP,但是我們又沒有許可權去操作運營商的路由器,從而路由埠對映的路基本被賭完了。

看花生殼是如何實現的,依照官網的收費手段,基本都是流量和頻寬,視乎在說明其實現的關鍵技術是伺服器資料轉發

下載/安裝內網穿透工具

https://hsk.oray.com/price/?utm_source=baidu&utm_medium=cpc&utm_campaign=hsk_buy&utm_term=%E8%8A%B1%E7%94%9F%E5%A3%B3&i=45629&bd_vid=7363549083530946143#personal

 

 微信掃描二維碼,彈出關注公眾號,點選關注即可

關注完成後再次掃碼,進入登入註冊頁,完成登入即可點選授權

 

 啟用和開始

 

 

 

 測試

tcp://12345.qicp.vip:7799

這是一個tcp的URL,分解之後可見:

【tcp://】協議為tcp

【12345.qicp.vip】域名,域名是IP地址的索引,通過域名解析可以將其解釋到IP地址

【7799】埠號

 

參考:

https://www.jianshu.com/p/39825e2d71da?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

https://www.jianshu.com/p/cdc446e5