N2N windows下编译安装文件
n2n安装
n2n原理
编译版下载,可直接使用:windows下vpn客户端 n2n_v2_linux_x64 n2n_v2_Win32TAP网卡驱动
#linux环境编译yum install -y gitgit clone https://github.com/meyerd/n2n.git && cd n2n/ && cd n2n_v2 && mkdir build && cd build #n2n-master
cmake ..
make
make install
#启动超级节点supernode -l 8080
#启动边缘节点
edge -d eth2 -a 10.0.0.20 -c yourgroupname -k yourpasswd -u root -g root -l 123.124.125.126:8080
#windows环境编译
下载源码:https://github.com/meyerd/n2n.git
wintap.h文件修改 文件末尾添加 #define ERROR_IO_PENDING 997L
安装cmake,若安装了老版本,需要先卸载
使用mingw交叉编译:
下载mingw安装器,安装以下3个组件:
运行C:\MinGW\msys\1.0\msys.bat进入命令行,查看cmake是否安装成功,若不成功,请检查环境变量:
cd /c/n2n-master/n2n_v2/
mkdir build
cd build
cmake -G "MSYS Makefiles" --build ./ ../
make

编译成功后产生edge.exe supernode.exe
#windows客户端配置
下载n2nguien.exe 安装,并用编译好的edge.exe替换安装目录的edge2.exe
配置正确的超级节点ip和端口
本地ip填随意局域网ip,如10.0.0.* 192.168.0.*等
组名称和密码随意,三者匹配后会组成局域网
高级设置:
打开Enable packet forwarding through n2n community
版本选n2n v2
重启生效
#windows脚本启动
新建目录D:\GreenSoft\n2n
将edge.exe放入此目录,并新建start.sh 内容如下:
@echo off
#切换到管理员模式
cd /d "%~dp0"
cacls.exe "%SystemDrive%\System Volume Information" >nul 2>nul
if %errorlevel%==0 goto Admin
if exist "%temp%\getadmin.vbs" del /f /q "%temp%\getadmin.vbs"
echo Set RequestUAC = CreateObject^("Shell.Application"^)>"%temp%\getadmin.vbs"
echo RequestUAC.ShellExecute "%~s0","","","runas",1 >>"%temp%\getadmin.vbs"
echo WScript.Quit >>"%temp%\getadmin.vbs"
"%temp%\getadmin.vbs" /f
if exist "%temp%\getadmin.vbs" del /f /q "%temp%\getadmin.vbs"
exit
:Admin
#自动后台运行
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
#启动edge
D:
cd GreenSoft\n2n
edge.exe -a 10.0.0.6 -c test -k test-l 123.123.123.123:1080 -r
访问C:\ProgramData\Microsoft\Windows\Start Menu\Programs路径
将start.sh的快捷方式放到启动目录,实现开机自启(windows10下)。
关掉客户端测试是否成功
cd C:\Program Files\n2n Gui
edge2.exe -f -a 192.168.99.1 -c test -k mima -l 112.121.187.156:8333
如果连接成功,则显示(每 2 分钟显示一条):
Rx REGISTER_SUPER_ACK myMAC= ... ...
失败则重复显示:
WARNING:Supernode not responding - moving to 0 of 1
N2N windows下编译安装文件的更多相关文章
- Windows下编译安装 FFmpeg
在Linux/Mac下编译 ffmpeg是非常方便的.但要在 Windows下编译 ffmpeg还真要花点时间.以下就是在 Windowns下编译ffmpeg的步骤: 一.安装Cygwin 在wind ...
- Java项目生成可执行jar包、exe文件以及在Windows下的安装文件
1.如何通过eclipse将Java项目生成可执行jar包 首先把在eclipse下的java项目导出jar file 下一步 下一步 下一步 最后点击完成,便生成了可执行的jar文件.可以在刚刚选择 ...
- windows下编译安装BOOST
boost的编译和使用,经过搜集资料和总结,记录成文.感谢文后所列参考资料的作者. 1 下载 地址:http://sourceforge.net/projects/boost/files/boost/ ...
- ffmpeg windows下编译安装
安装msys2 更新源使下载速度更快 进入msys64/etc/pacman.d/目录中,分别在三个文件中增加mirrorlist.mingw32Server = http://mirrors.ust ...
- windows下编译和安装boost库
boost是一个功能强大.构造精巧.跨平台.开源并且完全免费的C++程序库. 获取方式 boost提供源码形式的安装包,可以从boost官方网站下载,目前最新版本是1.59.0. 本机上正好有boos ...
- [转] Windows下编译OpenSSL
简述 OpenSSL是一个开源的第三方库,它实现了SSL(Secure SocketLayer)和TLS(Transport Layer Security)协议,被广泛企业应用所采用.对于一般的开发人 ...
- centos7.2下编译安装&&使用-git代码库
centos7.2下编译安装git Git简介 Git是一个分布式版本控制系统 Git vs SVN SVN是典型的集中式版本控制起,版本库集中存放在服务器,当我们用自己的电脑干活儿的时候,需要先从中 ...
- ubuntu15.10下编译安装wine1.8 rc4
ubuntu15.10下编译安装wine1.8rc4 Wine (“Wine Is Not an Emulator” 的递归缩写)是一个能够在多种 POSIX-compliant 操作系统(诸如 Li ...
- memcache的windows下的安装和简单使用
原文:memcache的windows下的安装和简单使用 memcache是为了解决网站访问量大,数据库压力倍增的解决方案之一,由于其简单实用,很多站点现在都在使用memcache,但是memcach ...
随机推荐
- mysql5.0手动升级8.0.15,并链接到navicat
一.卸载老版本的mysql 1.1 在控制面板中删除即可 1.2 将老版本的mysql安装残留文件彻底删除 二.彻底删除mysql-注册表 2.1 开始->运行-> regedit 看看注 ...
- MySQL表数据的增删改查
1.增 INSERT INTO tb VALUES(v1,v2,v3...); INSERT INTO tb (field1,field2...) VALUES(v1,v2...); INSERT I ...
- webpack代理解决跨域问题
new WebpackDevServer(webpack(config), { hot:hot, inline: true, compress: true, //去掉真实ip的检测 disableHo ...
- azkaban使用--指定executor
PS:局限,虽然可以指定在一台节点上执行,但是失去了高可用的优势,如果有不同类型的任务建议用多套azkaban 假如二台executor,下图中的4,5,我想将任务运行在hadoop02上,因为只有这 ...
- Win10远程桌面 出现 身份验证错误,要求的函数不受支持,这可能是由于CredSSP加密Oracle修正 解决方法
升级至win10 最新版本18362,远程桌面连接Window Server时报错信息如下: 出现身份验证错误,要求的函数不正确,这可能是由于CredSSP加密Oracle修正. 解决方法: 运行 g ...
- less-loader编译calc异常解决方法
问题: width:calc(100% - 200px);最后编译成calc(-100%) 解决方法 width: calc(~"100% - 200px"); 加上 ~ 并加上引 ...
- python学习Day12 函数的默认值、三元表达式、函数对象(函数名)的应用场景、名称空间与作用域
复习 1.字符串的比较: -- 按照从左往右比较每一个字符,通过字符对应的ascii进行比较 2. 函数的参数 : 1)实参与形参: -- 形参:在函数定义时()中出现的参数 ...
- usb设备(移动硬盘或U盘),弹出时提示“有进程或程序占用,无法弹出”。解决办法
测试环境:Win7(其他Windows系统环境,也可参考) 总结办法来源,https://bbs.csdn.net/topics/392297251?page=1文章中热心网友的评论指引 1. 控制面 ...
- Java框架spring 学习笔记(九):Spring的bean管理(@Required、@Component、@Autowired、@Resource注解)
注解:代码里面特殊的标记,使用注解可以完成相关功能 注解写法:@注解名称(属性名.属性值) @Required 用在set方法上,一旦用了这个注解,那么容器在初始化bean的时候必须要进行set,也就 ...
- Window上编译最新版libCef(Branch 2704)(转载)
转自http://blog.csdn.net/mfcing/article/details/52066579 1.开发环境搭建 VS2010及以上版本,CMake 2.8.12.1及以上版本.我安 ...