交叉编译:

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的编译和运行、配置的更多相关文章

  1. Maven配置插件跳过测试代码的编译和运行

    Maven配置插件跳过测试代码的编译和运行: <!-- 编译插件 --> <plugin> <groupId>org.apache.maven.plugins< ...

  2. 如何使用命令行编译以及运行java文件

    要想编译和运行java文件,很简单,只需要两个命令: (1) javac:作用:编译java文件:使用方法: javac Hello.java ,如果不出错的话,在与Hello.java 同一目录下会 ...

  3. wxWidgets的安装编译、相关配置、问题分析处理

    wxWidgets的安装编译.相关配置.问题分析处理 一.介绍部分 (win7 下的 GUI 效果图见 本篇文章的最后部分截图2张) wxWidgets是一个开源的跨平台的C++构架库(framewo ...

  4. 在终端上创建Java项目及编译和运行

    一:实践一次这样的操作有助于理解Tomcat/Eclipse的启动原理,包括classpath的设置,option的配置等等: 二:通过Bash终端创建一个简单的Java项目(单项目单Module,如 ...

  5. TensorFlow Python2.7环境下的源码编译(二)安装配置

    源代码树的根目录中包含了一个名为 configure 的 bash 脚本. $ ./configure 接下来,配置系统会给出各种询问,以确认编译时的配置参数.   一.重要参数解释 Do you w ...

  6. TensorFlow Python3.7环境下的源码编译(二)安装配置

    源代码树的根目录中包含了一个名为 configure 的 bash 脚本. $ ./configure 接下来,配置系统会给出各种询问,以确认编译时的配置参数.   一.重要参数解释 Please s ...

  7. 使用命令行编译打包运行自己的MapReduce程序 Hadoop2.6.0

    使用命令行编译打包运行自己的MapReduce程序 Hadoop2.6.0 网上的 MapReduce WordCount 教程对于如何编译 WordCount.java 几乎是一笔带过… 而有写到的 ...

  8. 在 Sublime Text 2 中编译和运行 Java 程序,以及输出中文出错问题解决办法

    Sublime Text 2 是我最喜欢用来编码的文本编辑器,如果你尝试使用后相信你也会喜欢上它的.在这篇文章中我们将讨论如何在 Sublime Text 2 中编译和运行 Java 程序. 第一步: ...

  9. Notepad++编译和运行Java

    首先要让Notepad++编译和运行Java,前提是电脑里已经配置好了Java的环境(这里可以参考我博客里关于Java环境配置的那篇随笔). 在Notepad++上面的选项栏中找到 插件---> ...

随机推荐

  1. RF:RF实现根据乳腺肿瘤特征向量高精度(better)预测肿瘤的是恶性还是良性—Jason niu

    %RF:RF实现根据乳腺肿瘤特征向量高精度(better)预测肿瘤的是恶性还是良性 load data.mat a = randperm(569); Train = data(a(1:500),:); ...

  2. Remmarguts' Date POJ - 2449 (A*搜索|k短路)

    "Good man never makes girls wait or breaks an appointment!" said the mandarin duck father. ...

  3. POJ 2823 Sliding Window​ (模板题)【单调队列】

    <题目链接> <转载于>>> > 题目大意: 给你一段序列和一个长为k的窗口,这个窗口从最左边逐渐向右滑,直到滑到最右边,问你,该窗口在滑动的过程中,最大值和 ...

  4. asp.net core 依赖注入实现全过程粗略剖析(1)

    转载请注明出处: https://home.cnblogs.com/u/zhiyong-ITNote/ 常用扩展方法 注入依赖服务: new ServiceCollection().AddSingle ...

  5. Xamarin Essentials教程地理定位Geolocation

    Xamarin Essentials教程地理定位Geolocation   通过地理定位功能,应用程序可以获取用户的当前地理位置,如经纬度值.利用地理位置,可以在地图上定位,也可以转化物理位置,划分用 ...

  6. markdown那些事儿

    markdown是一种轻量标记语言,可以用多种编辑器来写markdown语法. 一.基础链接 http://www.markdown.cn/ https://zh.wikipedia.org/wiki ...

  7. 洛谷P1774 最接近神的人_NOI导刊2010提高(02)(求逆序对)

    To 洛谷.1774 最接近神的人 题目描述 破解了符文之语,小FF开启了通往地下的道路.当他走到最底层时,发现正前方有一扇巨石门,门上雕刻着一幅古代人进行某种活动的图案.而石门上方用古代文写着“神的 ...

  8. java里的基本数据类型和引用数据类型

    一.基本数据类型: byte:Java中最小的数据类型,在内存中占8位(bit),即1个字节,取值范围-128~127,默认值0 short:短整型,在内存中占16位,即2个字节,取值范围-32768 ...

  9. HDU5518 : John's Fences

    求出平面图的对偶图,那么需要选择一些环,使得这些环可以异或出所有环. 对于两个不同的区域,需要用一个代价最小的环把它们区分开,这对应最小割. 那么求出对偶图的最小割树,所有树边之和就是把所有区域都区分 ...

  10. Flask CBV

    from flask import Flask, views import time app = Flask(__name__) def zhuangshiqi(func): def inner(*a ...