n2n的编译和运行、配置
交叉编译:
cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/CMakeToolchainFileMingw32.cmake -build ./ ../
1.n2n 基于p2p的内网穿透方案。
2.ubuntu-linux下编译
git clone https://github.com/meyerd/n2n.git
apt-get install cmake libssl-dev
cd n2n/n2n_v2
mkdir build
cd build
cmake -build . ..
make
3.windows下编译,需要VS2015环境【试过VS2010编译很难】
cd n2n/n2n_v2
mkdir build
cmake -G "Visual Studio 14" --build .\ ..\
然后打开n2n.sln编译
4.supernode运行,一般在linux服务器上
supernode -l 822
5.edge运行
ubuntu-linux
安装虚拟网卡
apt-get install uml-utilities
tunctl -t tun0
运行edge
./edge -c tttc -k egova -a 172.16.0.200 -s 255.255.0.0 -l 121.42.174.178:822
windows
【安装虚拟网卡,借助http://www.vpnhosting.cz/n2nguien.exe来安装。一般可先不安装试试】
edge.exe -c tttc -k egova -a 172.16.0.200 -s 255.255.0.0 -l 121.42.174.178:822
或替换n2ngui目录下的edge2.exe为自己编译的edge.exe【否则不能用】,并修改目录下的n2ngui.ini配置文件,使用n2ngui.exe来启动。
之后客户端之间的网络即可联通。例子使用的是172.16段的B类私有地址。【10段A类与阿里云内网冲突,192.168段C类可能和内网冲突,B类IP地址数据也基本够用】
-c 网络组,相同的网络组内可互通
-k 加密密码,两节点需要相同才可通信
-l supernode的IP和端口
------------------------------
windows系统下n2n配置
注意:请将附件压缩包(n2n_windows.zip)中的内容放到D盘直属目录下,即确保路径为D:\n2n(如图1所示)
1) 安装驱动n2nguien.exe ;
注:N2N Gui settings窗口直接关了就行,不用配置;
2)安装n2n:管理员权限执行install_n2n.bat;
3)安装vc_redist.x86_2015.exe;
4)修改注册表中的ip地址(此IP地址可以找李健生分配),并双击导入n2n.reg;

5)添加windows计划任务restart.bat,每天自动重启一下edge程序;
原因:如果长时间运行的话,会导致不稳定的情况,所以建议每天自动重启一下edge程序!
6)通过ping设置的172.16.*.*的其他ip地址,可以检查是否配置成功。例,可以使用http://172.16.0.2/打开通通停车官网
将局域网映射为外网,在ngix上添加代理,用我们的服务器做中转,就可以使用外网访问了。例如,淸上园http://qsy1872.r.tongtongtingche.com/park
-------------------------------------
centos-6.7 32bit
1.确定系统开启tun
使用
lsmod | grep tun
如果没有输出,则执行
modprobe tun
2.安装tunctl
yum install tunctl
3.执行
tunctl -t tun0
4.运行edge
./edge -c tttc -k egova -a 172.16.0.200 -s 255.255.0.0 -l 121.42.174.178:822
n2n的编译和运行、配置的更多相关文章
- Maven配置插件跳过测试代码的编译和运行
Maven配置插件跳过测试代码的编译和运行: <!-- 编译插件 --> <plugin> <groupId>org.apache.maven.plugins< ...
- 如何使用命令行编译以及运行java文件
要想编译和运行java文件,很简单,只需要两个命令: (1) javac:作用:编译java文件:使用方法: javac Hello.java ,如果不出错的话,在与Hello.java 同一目录下会 ...
- wxWidgets的安装编译、相关配置、问题分析处理
wxWidgets的安装编译.相关配置.问题分析处理 一.介绍部分 (win7 下的 GUI 效果图见 本篇文章的最后部分截图2张) wxWidgets是一个开源的跨平台的C++构架库(framewo ...
- 在终端上创建Java项目及编译和运行
一:实践一次这样的操作有助于理解Tomcat/Eclipse的启动原理,包括classpath的设置,option的配置等等: 二:通过Bash终端创建一个简单的Java项目(单项目单Module,如 ...
- TensorFlow Python2.7环境下的源码编译(二)安装配置
源代码树的根目录中包含了一个名为 configure 的 bash 脚本. $ ./configure 接下来,配置系统会给出各种询问,以确认编译时的配置参数. 一.重要参数解释 Do you w ...
- TensorFlow Python3.7环境下的源码编译(二)安装配置
源代码树的根目录中包含了一个名为 configure 的 bash 脚本. $ ./configure 接下来,配置系统会给出各种询问,以确认编译时的配置参数. 一.重要参数解释 Please s ...
- 使用命令行编译打包运行自己的MapReduce程序 Hadoop2.6.0
使用命令行编译打包运行自己的MapReduce程序 Hadoop2.6.0 网上的 MapReduce WordCount 教程对于如何编译 WordCount.java 几乎是一笔带过… 而有写到的 ...
- 在 Sublime Text 2 中编译和运行 Java 程序,以及输出中文出错问题解决办法
Sublime Text 2 是我最喜欢用来编码的文本编辑器,如果你尝试使用后相信你也会喜欢上它的.在这篇文章中我们将讨论如何在 Sublime Text 2 中编译和运行 Java 程序. 第一步: ...
- Notepad++编译和运行Java
首先要让Notepad++编译和运行Java,前提是电脑里已经配置好了Java的环境(这里可以参考我博客里关于Java环境配置的那篇随笔). 在Notepad++上面的选项栏中找到 插件---> ...
随机推荐
- RF:RF实现根据乳腺肿瘤特征向量高精度(better)预测肿瘤的是恶性还是良性—Jason niu
%RF:RF实现根据乳腺肿瘤特征向量高精度(better)预测肿瘤的是恶性还是良性 load data.mat a = randperm(569); Train = data(a(1:500),:); ...
- Remmarguts' Date POJ - 2449 (A*搜索|k短路)
"Good man never makes girls wait or breaks an appointment!" said the mandarin duck father. ...
- POJ 2823 Sliding Window (模板题)【单调队列】
<题目链接> <转载于>>> > 题目大意: 给你一段序列和一个长为k的窗口,这个窗口从最左边逐渐向右滑,直到滑到最右边,问你,该窗口在滑动的过程中,最大值和 ...
- asp.net core 依赖注入实现全过程粗略剖析(1)
转载请注明出处: https://home.cnblogs.com/u/zhiyong-ITNote/ 常用扩展方法 注入依赖服务: new ServiceCollection().AddSingle ...
- Xamarin Essentials教程地理定位Geolocation
Xamarin Essentials教程地理定位Geolocation 通过地理定位功能,应用程序可以获取用户的当前地理位置,如经纬度值.利用地理位置,可以在地图上定位,也可以转化物理位置,划分用 ...
- markdown那些事儿
markdown是一种轻量标记语言,可以用多种编辑器来写markdown语法. 一.基础链接 http://www.markdown.cn/ https://zh.wikipedia.org/wiki ...
- 洛谷P1774 最接近神的人_NOI导刊2010提高(02)(求逆序对)
To 洛谷.1774 最接近神的人 题目描述 破解了符文之语,小FF开启了通往地下的道路.当他走到最底层时,发现正前方有一扇巨石门,门上雕刻着一幅古代人进行某种活动的图案.而石门上方用古代文写着“神的 ...
- java里的基本数据类型和引用数据类型
一.基本数据类型: byte:Java中最小的数据类型,在内存中占8位(bit),即1个字节,取值范围-128~127,默认值0 short:短整型,在内存中占16位,即2个字节,取值范围-32768 ...
- HDU5518 : John's Fences
求出平面图的对偶图,那么需要选择一些环,使得这些环可以异或出所有环. 对于两个不同的区域,需要用一个代价最小的环把它们区分开,这对应最小割. 那么求出对偶图的最小割树,所有树边之和就是把所有区域都区分 ...
- Flask CBV
from flask import Flask, views import time app = Flask(__name__) def zhuangshiqi(func): def inner(*a ...