n2n網絡穿透內網


前言

在家里的時候比較經常需要對公司的設備進行配置,使用teamviewer最近總是彈出窗口,很不爽,所以在網上搜索了能夠穿透內網的軟件n2n lanproxy natapp FCN ngrok等,恰好我有一台洛杉磯的VPS,所以拿n2n進行下測試。使用n2n的原因主要是因為免費、占用資源少、P2P。這個P2P真的讓人吐槽

配置

網絡拓撲:

公網服務器的配置

我的公網服務器其實就是一台VPS,IP地址107.174.21.2,操作系統是Debian9
命令如下:

vi /etc/apt/sources.list
deb http://ftp.us.debian.org/debian stretch main
deb http://ftp.de.debian.org/debian jessie main

ufw disable
apt-get remove iptables
apt-get install aptitude
aptitude install n2n
supernode -h
[版本是v.1.3.2]
nohup  supernode -l 9000 &

公司電腦的配置

公司的電腦是ubuntu18.04.1,公司內部的IP地址是192.168.6.32在n2n網絡中我准備給他配置的IP地址是10.1.1.1
命令如下:

vi /etc/apt/sources.list
deb http://ftp.us.debian.org/debian stretch main
deb http://ftp.de.debian.org/debian jessie main
ufw disable
apt-get remove iptables
apt-get install n2n
edge -h
[版本是v.1.3.2]
edge -d n2nvpn -c vpn -k password -a 10.1.1.1 -u 1000 -l 107.174.21.2:9000 >/dev/null &

家里筆記本的配置

家里的筆記本是win7,IP地址是192.168.1.5 在n2n網絡中我准備給他配置的IP地址是10.1.1.3 拓撲圖上寫成10.1.1.2了,懶得改了
軟件下載地址
配置截圖如下:

然后點擊Advanced

這時候就配置完成了。

注意事項

1.一定記得關防火牆,為此我多花了20分鍾時間排故。。。。悲催
2.版本一定要一致.因為VPS的操作系統部署了其他軟件,不方便隨意更改操作系統,所以只能遷就VPS,debian下默認是1.3.2版本,所以我都改成了1.3.2版本,其實n2n有1.X 2.X

使用n2n網絡

在家里的電腦上打開xshell然后ping測試

好悲催啊!VPS太慢了。
我執行ssh root@10.1.1.1,雖然能登錄上去,但是明顯感覺有非常大的延遲。不是說好的P2P么!!!
我家里的電腦和公司的電腦可是位於同一座城市啊!怎么可能這么慢!!!

n2n的各edge之間傳輸數據

在本次實驗的拓撲里面,VPS主機就叫supernode,辦公室和家里的電腦就是edge
edge之間的流量是否走 supernode完全取決於,兩個 edge 節點所在的網絡環境
1.如果是公網IP,則點對點傳輸數據,無需s-node介入
2.如果兩端的路由器都是圓錐形NAT,注意「都是」圓錐形的NAT的話,兩者之間可以直接傳輸數據,無需s-node介入
3.有一方面的設備在一個對稱型的路由器后面,則無法完成點對點的直接傳輸,流量都需要superNode的中轉。
雖然我不知道我是哪種情況,從實際效果來看,數據肯定是到洛杉磯繞了一圈回來的!!!
悲催啊!
難道還得整國內的VPS????
悲催!

補充:NAT類型


NAT分為兩大類,基本的NAT和NAPT(Network Address/Port Translator)。 基本的NAT,它僅將內網主機的私有IP地址轉換成公網IP地址,但並不將TCP/UDP端口信息進行轉換,有動態與靜態之區分。由於現在大部分都屬於另一種類型,即NAPT,故這里不詳細討論基礎NAT。 另外一種NAT叫做NAPT(Network Address/Port Translator),從名稱上我們也可以看得出,NAPT不但會改變經過這個NAT設備的IP數據報的IP地址,還會改變IP數據報的TCP/UDP端口。
NAPT又分為錐型(Cone)和對稱型(Symmetric),它們的區別在於,在NAT已分配端口號給Client A的情況下,如果Client A繼續用1235端口與另一外網服務器通訊,錐型NAT還會繼續用原來62000端口,即所分配的端口號不變。而對於對等型NAT,NAT將會分配另一端口號(如62001)給Client A的1235端口。也就是說,同一內網主機同一端口號,對於錐型NAT,無論與哪一外網主機通訊,都不改變所分配的端口號;而對於對等型NAT,同一內網主機同一端口號,每一次與不同的外網主機通訊,就重新分配另一個端口號。
目前比較常用的NAT類型是完全錐型NAT。
1.首先目前絕大多數的路由器都是非對稱型NAT(Cone NAT),所以P2P技術才能正常使用。 對稱/非對稱的區別主要在於:網關設備在實現NAT時,對於內網某主機的若干個UDP連接請求,網關設備對應地在外網上所建立的UDP端口數量。
2.對稱NAT是一個請求對應一個端口,非對稱NAT是多個請求對應一個端口(象錐形,所以叫Cone NAT)。對稱型NAT(Symmetric NAT)是無法實現P2P技術,流量必須經過supernode。

大部運營商提供的光貓上網服務都是錐形nat的。
而光纖入戶,3g 4g網絡,公共wifi登因為安全因素都是對稱nat。
果然光纖入戶不行啊!

后記

今天買了阿里雲北京區的VPS一台用來測試,結果發現n2n還是不穩定,n2n這個軟件降級為不推薦級別。請大家慎用。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM