内网穿透之n2n-点对网
文章目录
背景
n2n v+p+n 其实与 pptp v+p+n 有类似的一面,都是一种点对点的局域网,所不同的是,n2n 可以建立点与点之间的直连,而 pptp 局域网内通讯的全部流量都必须走中心节点。pptp可以实现点对忘的连接,n2n应该也可以实现。
原理
一台edge服务器充当’网关’角色,另外的edge服务器配置路由表,让内网的ip走指定的网关,就能达到在edge端的电脑上实现直接访问内网的ip。
服务端edge服务器信息
centos 7 X86_64
n2n版本
v2s
服务端edge配置
- 在n2n客户端(edge)上面(linux)开启转发功能
vi /etc/sysctl.conf
#net.ipv4.ip_forward = 1 #将前面的#删除后保存退出
执行sysctl -p
让刚刚修改的信息生效
- 调整centos7的防火墙
由于对centos7默认的防火墙firewalld不熟悉,我们关闭firewalld,安装iptables防火墙
#停止firewalld服务
systemctl stop firewalld
#禁止firewalld服务自启动
systemctl disable firewalld
#安装iptables防火墙
yum -y install iptables-services
- 对iptables进行初始化工作
#清空filter表
iptables -F
#清空nat表
iptables -t nat -F
#默认允许所有传出连接
iptables -P OUTPUT ACCEPT
#允许环回接口的传入连接
iptables -A INPUT -i lo -j ACCEPT
#允许已建立的传入连接
iptables -t nat -A POSTROUTING -j MASQUERADE
- 保存iptables配置
iptables-save > /etc/sysconfig/iptables
- 启动iptables
systemctl start iptables
- 开机自动启动iptables
systemctl enable iptables
客户端edge配置
正常启动edge,确认能访问内网edge的ip
配置路由表
windows
route add -p 192.168.1.0(需要连接的内网网段) MASK 255.255.255.0 192.168.5.6(n2n的edge服务端ip)
-p: 为当前Windows系统路由列表中永久添加一条静态路由,重启系统依然有效,如果不需要静态路由,添加路由时去掉-p参数。
linux
route add -net 192.168.1.0(需要连接的内网网段) netmask 255.255.255.0 gw 192.168.5.6(n2n的edge服务端ip)
- 验证,在配置路由表的电脑上ping内网的ip