当前位置: 首页 > 网络技术 > 正文

关于组播MAC地址与IP地址的对应关系

首先来看一个题目:
题目

题目中给出了01-00-5e-02-02-01的对应的IP地址,

是如果你告诉我答案为A的话,我只能说不完全正确,这个是多选题

首先要知道的是01-00-5e是组播地址的头部,MAC地址总共有48位,但是IP地址共有32位

在MAC地址中前二十四位为厂商的编号,后面的二十四位为由设定,

48位的MAC地址必须全球唯一,并且MAC地址不能修改(MAC地址可以通过软件修改MAC地址的显示,这并不是MAC地址的改变)

题目中,前面的24位为01-00-5E为组播地址的MAC地址的头部,也就是组播地址的MAC地址为01-00-5E-XXX-XXX-XXX,但是后面的24位MAC地址只有23位用于IP地址映射

但是组播地址的前四位为0x1110,也就是224,

那么后面的IP地址后面的28位IP地址要对应23位的MAC地址,那么也就是说组播的MAC地址和IP地址的对应不是唯一的,也就是一个组播MAC地址不是唯一对应IP地址的

一个MAC地址不是唯一对应IP地址的

那么我们可以来计算下上面的MAC地址对应的IP地址

首先MAC地址是:01-00-5e-02-02-01

排除前24位的MAC地址,那么后面的24位用二进制表示为0000 0010 – 0000 0010 -0000 0001

只有后面的23位用作IP地址的映射,也就是说用于对应ip地址的MAC地址为 :0000 0010 -0000 0010 – 0000 0001

然而IP地址为 1110 xxxx -xxxx xxxx -xxxx xxxx – xxxx xxxx

由于IP地址的前4位必须为0x1110 。那么右面的24位为对应MAC地址用

1110 xxxx -xxxx xxxx -xxxx xxxx – xxxx xxxx

与MAC对应时,因为MAC的后23位用于对应IP地址,那么IP地址的后面23位必须和MAC的23位相同,那么就有IP地址应该为

1110 xxxx -x000 0010 -0000 0010 – 0000 0001

也就是说 IP地址中为“x”的部分的值可以选择,这样就可以得到

01-00-5e-02-02-01 对应的组播IP地址为?1110 xxxx -x000 0010 -0000 0010 – 0000 0001

由于X的值可以为0或者是1。那么xxxx的取值范围为

0000到1111,也即是0 到15

那么对应的IP地址的范围是 IP地址对应的第一位的值的范围是 224 – 239?

那么只剩下最有一个”x“了,因为这个x的取值只可能为1或者是0 ,那么IP地址的第二位只可能是0+2 或者是128+2,也即是ip地址的第二位只能为130或者是2

因为后面的16位由MAC地址的后16位固定了,后面的两位只能是 02.01

那么可以总结出:
如果第二位的首位为0的话,IP地址为 224.2.2.1 – 239.2.2.1

如果?第二位的首位为1的话,IP地址为 224.130.2.1 – 239.130.2.1?

只要满足这两个范围的IP地址都可以,

综上所述,ABC是正确的答案,这个题目我们可以知道:组播的MAC地址和IP地址的映射不是唯一的



本文固定链接: http://kuaile.in/archives/712 | 蒲公英的博客

该日志由 蒲公英 于2012年03月25日发表在 网络技术 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: 关于组播MAC地址与IP地址的对应关系 | 蒲公英的博客
关键字:

关于组播MAC地址与IP地址的对应关系:等您坐沙发呢!

发表评论


You must enable javascript to see captcha here!

快捷键:Ctrl+Enter