Loading
0

使用ROS搭建站点间VPN

一 需求

1.1将两个局域网连接起来,实现两个局域网之间相互通讯

1.2将多个路由器连接起来,关闭对外的端口,实现网络安全和统一管理

 

二 基础的环境拓扑

2.1 环境介绍

    该环境是基于局域网和两台物理机上的VMware Workstations安装的Router OS 5.25搭建。

    物理机1的VMnet有VMnet0、VMnet2、VMnet3、VMnet4。分别对应地址是192.168.20.4/24(VMnet2),192.168.30.4/24(VMnet3),192.168.40.4/24(VMnet4).

VMnet0作为桥接网卡,桥接在局域网上,地址为192.168.1.35。

    物理机2的VMnet有VMnet0、VMnet2、VMnet3。分别对应的地址是192.168.2.4/24(VMnet2),192.168.3.4(VMnet3)。VMnet0作为桥接网卡,桥接在局域网上,地址为192.168.1.31

    使用物理局域网来模拟外网,在该模拟实验中,ROS是接入的路由器。因此,对于ROS而言,192.168.1.35和192.168.1.31是一个公网地址。

2.2 环境拓扑

2.3 具体的说明

    值得注意的是,在该实验中,ROS1(192.168.1.35)作为PPTP服务端,是拥有一个固定的地址,而ROS2(192.168.1.31)作为一个客户端,地址获得的方式是可以动态获得(模拟PPPOE),为了操作方便而使用一个固定的地址。

    并且在该实验中,所有涉及系统、地址、默认路由、nat等已经配置完成。

 

三 针对ROS1(192.168.1.35)的配置

开启PPTP服务器功能,创建用户给予地址信息

开启PPTP功能

在左侧菜单栏点击"PPP",然后点击"PPTP Server",勾选"Enable"。在该实验中不对其他参数做变动。

建立用户

点击PPP栏目下的Secrets,之后点击最左侧的大红加号建立一个新的用户。在新的"New PPP Secret"中分别填入用户名、密码,选择服务的类型。注意红框处,这里是直接指定一个个本地地址和远程地址。其他不用做太多改动。填写完成后,点击OK完成创建。

 

四 针对ROS2(192.168.1.31)的配置

建立PPTP客户端,完成拨号连接。并且对通讯是否正常进行测试

建立PPTP客户端

在PPP栏目中的Interface对话框中点击最左侧的加号,选择"PPTP Client"

在General中定义该pptp客户端的名,在Dial Out中定义连接到哪个服务器,使用的用户名和密码。

PPTP客户端建立完成后应该有的样子

 

测试是否能正常通讯

选择"New Terminal"建立一个新的终端,执行ping命令。目标为在ROS1上定义的本地地址。

在该处可以看到,通讯是正常的。断开PPTP客户端再进行测试以验证PPTP是否有效。

选择刚建立的PPTP客户端后,点击上面的X以禁用该客户端。

禁用之后,该客户端处于灰色状态,并且在最前面有和X标记。

 

通过输出的结果可以看到,禁用PPTP客户端后,无法通讯。

 

五 配置路由,实现两端内网互通

在配置之前,可以在ROS1上ping一下ROS上的一个VMnet地址。

配置路由表

在主菜单栏选择IP-Routers,弹出路由表对话框。点击左上角的加号新建路由表

指定对端网段和下一跳,需要注意的是,下一跳为刚才配置PPTP用户的远端地址。

可以看出,新加的两个路由已经生效,并且是处于可用状态。

使用同样的方法,在ROS2上定义路由表。

 

配置好路由表之后,可以再进行刚才的ping测试。

可以看到,到ROS2的VMnet地址已经可以通讯。

 

进阶测试

在两个物理机的VMware Workstations上安装两台虚拟机,网卡可以配置在VMnet2或者VMent3上。需要注意的是,网关地址需要指向ROS。

在PC1 上的系统是Windows 10,网卡绑定VMnet3,地址获得方式DHCP。

在PC2上的系统是 Linux,网卡绑定VMnet2,地址为静态的192.168.2.254(该虚拟机为双网卡,还一个网卡为VMnet0,地址为192.168.1.2,为了实验需要不配置网关)。

可以从Windows 10 上ping另外一台Linux主机,查看是否可以通讯

 

六 配置防火墙,保障安全

针对ROS1上的配置

因为ROS1作为PPTP server,而PPTP所需要的端口是1723+gre协议。

因此需要开放的有tcp的1723、GRE和来自10.1.1.0/24(作为管理网段)的流量。

为了在开启防火墙后可以正常访问,需要定义一个新的PPTP用户,远端地址为10.1.1.3.此处不做演示。

点击IPàFirewall,开启防火墙对话框,在filter rules栏点击左上角的加号,新建防火墙规则。

该操作的意义为允许任何进入ROS,目标端口为1723的流量,动作为允许。以此类推,建立其他需要的规则。

该操作的意义为,拒绝其他进入ROS的流量,不管地址,不管端口。需要注意的是,防火墙的规则需要排序。排序在上面的优先执行。

这个时候,物理机已经无法访问ROS了(因为被拒绝了)。而我们需要访问的话怎么办呢?创建一个PPTP客户端。那么刚才那个建立的PPTP用户就排上用途了。

在虚拟机里也是一样的结果。不过可以看到,转发的流量并没有得到限制。

创建一个新的PPTP客户端,拨号连接成功后,可以获得一个内网地址,而此时再ping就可以了。注意的是,地址需要为刚才指定的PPTP本地地址。

 

针对ROS2上的配置爱

ROS2和ROS1唯一不同的是没有开启PPTP服务,因此不需要开放1723,却需要针对ROS1的地址开放(192.168.1.35)。

因此,指定三条规则

1:允许源地址是192.168.1.35的任何数据允许通过,2:允许源地址是10.1.1.0/24的任何数据允许通过。3:禁止所有。

注意到没,现在登录ROS是用的10.1.1.2这个地址。是不是很熟悉?

 

关于两台ROS之间的PPTP还能不能拨上号?可以自己尝试一下。不过,一旦禁用了pptp客户单后,需要在虚拟机中(如果显示中的话就要在物理机上接显示器或者连Console),在interface下enable相对的接口。具体如下:

其中,interface print 为显示当前接口。在这里,pptp的编号为4。如果pptp客户端被禁用的话,那么4后面的标识不是R 而是X。

interface enable 4 就是启动编号为4的接口

扫码打赏博主扫码打赏博主

如果你认为本站解决了您的问题或得到了帮助,请自愿打赏博主,谢谢支持!

最后编辑于:2018/10/31作者: fox

该用户很懒,还没有介绍自己。

暂无评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注

arrow grin ! ? cool roll eek evil razz mrgreen smile oops lol mad twisted wink idea cry shock neutral sad ???

加博主Q,请注明来意。

加博主Q,请注明来意。