×××分为站点到站点和移动客户节点,本文为介绍移动客户节点的接入而写,一端为服务器端Centos,另一端是客户端Win7。这是最简单的场景。

spacer.gif

wKioL1a8PHmQ7q1nAABcMAOBdUU893.png

参考文献

Open×××.2.Cookbook.pdf 

下载并安装依赖

Open×××需要依赖三个组件:OpenSSL、LZO、PAM-devel

前者和后者都可以透过yum install来安装,而LZO则需要下载源码安装

wget http://www.oberhumer.com/opensource/lzo/download/lzo-2.09.tar.gz

然后参考解压目录里的INSTALL文件进行安装即可

下载并安装Open×××

访问网站https://open***.net 在Community下,

下载源码open***-2.3.10.tar.gz 用于搭建接入服务器(Linux)节点

windows端安装文件是open***-install-2.3.10-I002-686.exe用于WINXP 32bit,

open***-install-2.3.10-I602-x86_64.exe用于winxp以上版本的windows

Linux上的安装

tar解压,进入解压目录,执行./configure && make && make install,如果依赖齐全,一般是不会出错的,如果有缺少依赖则会提示error,自行补上即可。

Win7上的安装

安装open***-install-2.3.10-I602-x86_64.exe,过程中会提示安装一个设备,点安装,很快便完成了。

Open×××有两种网络类型

TUN和TAP,前者仅基于IP协议,后者则是基于以太网帧,可以支持非ip的协议。


点到点场景的实现配置(TUN类型)

点到点是最简单的配置,主要用于测试Open×××的连通性。

在开始配置之前,Enterprise Router节点需要配置好端口NAT和防火墙放行

在CentOS上

执行/usr/local/sbin/open*** --ifconfig 172.16.5.1 172.16.5.2 --dev tun

意思是,本地tun端口使用的ip地址是172.16.5.1,对端的ip地址是172.16.5.2,使用tun网络模式

命令执行后会进入监听模式

Thu Feb 11 14:06:55 2016 Open××× 2.3.10 x86_64-unknown-linux-gnu [SSL (OpenSSL)] [LZO] [EPOLL] [MH] [IPv6] built on Feb 11 2016

Thu Feb 11 14:06:55 2016 library versions: OpenSSL 1.0.1e-fips 11 Feb 2013, LZO 2.09

Thu Feb 11 14:06:55 2016 ******* WARNING *******: all encryption and authentication features disabled -- all data will be tunnelled as cleartext

Thu Feb 11 14:06:55 2016 TUN/TAP device tun0 opened

Thu Feb 11 14:06:55 2016 do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0

Thu Feb 11 14:06:55 2016 /sbin/ifconfig tun0 172.16.5.1 pointopoint 172.16.5.2 mtu 1500

Thu Feb 11 14:06:55 2016 UDPv4 link local (bound): [undef]

Thu Feb 11 14:06:55 2016 UDPv4 link remote: [undef]


在Win7上

打开管理员模式的命令行,执行open*** --ifconfig 172.16.5.2 172.16.5.1 --dev tun --remote coosh.net

Win上的ip地址刚好与Centos的对调,而--dev参数必须保持与服务器端一致,这里多了个--remote参数,用于指定服务器端的地址

wKiom1a8PCCxpmYdAAC8ljALcGQ341.png

C:\Windows\system32>ping 172.16.5.1

正在 Ping 172.16.5.1 具有 32 字节的数据:

来自 172.16.5.1 的回复: 字节=32 时间=41ms TTL=64

来自 172.16.5.1 的回复: 字节=32 时间=41ms TTL=64


透过***隧道,客户端能够ping通服务器端。


点到点场景的实现配置(TAP类型)

由于已经开启了一个链接,所以要先退出。在win7的open***命令行点击F4按钮退出,在CentOS上点击Ctrl+C退出。

分别修改一下网络类型参数

[root@Lab ~]# /usr/local/sbin/open*** --ifconfig 172.16.5.1 255.255.255.0 --dev tap          

Thu Feb 11 14:19:38 2016 Open××× 2.3.10 x86_64-unknown-linux-gnu [SSL (OpenSSL)] [LZO] [EPOLL] [MH] [IPv6] built on Feb 11 2016

Thu Feb 11 14:19:38 2016 library versions: OpenSSL 1.0.1e-fips 11 Feb 2013, LZO 2.09

Thu Feb 11 14:19:38 2016 ******* WARNING *******: all encryption and authentication features disabled -- all data will be tunnelled as cleartext

Thu Feb 11 14:19:38 2016 TUN/TAP device tap0 opened

Thu Feb 11 14:19:38 2016 do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0

Thu Feb 11 14:19:38 2016 /sbin/ifconfig tap0 172.16.5.1 netmask 255.255.255.0 mtu 1500 broadcast 172.16.5.255

Thu Feb 11 14:19:38 2016 UDPv4 link local (bound): [undef]

Thu Feb 11 14:19:38 2016 UDPv4 link remote: [undef]

CentOS下命令不需要再指定对端的ip地址,而变成指定本地的子网掩码,dev类型改为tap


Win7下的命令修改为

open*** --ifconfig 172.16.5.2 255.255.255.0 --dev tap --remote coosh.com

C:\Users\Coosh>ping 172.16.5.1

正在 Ping 172.16.5.1 具有 32 字节的数据:

来自 172.16.5.1 的回复: 字节=32 时间=78ms TTL=64

来自 172.16.5.1 的回复: 字节=32 时间=39ms TTL=64