以前,我们演示了一个基于主机身份的虚拟专用服务(HIP-VPLS)的工作原型,当时我们使用了Mininet框架。在这里,我们将演示如何在实际硬件上部署此系统。我们将使用NanoPi R2S作为HIP-VPLS的平台。回顾一下,虚拟专用局域网服务(VPLS)提供了在现有IP网络上构建第二层通信的手段。可以使用各种方法构建VPLS。然而,当构建生产级VPLS解决方案时,需要清楚如何解决诸如安全性、移动性和L2问题等方面的问题。
主机身份协议(HIP)最初设计用于拆分IP地址的双重角色。换句话说,HIP是一个介于IP和传输层之间的第3.5层解决方案。HIP使用公钥的哈希作为标识符。这些标识符或主机身份标签(HITs)暴露给传输层,并且永远不会改变(严格来说,如果系统管理员决定旋转RSA或ECDSA密钥对,它们可能会发生更改,但这很少发生)。另一方面,HIP使用可路由的IP地址(这些可以是IPv4或IPv6)作为定位器,并用于在端点之间传递HIP和IPSec数据包。总体而言,为了相互识别并交换秘密密钥,HIP依赖于4路握手(也称为HIP基本交换或HIP BEX)。在BEX期间,对等方协商要使用的一组加密算法,相互识别(由于HIT是永久的并绑定到公钥,HIP可以使用基于HIT的简单防火墙来过滤不受信任的连接),交换密钥(HIP可以使用Diffie- Hellman和椭圆曲线Diffie-Hellman算法),甚至使用计算难题(这些基于密码哈希函数和对等方在哈希函数中找到碰撞的能力;解决方案的复杂性由HIP BEX中的响应器调节)。HIP还支持移动性,并使用单独的握手过程,其中对等方通知其对等方有关定位器(用于路由目的)的更改。
在我们的部署中,我们使用了以下设置。对于HIP交换机,我们使用了NanoPi R2S计算平台。我们使用了8端口SNR交换机来连接3个NanoPi R2S,这样我们就模拟了设置中的IP覆蓋层。NanoPi R2S有两个接口:一个面向LAN网络,另一个面向WAN网络。NanoPi R2S具有以下特征:1GB内存,四核CPU,32GB SD卡。为了连接路由器,我们使用了SNR交换机(每个交换机有8个1GB / s端口和两个小型形式因子(SFP)插槽)。测试床配置如下图所示:
在NanoPi R2S上安装HIP-VPLS之前,需要安装一些依赖程序包。在NanoPi R2S上,我们使用的操作系统是Armbian。为了安装依赖程序包,请执行以下命令:
sudo apt-get update
sudo apt-get install build-essential libssl-dev libnl-genl-3-dev libnl-route-3-dev libpcap-dev
<< · Back Index ·>>