一万个为什么之IPv6.flv (221.81MB)

1.地址问题

1.IPv6地址多长?

  • 长度128bit

2.写法怎么样?

  • 分为8组,每组16bit。
  • 每组IPv6前面的0可以省略不写,一连串0可以用::表示,一个IPv6地址只能出现一次双冒号。

3.全球单播地址是什么意思,长什么样?

  • 全球单播地址与IPv4中的单播地址一样。
  • 全球可路由地址。
  • 前三位为001,范围为2000::/3——3FFF::/3

4.唯一本地地址什么意思,长什么样,什么时候使用?

  • 相当于IPv4的私网地址
  • FC00::/7
  • 用于局域网内自己做研究

5.单播地址还有哪些,长什么样?

  • 未指定地址 ::/128
  • 环回地址 ::1/128
  • 链路本地地址 FE80::/10

6.链路本地地址是什么意思,有什么作用,长什么样,有哪些生成方式?

  • 只供本链路使用
  • 无状态自动配置,无IP进行通信,路由的下一跳
  • FE80::/10
  • 手动配置,自动配置(软件生成,EUI-64),配全球单播地址和任播地址自动生成。

7.EUI-64是怎么生成地址的?是第八位反转还是第七位?

  • EUI-64用于生成我们的接口ID。
  • 在48位的MAC地址中插入16bit的FFFE,再将第七位反转为1表示全球唯一。U/L

8.路由器收到一个报文,目的地址是链路本地地址可以向哪转发?

  • 收到的路由器查看是否是找自己的链路本地地址,如果是则接收,如果不是则丢弃。
  • 因为链路本地地址只能在本链路发送,不能转发。

9.一个接口可以配置多个单播地址,IPv6地址配多个的好处?

  • 平滑过渡
  • 业务隔离
  • 节约硬件成本 | image.png | image.png
    一个IP进入多个进程 | image.png | | —- | :—-: | :—-: | | | | | | |

10.怎么判断一个地址是不是组播地址?Flag的取值有什么含义?scop的取值呢?

  • IPv6地址前八位全为1的为组播地址(FF)
  • 前三位固定为0,最后1位为0时表示永久组播组地址,1为临时组播组地址。
  • scop的0保留,1代表本地,2代表链路,5表示站点

11.特殊组播组地址有哪些?

  • FF02::1所有站点的组播组地址
  • FF02::2所有路由器的组播组地址
  • FF02::5OSPF路由器的组播组地址
  • FF02::6OSPF DR路由器的组播组地址
  • FF02::13 PIM路由器组播组地址

12.被请求组播组地址长什么样?

  • FF02::1::FF/104 + IPv6地址的后24位的IP地址

13.什么时候一个接口会加入到被请求节点组播地址?

  • 当接口配置了全球单播地址或任播地址后,接口就会自动加入对应的被请求节点组播地址中。

14.组播MAC怎么组成?IPv4和IPv6组播三层到二层的映射有什么不同,有什么影响?

  • 由3333+后32bit的IPv4地址组成。
  • IPv4是01005e + 第二十五位为0 +后23bit的IPv4地址。会导致32个IP地址会共用1个MAC地址。

15.任播地址有什么用?

  • 001/3 + Anycast
  • 回包不能用任播地址作为源IP,只能用全球单播地址回包,这样可以知道是哪个服务器提供的服务

16.任播和单播有什么区别?

  • 配置上的区别

17.接口能否能存在多个全球单播地址和多个链路本地地址?

  • 全球单播地址可以配置多个
  • 链路本地地址只能唯一

2.ICMPv6

1.ICMPv6有哪些作用?

  • 差错通知
    • Type=1表示目的不可达
    • Type=2表示数据包太大
    • Type=3表示超时
    • Type=4表示错误未识别
  • 消息通知
    • Type=128表示回显请求
    • Type=129表示回显响应

2.与ICMPv4相比有什么区别?

  • 工作环境
    • IPv4工作在IPv4环境中
    • IPv6工作在IPv6环境中
  • 协议号
    • IPv4协议号为1
    • IPv6为48

3.除了查询和差错报告还有哪些功能?

  • 除了这两样还有NDP的功能,MLD

3.NDP

1.NDP是什么意思?

  • 邻居发现协议

2.有哪些机制?

  • 机制包含
    • DAD(重复地址检测)
    • 获取路由前缀
    • 无状态地址自动配置
    • 地址解析
    • 邻居状态表

3.IPv4怎么知道下一跳的MAC的?IPv6怎么知道的?

  • IPv6通过ARP协议来获取
  • IPv6通过NDP协议来获取,通过交互NS和NA报文来获取。

4.发送的什么报文?Type类型多少?携带什么内容?目的地址多少?目的MAC多少?对端设备怎么回复?用什么报文?Type类型多少?目的地址多少?

image.png

5. IPv6怎么判断一个地址的可用性?IPv4呢?发送什么报文?怎么封装的?携带哪些内容?目的地址是多少?源地址是多少?目的MAC多少?地址冲突对端怎么回复?发送什么报文?目的地址?Type类型多少?什么叫做试验地址?对端也是试验地址怎么处理?

  • IPv6通过NDP的重复地址检测,IPv4通过免费ARP。

image.png

6.IPv6中有ARP表项吗?封装数据报文查什么表?这个表有些什么状态?每个状态表示什么意思?探查状态和延时状态发送的NS报文有什么区别?

  • 没有ARP表项。
  • 查邻居表。

image.png

  • 延迟状态是组播发送的,探查是单播发送的。

7.路由器发现有什么用?发送什么报文?目的地址多少?Type类型多少?收到怎么回复?携带什么内容?

  • 用来无状态地址自动配置

image.png

8.ICMPv4有没有重定向?什么场景会触发重定向?触发重定向那个报文路由器转发还是丢弃?重定向报文Type类型多少?目的地址?携带什么内容?

场景
image.png

  • Type为137
  • 源IP是自己
  • 目的地址为A的FE80地址
  • 源目MAC由源目IP生成
  • DATA为B的FE80地址

重定向的条件

  • 报文目的地址非组播地址
  • 非路由转发
  • 从一个接口收到又从该接口发送出去
  • 重定向的接口IP与自己同一网段
  • 网关A有B的邻居

收到了还是要转发,先走个次优路径,收到重定向报文会生成一个去B的主机路由。

4.MTU

  • IPv6如何发超过MTU的大包?如果超过65536字节的包呢?发包之前需要发MTU进入试探吗?
  1. image.png
  2. 超过65536的包分不了片,通过拓展报头字段为1的逐跳选项报头来支持巨型载荷,和路由器通知。
  3. 不需要试探,如果发送的报文超了,则会回复ICMPv6的包过大报文。

5.主机IP

1.主机获取地址的方式有哪些?

  • 手工配置,无状态自动配置,DHCPv6有状态和无状态。

2.怎么判断用哪种方式获取地址?

  • 通过RA报文中的Flag位来决定
  • (M=0,O=0)表示无状态地址自动配置,(M=0,O=1)表示DHCPv6无状态,(M=1,O=1)表示DHCPv6有状态。

3.主机的网关如何选择呢?如果网段中存在多个路由器,那么当主机收到多个RA信息的时候,他会如何使用?

  • 所有RA报文中的前缀都会收,RA报文中的pre字段,优先级分为低中高,优先级越高就选谁。

4.O位表示什么意思,M位表示什么意思?

  • O位,表示Other-Config-Flag,默认为0,表示主机不应该使用有状态自动配置机制来配置除了IPv6地址外的其它参数。
  • M位默认为0,为0时,收到该RA的主机使用RA中包含的IPv6前缀用于无状态地址自动配置。

5.无状态自动获取的IP地址可以使用的时间是多久?

  • RA报文中有时间的参数,Vaild lifetime,Pre Lifetime
  • vaile lifetime默认为2天,Pre Lifetime默认为1天。
  • pre Lifetime时间内可以主动发和收请求,在Pre和vaile时间间只能被动收,不能主动发起连接

6.详细描述Ipv6主机互访过程

  • 首先判断两台主机是不是在同个网段,同网段则发送NS和NA进行地址解析。
  • 如果不是同网段,则请求网关的MAC地址,让网关进行转发。

7.IPv6和IPv4的区别有哪些?

1.IPv6和IPv4的区别有哪些?地址写法各自什么样的?地址分类有什么不同?获取地址的方式有什么不同?地址解析过程有什么不同?地址冲突检测呢?ICMP有什么不同?报文格式呢?IPv4中QOS分类怎么分的?区分一种流量的方法是什么?IPv6呢?IPv4包头固定吗?IPv6有哪些拓展报头?拓展报头可以重复出现吗?IPv6是如何支持移动特性的?何如理解IPv6的层次化和端到端的安全?50和51有什么区别?

  • IPv6地址长度128bit,网络前缀加接口ID,IPv4地址长度32bit,网络前缀加子网ID
  • IPv4地址分为ABCDE类主网,IPv6分为全球单播地址,组播地址,任意播地址
  • IPv4不能用无状态自动配置,只能手动配和DHCPv6,因为地址空间太小。
  • IPv4采用ARP地址解析,IPv6用NDP协议解析
  • IPv4采用免费ARP,IPv6用NDP中的DAD机制解析
  • ICMP有什么不同?
    • 工作环境不同
    • 协议号不同
    • V6除了常见的功能还有NDP还有MLD
  • Ipv6取消了一系列报头
    • 将分片放到了next Header字段
    • 将TOS改成了traffic class和Flow lable
  • 通过TOS进行简单流分类和复杂流分类,确定一条流的方式是通过五元组。
  • IPv6通过Taffic class和Flow lable字段来确定一条流
  • IPv4基本报头固定为20字节,拓展报头不固定
  • IPv6有哪些拓展报头,拓展报头只有目的选项报头可以重复出现,并且只能在路由报头之前和上层协议数据前
    • 逐跳选项报头
    • 目的选项报头
    • 路由报头
    • 分段报头
    • 认证报头
    • 封装安全净载报头

移动特性

image.png image.png

层次化和端到端的安全?

  • 地址多,所以可以地址层次化,给省市县层次划分地址
  • 可以直接在报文中做认证
  • 通过50和51的拓展报头来实现的,51是认证功能,50是认证封装载荷

8.过渡技术

1.过渡技术有哪些?

  • 共存技术
    • 双栈
  • 互通
    • 隧道手工
      • v6 over v4
      • GRE
    • 隧道自动
      • 6 to 4
      • ISTATP

2.互通技术是什么?共存技术是什么?

  • 互通指的是通过隧道的方式传输报文
  • 共存技术指的是使用双栈

3.过渡前期使用何种技术?过渡后期呢?

  • 前期用6 to 4
  • 后期用v4 over v6

4.手动隧道和自动隧道的差别是什么?

  • 目的IP是不是要手动配置

5.GRE属于手动还是自动隧道?

  • 手动隧道

6.配置GRE需要配置什么?

  • 在路由器上起一个Tunnle口
  • 配置一个IPv6地址
  • 配置源IPv4地址
  • 目的IPv4地址
  • 协议配置GRE
  • key

7.需要配置静态路由吗?静态路由的下一跳是谁?

  • 需要配置
  • 指一个IPv6网段下一跳进入隧道口,下一跳地址为隧道IPv6地址。

8.跑动态路由协议行不行?

  • 手工的可以。
  • 我们的隧道中有目的地址,所以动态也可以。
  • 自动隧道不可以,因为自动隧道没有手工指定下一跳,所以不知道发往哪里。

9.自动隧道有哪些?6 to 4地址格式什么样的?

  • 6 to 4
  • IASTAP

  • 前16位固定+32位的IPv4地址+16位的站点标识符+64bit接口ID

10.第49位到第64位这16地址有什么用?

  • 站点标识符,通过站点标识符来区分不同的网段

11.需要配置静态路由吗?

  • 需要,路由指向我们的Tunnle口

12.隧道之间采用动态路由协议行不行?

  • 手工隧道配动态路由协议可以,自动不行,因为隧道中没有下一跳地址

13.6 to 4地址应用什么场景?

  • 一般应用于路由器与路由器之间

14.ISATAP使用在什么场景?和6 to 4 有什么区别?

  • 一般用于主机与路由器之间
  • 6 to 4的IPv4内嵌在网络前缀,ISTATP内嵌在接口ID中。