日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

n2n实现内网穿透

發(fā)布時(shí)間:2023/12/18 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 n2n实现内网穿透 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

n2n實(shí)現(xiàn)內(nèi)網(wǎng)穿透

文章目錄

    • n2n實(shí)現(xiàn)內(nèi)網(wǎng)穿透
      • 簡單介紹
      • 搭建過程
        • 搭建環(huán)境
        • Supernode搭建
        • Edge搭建
          • centos搭建
          • windows搭建
      • 總結(jié)

之前有弄過樹莓派的NAS服務(wù),但是局限于傳輸速度和網(wǎng)絡(luò)延遲的問題,所以并沒有用于實(shí)踐,項(xiàng)目就暫且擱淺。至此發(fā)現(xiàn)了p2p能夠?qū)崿F(xiàn)端對(duì)端的數(shù)據(jù)傳輸,解決了傳統(tǒng)的服務(wù)器中轉(zhuǎn)傳輸所存在的問題,NAS計(jì)劃有了新的突破。

簡單介紹

前面介紹的frp進(jìn)行反向代理,實(shí)現(xiàn)內(nèi)網(wǎng)穿透,客戶端之間的數(shù)據(jù)傳輸都需要經(jīng)過frp服務(wù)器中轉(zhuǎn),這樣會(huì)導(dǎo)致數(shù)據(jù)傳輸?shù)乃俣仁盏椒?wù)器的影響。要知道P2P在實(shí)現(xiàn)NAT打洞的方面有很大的優(yōu)勢,如果能夠成功打洞之后,客戶端之間傳輸數(shù)據(jù)是不經(jīng)過第三方服務(wù)器,而是直接連接,而如果沒有成功打洞,則可以通過第三方服務(wù)器進(jìn)行中轉(zhuǎn),進(jìn)退皆可,可以說是在沒有公網(wǎng)ip的情況下,最好的解決方案。

簡單的介紹一下n2n,這個(gè)n2n不是內(nèi)衣的那個(gè)n2n,大家別找錯(cuò)了(?ω?)。github上介紹說是N2n is a light VPN software which make it easy to create virtual networks bypassing intermediate firewalls.。也就是輕量級(jí)的vpn軟件,n2n會(huì)試著建立p2p直連協(xié)議,如果失敗,會(huì)直接使用服務(wù)器中轉(zhuǎn)數(shù)據(jù)。

frp服務(wù)也能實(shí)現(xiàn)p2p模式,這里就不多說,自行百度

搭建過程

搭建很簡單,只要搞清楚服務(wù)端和客戶端的關(guān)系就很容易操作。關(guān)系圖如下:

在搭建之前先弄清楚n2n的幾個(gè)版本:V1、V2和V2s,sudpernode的使用的版本一定要和Edge的版本一致,否則之間的無法服務(wù)之間不能進(jìn)行連接。這里搭建的使用的V2s。

搭建環(huán)境

  • centos 7
  • windows 10

Supernode搭建

#安裝依賴包 yum install subversion gcc-c++ openssl-devel git cmake #下載n2n源碼包 git clone https://github.com/meyerd/n2n.git #編譯 cd n2n/n2n_v2 mkdir build cd build cmake .. make make install #開啟supernode服務(wù)端口 supernode -l 1000

supernode 參數(shù)

-v:輸出日志

-l:<port> 監(jiān)聽端口

-f:不進(jìn)行后臺(tái)運(yùn)行

如果進(jìn)行debug可以使用 supernode -l 1000 -f -v 實(shí)時(shí)查看輸出,這里還需要提醒的是,如果開了防火墻的,注意關(guān)閉防火墻,開了安全組的,注意開放端口。

Edge搭建

centos搭建
#安裝依賴包 yum install subversion gcc-c++ openssl-devel git cmake #下載n2n源碼包 git clone https://github.com/meyerd/n2n.git #編譯 cd n2n/n2n_v2 mkdir build cd build cmake .. make make install #開啟edgenode服務(wù) edge -d device0 -c n2n -k Flowerfire -a 10.0.0.1 -l <外網(wǎng)ip>:1000

edge 參數(shù)說明

-d:device name。虛擬網(wǎng)卡的名稱

-c:community name。社區(qū)名

-k:key。密碼

-a:虛擬網(wǎng)卡的ip地址

-l:supernode 的關(guān)聯(lián)地址。

windows搭建

windows就直接安裝edge客戶端就行。下載地址,如下:
客戶端
n2n_win.zip

由于supernode使用的版本是v2s,軟件n2nguien使用的是v2,所以軟件啟動(dòng)后無法連接到supernode,這里需要替換一下edge2.exe,替換文件在n2n_win.zip,重命名一下edge_v2.exe,然后進(jìn)行替換

總結(jié)

雖然項(xiàng)目已經(jīng)搭建起來了,但是并沒有達(dá)到我想要的結(jié)果,最后測試兩個(gè)edge之間數(shù)據(jù)的傳輸,但是并沒有走p2p協(xié)議,網(wǎng)上查了一下,發(fā)現(xiàn)是因?yàn)閚at的問題,p2p對(duì)其nat的條件有限制,所以搭建之前先自行檢查一下自身網(wǎng)絡(luò)是否符合搭建條件,至于如何檢查我這里就不多說了,因?yàn)槲乙彩谴罱ㄍ瓿珊蟛虐l(fā)現(xiàn)我的網(wǎng)絡(luò)環(huán)境不支持p2p (T_T) 。

nat的四種類型自行百度腦補(bǔ)

總結(jié)

以上是生活随笔為你收集整理的n2n实现内网穿透的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。