查看全部评分
oldjiang
使用道具 举报
您需要 登录 才可以下载或查看,没有账号?CSNA会员注册
原帖由 oldjiang 于 2008-9-21 01:00 发表 协议视图,ARP-Request占了几乎全部的流量 定位他 看端点视图,按总流量或发送数据包降序 00:1D:0F:87:54:F0、00:1D:0F:4C:0F:EC的发包过于密集,而且都声称自己是192.168.1.1,你的子网似乎并没有这个ip 00:00: ...
终于找了篇关于这方面介绍:MAC Address for Virtual Machines 虚拟世界的MAC地址 先看一下真实世界的MAC地址是如何分配,如何保证没有重复的。 每块网卡都有一个MAC地址,MAC地址是一个6字节、也即48bit的数据。前3字节称为OUI,是由IEEE组织注册给网络设备生产商的;每个厂商拥有一个或多个OUI,彼此不同。后三字节则是由网络设备生产商分配给自己生产的每一个拥有MAC地址的设备,互不重复。 在VM的世界中,每一台拥有虚拟NIC(网卡)的设备当然也拥有MAC地址。这虚拟网卡的MAC地址,当然也是按照规定,前三字节为OUI,后三字节逐一分配给每个设备。 由于虚拟网卡的”制造商“是VMware,XenSource,微软等虚拟平台软件的生产商,OUI当然就分配给了他们。 VMware VM所使用的OUI 按照VMware ESX 3的[Server Configuration Guide]的说法,VMware的使用下面的三个OUI作为VM的MAC地址: 00:0C:29 - 用于自动生成的MAC地址 00:50:56 - 用于手动设置的MAC地址 00:05:69 - 曾经用于旧版本的VM(大约是在ESX 1.5的时代),在ESX 3中已经不再使用 但是在实际应用上,我发现00:50:56这一MAC地址段并不是完全用于手动设置的MAC地址: 00:50:56:00:00:00 - 00:50:56:3F:FF:FF 这一段MAC地址可以用于手动设置的MAC地址 00:50:56:40:00:00 - 00:50:56:FF:FF:FF 这一段(我的推测,不一定准确),则是用于ESX 3上的自动生成的MAC地址(包括VM和Service Console) MAC地址的生成 OUI有了,后三字节如何生成呢?要知道虚拟机是经常被创建和销毁的,这一点不像实体PC。网卡生产商可以计算每年生产多少块网卡,从而为每块网卡分配不同的MAC地址; VMware却不可能计算出每年有多少台VM、有多少块虚拟网卡被创建。 VMware ESX Server的算法是,使用散列算法,通过VM的UUID来生成MAC地址。VM的UUID是每一台VM特有的、128bit的ID,是由ESX Server硬件SMBIOS的UUID、加上VM的路径生成的。因此,一台虚拟机的虚拟网卡的MAC地址就与下面四个因素有关: VMware的OUI Host (ESX Server)的SMBIOS中的UUID VM在服务器上的路径 网卡的实体名 (Entity Name),用来确保同一VM上的不同网卡有不同的MAC地址 MAC地址冲突的检测与解决 MAC地址一旦生成,就不会再有变化,除非上面所述的四项因素发生改变(最可能发生的就是第三项,VM在服务器上的路径改变)。 尽管如此,由于散列算法本身的特征,还是有万一发生MAC地址冲突的可能(可能性极小,和年末ジャンボ中头彩的几率差不多)。ESX Server会不断跟踪和检测运行中和挂起(Suspend)的VM,以保证没有MAC地址冲突。但是已经关闭电源的VM是不在检查对象之内的。 因此,万一一台VM启动时ESX检测到MAC地址冲突,它会分配给VM的虚拟网卡一个新的MAC地址。所以从这个意义上说,VM的MAC地址是可能发生变化的——只是这个概率实在太小。 手动指定MAC地址 手动指定MAC地址仅用于一些极其特殊的情况,通常是进行P2V的时候。例如,某物理服务器上的软件,其License已经与该服务器的MAC地址绑定,如果MAC地址改变则软件无法运行;再如,某些底层网络软件以MAC地址来鉴别机器时,为了不做更改能够继续使用,在P2V的时候也要手动指定MAC地址。 打开一个VM的.vmx文件,可以看到如下设置:(如果有多块NIC的话,那么就会有ethernet0、ethernet1、ethernet2……) ethernet0.addressType = "generated" ethernet0.generatedAddress = "00:0c:29:9b:fb:18" 这说明该NIC是自动生成的MAC地址。只需如下更改即可变为手动分配的MAC地址: ethernet0.addressType = "static" ethernet0.address = "00:50:56:00:00:01" 其中的00:50:56:00:00:01就是手动指定的MAC地址。
Ethernet adapter VMware Network Adapter VMnet8: Connection-specific DNS Suffix . : Description . . . . . . . . . . . : VMware Virtual Ethernet Adapter for VMnet8 Physical Address. . . . . . . . . : 00-50-56-C0-00-08 Dhcp Enabled. . . . . . . . . . . : No IP Address. . . . . . . . . . . . : 192.168.16.1 Subnet Mask . . . . . . . . . . . : 255.255.255.0 Default Gateway . . . . . . . . . : Ethernet adapter VMware Network Adapter VMnet1: Connection-specific DNS Suffix . : Description . . . . . . . . . . . : VMware Virtual Ethernet Adapter for VMnet1 Physical Address. . . . . . . . . : 00-50-56-C0-00-01 Dhcp Enabled. . . . . . . . . . . : No IP Address. . . . . . . . . . . . : 192.168.109.1 Subnet Mask . . . . . . . . . . . : 255.255.255.0 Default Gateway . . . . . . . . . :
原帖由 oldjiang 于 2008-9-21 20:20 发表 “00:1D:0F:87:54:F0、00:1D:0F:4C:0F:EC这两个mac不一定是真实存在的”,我的意思是他很可能是虚拟机里的网卡,或者随意构造的mac,我对VM不熟。如果你的网络上没有这个mac,最好的办法是查看交换机的mac地址表,估 ...
原帖由 yizi712 于 2008-9-22 23:37 发表 oldjiang版主, 分析: 我刚刚又去抓了些数据包认真去看了看,00:1D:0F:87:54:F0、00:1D:0F:4C:0F:EC这两个MAC地址对应的IP是一样的(都是192.168.1.1),IP存在冲突,这个应该就是我的网络中产生大量ARP请求数据包 ...
原帖由 oldjiang 于 2008-9-23 08:11 发表 不对。 如果两个主机设置了相同的IP,后启动的或后修改的主机在发现IP冲突后不会再使用这个地址,更不会这样疯狂的发包。 要么是人为的,要么是病毒。
本版积分规则 发表回复 回帖并转播 回帖后跳转到最后一页