術(shù)語說明
P2P隧道出口端:一個P2P隧道會存在一個隧道出口察滑。P2P隧道出口端要求可以通過IP直接訪問到TCP服務(wù)器地址有勾。
P2P隧道入口端:一個P2P隧道會有一個或者多個隧道入口端。一般P2P隧道入口端會運行在遠端局域網(wǎng)僻族,不能直接通過IP訪問TCP服務(wù)
設(shè)備端:P2P隧道客戶端粘驰,主要用來連接設(shè)備的TCP服務(wù)器的P2P隧道客戶端程序。作為隧道出口端述么。
客戶端:P2P隧道客戶端蝌数,主要用來轉(zhuǎn)發(fā)TCP請求到設(shè)備端TCP服務(wù)器的P2P隧道客戶端程序。作為隧道入口端度秘。
設(shè)備端ID:設(shè)備用來登錄到P2P隧道服務(wù)器的驗證字段顶伞。
客戶端ID:手機或者PC端用來登錄到P2P隧道服務(wù)器的驗證字段。
隧道模塊客戶端有什么特征剑梳?
隧道模塊的客戶端是完全對等的唆貌,所有的客戶端都可以通過配置作某個隧道的出口端或者入口端,所有的客戶端都需要有一個ID用來登錄到P2P隧道服務(wù)器垢乙。
怎樣生成和驗證客戶端的ID锨咙?
問題詳細描述:
???????? 客戶希望構(gòu)建一個非對等網(wǎng)絡(luò),客戶端主要作為隧道的入口追逮,同時客戶端可能分發(fā)到其他用戶手中酪刀,不方便在服務(wù)器生成ID然后分配給客戶端粹舵。那么這時可以利用某種規(guī)則在客戶端生成ID,同時在服務(wù)器端定制某種規(guī)則去驗證這樣生成的ID骂倘。
???????? 這樣就需要知道獲取手機或者其他客戶端設(shè)備中存在的特征數(shù)據(jù)眼滤,比如獲取MAC地址,手機的IMEI等等历涝,然后通過一些算法來計算出這個ID诅需。
???????? 同時還可以在P2P服務(wù)插件中編程對這樣生成的ID做特別的認證。這個可以在安裝好P2P隧道服務(wù)器后通過閱讀服務(wù)器安裝包中附帶的《pgTunnelSvr 服務(wù)器端開發(fā)手冊 v1.8.doc》來獲取P2P服務(wù)器插件編程的相關(guān)知識荧库。
示例:
????1.客戶端ID生成方式:
??? ??????????Mac地址加UUID
? ? 2.? ? ?P2P隧道服務(wù)器驗證方式:
? ? 3.? ? P2P隧道服務(wù)器插件驗證示例代碼: