某工具选型测试需要把进出客户端的数据流量进行镜像,通过目的服务器应用抓包分析数据流量中是否有敏感信息。

此次网络流量镜像在VMware虚拟化环境下结合物理交换机实现,需要使用VMware虚拟化分布式交换机技术。标准交换机只能连接一个物理主机,不具有任何灵活性,分布式交换机则可以连接不同的物理主机,可以在主机之间实现共享,也比前者具有更多便利功能。

 

    如下是实现环境:

    数据流量源(客户端):win7操作系统(VM虚拟机)——镜像源

    数据流量目的(目的服务器):redhat linux 6操作系统(VM虚拟机)——镜像目的

    Vmware版本:vmware vsphere 5.5

    物理交换机:H3C



镜像架构图

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_客户端

如上架构图所示,

    1、物理交换机提供三个交换机口,此三个口建议同处一个物理交换机,其中两个口设置镜像源(P1口)和镜像目的(P2口),镜像源口需要设置为串口,为第三个口(P3口)设置目的服务器IP地址(管理地址)对应的Vlan ID。从这三个口引出三根网线,连接到ESXI服务器没有使用的三个物理网卡上,其中P1口接到EA服务器上(标识为EA_P1_Nic1),P2口、P3口接到EB服务器上(标识为EB_P2_Nic2和EB_P3_Nic3)。

2、至少需要提供两台虚拟主机(ESXI服务器,标识为EA和EB)。

3、使用Vsphere Web Client访问Vcenter上,并将EA_P1_Nic1和EB_P2_Nic2创建为分布式虚拟交换机(编号为EA_P1_Nic1_Dvs/ EB_P2_Nic2_Dvs),EB_Nic3创建为标准虚拟交换机(编号为EB_P3_Nic3_Vs)。

4、客户端部署在EA服务器上,需要一个单独的网段,需要网络管理员提供标识该网段的唯一Vlan ID,而且只能挂接一个虚拟网卡,保证所有进出客户端的流量都会被复制镜像。

 5、目的服务器部署在EB服务器上,至少需要两个虚拟网卡,一个配置IP地址(管理地址),用于连接管理该服务器,另一个网卡没有IP地址,提供给服务器上的应用抓包获取镜像流量。

 7,客户端机虚拟网卡挂接EA_P1_Nic1_Dvs虚拟交换机,目的服务器两个虚拟网卡分别挂接EB_P2_Nic2_Dvs和EB_P3_Nic3_Vs虚拟交换机。

注:Vsphereclient也可以配置网络流量镜像,但不要被表象迷惑,需要使用Vsphere Web Client才能实现正确配置。没有安装Vsphere Web Client的同学,可以先休息了。



创建虚拟交换机

其中标准虚拟交换机(EB_P3_Nic3_Vs)使用ESXI已有的交换机,不再另述。

进入VsphereWeb Client界面

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_服务器_02

点击【vCenter】,进入下一界面

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_IP_03

点击【网络】,进入下一界面

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_IP_04

点击【创建DistributedSwitch】进入分布式交换机创建

创建EA_P1_Nic1_Dvs交换机

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_虚拟化 标准交换机 流量镜像_05

【下一步】选择【distributedSwitch:5.5.0】版本,然后保持默认设置至完成创建,创建成功如下:

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_客户端_06

使用同样的方法创建EB_P2_Nic2_Dvs交换机,成功后如下图:

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_虚拟化 标准交换机 流量镜像_07

配置EA_P1_Nic1_Dvs交换机

添加主机

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_服务器_08

点击【添加和管理主机】,进入下一界面

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_IP_09

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_IP_10

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_虚拟化 标准交换机 流量镜像_11

选择IP尾数为47(EA)的机器

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_虚拟化 标准交换机 流量镜像_12

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_IP_13

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_客户端_14

选中【vmnic2】,点击【分配上行链路】,弹出界面

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_IP_15

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_服务器_16

然后点击【下一步】直至完成

设置源Vlan ID

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_IP_17

点击【编辑分布式端口组设置】,进入下一界面

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_服务器_18

设置Vlan ID为961(该ID为网络管理员提供,是客户端虚拟机所设IP地址段在网络上的唯一标识)

其它项目不需要更改,确定完成设置。

客户端虚拟机链接分布式虚拟交换机

找到部署在EA服务器上的客户端虚拟机,更改虚拟网络连接至EA_P1_Nic1_Dvs交换机,如下:

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_客户端_19

配置EB_P2_Nic2_Dvs交换机

添加主机

使用与EA_P1_Nic1_Dvs添加主机相同的方法为EB_P2_Nic2_Dvs添加主机,这次选择IP尾数为211的主机(EB)

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_客户端_20

EB服务器的物理网络适配器依然选择vmnic2(注:EA和EB的物理适配器恰好都是vmnic2,它们之间没有必然联系,网线链接的网卡位置不一样,vmnic的编号也会不一样,具体编号结合Vsphere客户端确定)

 

目的服务器虚拟机链接分布式虚拟交换机

找到部署在EB服务器上的目的服务器,保留管理网卡不变,新添加一块网卡,并连接EB_P2_Nic2_Dvs交换机,如下:

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_IP_21

配置分布式虚拟机交换机端口镜像

进入如下界面:

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_服务器_22

点击【新建】按钮,进入下一界面

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_虚拟化 标准交换机 流量镜像_23

点击【下一步】按钮,进入下一界面

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_IP_24

点击【下一步】按钮,进入下一界面

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_服务器_25

因为镜像的源是客户端,所有这里的Vlan ID也是客户端IP地址的Vlan ID,点击【确定】完成添加

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_虚拟化 标准交换机 流量镜像_26

点击【下一步】按钮,进入下一界面

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_服务器_27

点击添加图标

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_服务器_28

目的服务器需要挂接了【EB_P2_Nic2_Dvs】后,才会在这里出现。勾选目的服务器,然后点击【确定】按钮

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_虚拟化 标准交换机 流量镜像_29

点击【下一步】完成配置

 

镜像效果测试

在其它机器上使用ping命令ping 客户端虚拟机地址:

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_服务器_30

在目的服务器虚拟机上使用tcpdump命令在第二个网卡上抓包,检查是否有流量到达:

虚拟化 标准交换机 流量镜像 vmware交换机流量镜像_虚拟化 标准交换机 流量镜像_31

可以看到,有流量到达,请求包和应答包俱全