惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

H
Help Net Security
博客园 - Franky
GbyAI
GbyAI
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
爱范儿
爱范儿
IT之家
IT之家
酷 壳 – CoolShell
酷 壳 – CoolShell
aimingoo的专栏
aimingoo的专栏
博客园_首页
MongoDB | Blog
MongoDB | Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Recent Announcements
Recent Announcements
Scott Helme
Scott Helme
有赞技术团队
有赞技术团队
M
MIT News - Artificial intelligence
C
CERT Recently Published Vulnerability Notes
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
Jina AI
Jina AI
F
Fortinet All Blogs
N
Netflix TechBlog - Medium
L
LangChain Blog
L
LINUX DO - 最新话题
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
H
Hacker News: Front Page
MyScale Blog
MyScale Blog
P
Palo Alto Networks Blog
G
Google Developers Blog
Google DeepMind News
Google DeepMind News
AI
AI
T
Troy Hunt's Blog
Microsoft Azure Blog
Microsoft Azure Blog
阮一峰的网络日志
阮一峰的网络日志
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Vercel News
Vercel News
Microsoft Security Blog
Microsoft Security Blog
罗磊的独立博客
S
Secure Thoughts
大猫的无限游戏
大猫的无限游戏
博客园 - 叶小钗
人人都是产品经理
人人都是产品经理
Blog — PlanetScale
Blog — PlanetScale
博客园 - 司徒正美
Apple Machine Learning Research
Apple Machine Learning Research
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园 - 三生石上(FineUI控件)
S
Security @ Cisco Blogs
Cloudbric
Cloudbric
E
Exploit-DB.com RSS Feed
Attack and Defense Labs
Attack and Defense Labs

博客园 - 横渡

[Linux] - 修改ls/ll显示的时间格式 [MySql] - Windows MySql 8.x 手动zip包安装与外网访问登录权限设定 [Windows] - DNS防污染工具Pcap_DNSProxy [Linux] - 服务器/VPS一键检测带宽、CPU、内存、负载、IO读写 [Windows] - Windows/Office纯绿色一键激活工具及方法 [Linux] - 利用ping给端口加密,限制访问 [Linux] - Windows与Linux网络共享文件夹挂载方法 [Linux] - 网速测试命令 [Linux] - CentOS运行DotNet Web程序 [Linux] - SVN忽略文件夹更新的命令与方法 [Linux] - [转]*** Python版一键安装脚本 - 横渡 [Andriod] - Andriod Studio + 逍遥模拟器 [Linux] - centos使用mount + nfs 远程共享存储 [Linux] - Docker pure-ftp使用 [Linux] - Docker移动数据到其它盘的办法 [Nginx] - PHP+FPM相关的配置 [Nginx] - 负载均衡配置 [Linux] - 定时任务crontab [Linux] - 攻击查看与IP查封 [Linux] - Docker制作nginx+php
[Linux] - n2n内网穿透
横渡 · 2017-04-15 · via 博客园 - 横渡

口水

内网穿透一般都需要在路由器中用NAT指向,或使用如TreamViewer之类的工具穿透内网实现远程控制。

n2n与之不同的是,它是p2p。也即是如同TreamViewer之类工具使用的是数据从服务器转发,而n2n则是点对点的数据直联。n2n需要一个supernode,只用于最初的打洞用,之后的交互均为直联模式。(好像也可以设置为转发模式,还没去尝试)

有兴趣的可以自行上网搜索原理,如文:http://blog.csdn.net/yetyongjin/article/details/7419894

下载

我已经打包好,直接下载即可:

https://files.cnblogs.com/files/HD/n2n.7z

此包包括了linux、windows、android的n2n所有,就不用大家一个个去下载找了。

准备

需要准备一台服务器(有固定IP的vps之类的),可以是windows也可以是linux,比如我这里的是:111.111.111.111

服务器安装

1、linux

解压n2n.7z,里头有一个n2n_linux.tar.gz文件,上传到服务器中,解压

tar -zvxf n2n_linux.tar.gz

进入n2n_linux目录,再进去n2n_v2目录(这里我使用的是v2新版本)

将会看到如下安装完的信息:

echo "MANDIR=/usr/share/man"
MANDIR=/usr/share/man
mkdir -p /usr/sbin /usr/share/man/man1 /usr/share/man/man7 /usr/share/man/man8
install -m755 supernode /usr/sbin/
install -m755 edge /usr/sbin/
install -m644 edge.8.gz /usr/share/man/man8/
install -m644 supernode.1.gz /usr/share/man/man1/
install -m644 n2n_v2.7.gz /usr/share/man/man7/

可以看到supernode安装在/usr/sbin/目录下。现在可以直接启动supernode了:

/usr/sbin/supernode -l 6666

-l 6666,意思是使用6666端口开启supernode

2、windows

windows最简单,解压n2n.7z,里头目录n2n_win下有一个supernode.exe文件,打开cmd,输入:

/usr/sbin/supernode -l 6666

-l 6666,意思是使用6666端口开启supernode

客户端安装

1、windows

在n2n_win文件夹下有一个tapinstall.exe文件,这个文件需要以管理员权限运行(怎么设置就不说了),设置完后,双击运行install.bat,安装tap adapter驱动。其实bat就是一句命令安装:

tapinstall.exe install OemWin2k.inf tap0901

安装完驱动后,使用管理员权限打开cmd,cd到n2n_win目录,运行命令:

edge2 -a 10.0.1.2 -c mynetwork -k password -l 111.111.111.111:6666

将看到如我类似的信息表似已经开启了这台客户端机子:

(也可以使用win程序运行,n2ngui.exe,同样,需要管理员权限运行,这里就不说了)

2、linux

与服务器安装一模一样,安装完后,只是启动命令不是supernode,而是edge:

/usr/sbin/edge -a 10.0.1.1 -c mynetwork -k password -l 111.111.111.111:6666

3、Android

安装n2n.apk文件然后设置就可以了,怎么设置太简单了,这里就不说了。不过android要运行n2n,手机设置必需要root权限。

测试

已经安装好了,我们测试下连通性如何。

在linux上ping下windows客户端:

明显看到第一次ping返回时间需要比较久,后而就很快。原因就是上页说的,第一次需要先连上supernode服务器打洞,然后服务器再把两台机子对联起来成p2p。

在windows上ping linux客户端

最后说明

1、n2n使用的是UDP协议,如果两台机子在几分钟内没有数据交互,udp会自动断开连接,所以下一次连接时又会花费打洞时间。

2、本程序在win10中每次重启都需要先运行install.bat安装驱动,好像win10不会加到自动加载启动中。win7正常。目前程序只支持64位windows系统。