1. IPv6第二层寻址

IPV6地址以两种方式与第2层地址相关。第一种方式是IPV6独有的,提供了从第2层地址构建接口ID的机制。第二种方式对IPv4和IPV6都是一样的,提供了将一个IP组播地址映射为一个第2层组播地址的机制。

  • EU1-64接口标识符

IEEE规定了EUI-64标识符的格式。为了使IPv6接口ID成为这样的一个标识符,即以Internet标准顺序(全局/本地位)将第6位反位。

IEEE规范也给出从一个48位第2层地址产生一个64位EU1-64标识符的机制。因为有这样的一种机制,在接口的MAC地址和IPV6地址的接口lD部分之间能够建立一种关联。例如,这种类型的ID在Cisco路由器上由链路本地地址使用。

下图展示了从一个MAC地址产生一个IPV6接口ID的两步骤过程。第一步是产生一个EU1-64标识符;第二步是修改它使之成为一个IPV6接口ID。

在MAC地址的组织唯一标识符(高24位)和节点ID(低24位)中间插入FFFE。

将MAC地址的U/L位(高7位)反转。(0<—>1)

  

  

如何计算?

一个EUI-64地址可以由EUI-48地址形成,将EU1-48地址的24位OUI值复制到EU1-64地址,并将EUI-64地址的第4和第5个字节的16位替换为1111 1111 1111 1110 (十六进制FFFE),然后复制由组织分配的剩余位。例如,EUI-48地址00-11-22-33-44-55在EUI-64地址中将会变成00-11-22-FF-FE-33-44-55这个映射的第一步是当可以用基本EUI-48地址时由IPv6构造接口标识符。修改的EUI-64用于形成IPv6地址的IID,但是需要对u位取反。

MAC地址:00-04-6d-7f-7c-1a——>00-04-6D-FF-FE-7F-7C-1A——>

u位(高7位)取反,02-04-6D-FF-FE-7F-7C-1A——>使用保留的链路本地前缀 fe80::/10 ——>

链路本地地址:FE80 : : 204 : 6DFF : FE7F : 7C1A

  

  MAC地址:00 : 30 : 48 : 2A : 19 : 89——>00 : 30 : 48 : ff : fe  2a : 19 : 89——>

  u位取反,02 : 30 : 48 : ff : fe : 2a : 19 : 89——>使用保留的链路本地前缀 fe80::/10 ——>

  链路本地地址:FE80 : : 230 : 48ff : fe2a : 1989

  • 第2层组播地址

类似于IPV4,IPV6目前将第3层组播地址映射到第2层地址。对于组播IPv6流量,MAC地址的第一个16高位位标识第2层组播地址:3333.xxxxxxxx。IPv6组播地址的低位31位接贝到MAC地址的剩余部分。图2-14展示了这种映射机制的示例,是以被请求节点组播IPV6地址来说明的。

  

说明:

在IEEE标准中, EUI表示扩展唯一标识符。EU1-64标识符开始于一个24位的组织唯一标识符(OUI),接着是一个由组织分配的40位扩展标识符,它由前面24位识别。ouI由IEEE注册权威机构[IEEERA]来维护和分配。在Intemet环境下,这种地址通常是统一管理的。

OUI的长度是24位,并占据EU1-48和EU1-64地址的前3个字节。这些地址的第一个字节的低两位分别是u位和g位。

多年来,很多IEEE标准兼容的网络接口(例如以太网)在使用短格式的地址(48位的EUI)。EU1-48和EU1-64格式之间的显著区别是它们的长度。

  

第7位(u位)设置为1时,就定义了一个全局单播地址(全局唯一);

第8位(g位)被设置为1时, 表示该地址是一组或组播类型的地址。

基于单播前缀产生全局惟一IPV6组播地址机制,如图2-10所示。

  

2. IPv6对于接口的要求

  • 为了确保IPV6协议的正确运行,每台支持IPv6的主机必须支持下列类型的地址:
    • 回环地址:
    • 链路本地地址:
    • 如果配置了的话,需支持单播或任意播地址:
    • 注册到所有节点组播地址:
    • 主机注册了的所有组的组播地址:
    • 注册到其自身的被请求节点组播地址。

依赖于节点类型、配置和支持的协议,也许存在其他地址或者加入组播组。―台路由器必须支持为主机列出的地址,以及下列地址:

    • 子网路由器任意播地址:
    • 所有配置的组播地址:
    • 所有路由器组播地址。

这些地址用于控制和数据平面相关的流量。

IPv6第二层寻址,IPv6接口要求的更多相关文章

  1. Android系统进程间通信Binder机制在应用程序框架层的Java接口源代码分析

    文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/6642463 在前面几篇文章中,我们详细介绍了A ...

  2. 光猫和路由器都支持ipv6,却无法使用ipv6?

    这些年很多地方的光猫都能获得ipv6地址了,而且新出的路由基本都支持ipv6,但是还是有很多人在http://test-ipv6.com看不到自己的ipv6地址,也上不了ipv6网站. 我也遇到这个问 ...

  3. 23、ASP.NET MVC入门到精通——业务层和数据层父类及接口-T4模板

    本系列目录:ASP.NET MVC4入门到精通系列目录汇总 在上一篇中,我们已经把项目的基本框架搭起来了,这一篇我们就来实现业务层和数据层的父接口及父类. 1.我们先来定义一个业务层父接口IBaseB ...

  4. 第二部分 MediaPlayer的接口与架构

    第二部分 MediaPlayer的接口与架构 2.1 整体框架图         MediaPlayer的各个库之间的结构比较复杂,可以用下图的表示     在各个库中,libmedia.so位于核心 ...

  5. .net通用权限框架B/S (四)--DAL数据层以及数据接口

    数据层以及数据接口设计如下图(以g_orga组织机构和g_role角色)为例,这几个类可以通过.tt模版生成 设计参考学习http://www.cnblogs.com/hanyinglong/arch ...

  6. iOS 上线因iPv6被拒,查询服务器是否支持iPv6,mac设置iPv6网络,手机测试iPv6

    一. iOS----如何检查域名是否支持ipv6 iOS----------如何检查域名是否支持ipv6 1.检查你所用到的库,像af 3.0以上什么的(不用改),其他的库自己去搜下是否支持ipv6吧 ...

  7. [MyBatis]DAO层只写接口,不用写实现类

    团队开发一个项目,由老大架了一个框架,遇到了DAO层不用写接口了,我也是用了2次才记住这个事的,因为自己一直都是习惯于写DAO层的实现类,所以,习惯性的还是写了个实现类.于是遇到错误了. 找不到那个方 ...

  8. iview框架 两侧弹框 出现第二层弹框 一闪而过的问题

    分析原因:寡人怀疑可能是,两层弹出框 采用的是一个开关值,发生了覆盖 解决方式 是在第二层弹框外套层计时器 源代码如下: 修改后为:

  9. Ajax -异步请求 -jquery中ajax分类 -第一层 $.ajax -第二层($.get /$.post) -第三层($.getJson/$.getScript) -相应演示

    Ajax 1.标准请求响应时浏览器的动作(同步操作) 1.1浏览器请求什么资源,跟随显示什么资源2.ajax:异步请求. 2.1局部刷新,通过异步请求,请求到服务器资源数据后,通过脚本修改页面中部分内 ...

随机推荐

  1. uni-app 自定义扫码界面

    二维码扫描,已经成为当下一款应用不可或缺,同时也是用户习以为常的功能了.uni-app 为我们提供了扫码 API ,直接调用即可. 需求场景 在实际开发中,平台提供的默认扫码界面,并不能满足一些自定义 ...

  2. depth peeling实现半透明

    aaarticlea/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aH

  3. django前端到后端一次完整请求实例

    一.创建项目:# django-admin startproject mysite# cd mysite# python manage.py startapp blog 目录结构: 一.html文件: ...

  4. Sublime 是自动检测而非自动设置缩进

    以为是自动设置规范化的缩进 以前一直认为是:识别出文件类型后,设置统一的缩进规范.比如说 识别为CSS,就把缩进设成2个空格 其实是自动检测然后与你保持统一 亲测发现,根据你文本里用的是几个空格的缩进 ...

  5. JS判断客户端是否是iOS或者Android或者ipad(三)

     *  * @function: 判断浏览器类型是否是Safari.Firefox.ie.chrome浏览器  * @return: true或false  *  */ function isSafa ...

  6. Tensorflow学习笔记----模型的保存和读取(4)

    一.模型的保存:tf.train.Saver类中的save TensorFlow提供了一个一个API来保存和还原一个模型,即tf.train.Saver类.以下代码为保存TensorFlow计算图的方 ...

  7. Could not find result map java.util.HashMap

    Could not find result map java.util.HashMap 找不到结果图java.util.HashMap MyBatis 找不到返回的 'resultMap'!把resu ...

  8. 《你又怎么了我错了行了吧》【Beta】Scrum Meeting 2

    第二天 日期:2019/6/25 前言: 第2次会议在女生宿舍召开 确认编码阶段已经完成,继续测试项目 1.1 今日完成任务情况以及明日任务安排 姓名 当前阶段任务 下一阶段任务 刘 佳 完善了未开发 ...

  9. poi生成word2007及以上文件

    一.简介 对于poi来说,poi可以完成对word.excel.ppt的处理.word目前有两种文件格式,一种是doc后缀.另一种是docx后缀的.2007之前的版本都是doc后缀的,这种格式poi使 ...

  10. Xshell 安装 Xftp

    一.下载 Xftp 链接:https://pan.baidu.com/s/1dGeL2gD 密码:as9x 二.安装 Xftp 无脑下一步 三.点击 Xshell 上的新建文件传输 四.弹出 xftp ...