MHuiG

「看庭前花开花落,望天上云卷云舒」

IPv6

# IPv6

## IPv4

IPv4: 互联网协议版本 4, 工作在网络层，用于分配逻辑地址，在网络层进行逻辑寻址

IPv4 协议的缺点:

IPv4 地址枯竭.

报文头部设计不合理，因为报文头部长度不是定长.

IPv4 协议过度依赖 ARP 协议，导致在网络中广播报文过度泛滥.

32bit 2^32=4E9

延缓 IPv4 地址枯竭的方式:

NAT: 由于可以实现多个私网地址共用一个公网地址，极大程度上延缓了 IPv4 公网地址的消耗

VLSM,CIDR,DHCP: 虽然无法增加 IPv4 地址的空间，但是提高了 IPv4 地址的使用率

## IPv6 特点

近乎无限的地址空间：从 IPv4 的 32bit 增加到了 128bit.

简化了报文头部：现在 IPv6 报文头部是固定长度，从而提高了设备的处理效率，并且增加了灵活的扩展头机制，从而提高了 IPv6 的扩展性.

即插即用：配置 IPv6 的方式更加简单，并且可以实现设备之间的自动配置.

增强了 QoS 特性：增加了流标记域，可以为应用程序或者终端所使用，针对特殊的服务和数据流，分配特定的资源.

## IPv6 地址

1 个十进制数 =>8bit

1 个十六进制数 =>4bit

IPv6 地址：长度为 128bit, 为了方便书写，使用十六进制进行表示，每四个十六进制数为一段，共分为 8 段，并且用冒号隔开，这种表示方法称之为” 冒号分十六进制表示法”.

IPv6 地址包括两部分:

网络前缀：类似于 IPv4 中的网络位

接口标识：类似于 IPv4 中的主机位

并且在使用 IPv6 地址时，也会用 “/xx” 来表示该 IPv6 地址的网络前缀，类似于子网掩码的作用.

## IPv6 地址缩写

2001:0db8:0000:0000:0008:0800:200c:417a

第一步：每段内如果以数字 0 开头，则 0 可以省略.

2001:db8:0000:0000:8:800:200c:417a

第二步：如果该段为 0000, 则可以简写成一个 0.

2001:db8:0:0:8:800:200c:417a

第三步：如果在 IPv6 地址中出现了连续的多个 0, 则可以简写成 “::”.

2001:db8::8:800:200c:417a

注意: “::”, 双冒号的表示方法在 IPv6 地址缩写中只能使用一次.

    2001:0db8:0000:0000:0000:0008:0000:0000
    2001:db8::8::    ????
    2001:0db8::8:0:0
    0000:0000:0000:0000:0000:0000:0000:0001
    ::1
    2001:0DB8:0000:0000:FB00:1400:5000:45FF
    2001:DB8::FB00:1400:5000:45FF
    2001:0DB8:0000:0000:0000:2A2A:0000:0001
    2001:DB8::2A2A:0:1
    2001:0DB8:0000:1234:FB00:0000:5000:45FF
    2001:DB8::1234:FB00:0:5000:45FF
    2001:DB8:0:1234:FB00::5000:45FF

## IPv6 地址分类

IPv6 地址的分类: IPv6 中没有广播地址

单播地址：表示配置的设备接口的 IPv6 地址，用于指导报文发往某一设备.

组播地址：表示一组 IPv6 设备，用于 IPv6 的组播通信.

任播地址：表示具备相同服务的设备，该组设备可以配置相同的任播地址，任播地址采用和单播地址相同的地址空间。并且任播地址只能作为目的地址使用，不能作为源地址使用.

## IPv6 的单播地址

全球单播地址：全球范围唯一，类似于 IPv4 中的公网地址，可以用于 IPv6 的互联网所使用.

前 3bit 固定为 001 开头，2000::/3

0x0010=2

0x0011=3

45bit 全局路由前缀：是由运营商进行分配.

16bit 的子网 ID: 用于企业内部分配子网.

唯一本地地址：是 IPv6 中的私网地址，只能够在内网中使用，该地址不可以被公网路由，因此不能直接访问公网.

前 8bit 固定为 1111 1101, FD00::/8

40bit 的全局 ID: 通过伪随机数产生，虽然是通过随机产生，但是冲突概率很低.

16bit 的子网 ID: 用于企业内部分配子网.

链路本地地址：在 IPv4 中没有对应的概念，是一种应用范围受限制的地址类型，链路本地地址只在本地链路内生效，源或者目的为链路本地地址的数据不会被转发到另一条链路上，一般用于基于 IPv6 工作的协议使用的，例如，IPv6 的邻居发现，IPv6 地址无状态自动配置等

前 10bit 固定为 1111 1110 10, FE80::/10

54bit 固定为 0

## 实验 - IPv6 静态路由

1. 使能 IPv6 功能

系统视图下

    [R1]ipv6

2. 在接口下使能 IPv6 功能

    interface GigabitEthernet0/0/0
     ipv6 enable
     ipv6 address 2001::1/64

查看 IPv6 路由表

    display ipv6 routing-table

查看接口的 IPv6 协议摘要信息 (查看接口的 IPv6 地址)

    display ipv6 interface brief

3. 配置静态路由实现全网互通

    [R1]ipv6 route-static 2002:: 64 2001::2
    [R3]ipv6 route-static 2001:: 64 2002::1

4. 进行连通性测试

    [R1]ping ipv6 2002::2

## 链路本地地址的自动生成方式:

采用 EUI-64 算法生成，EUI-64 算法根据设备的唯一硬件地址 (MAC 地址), 生成全球唯一的 64bit 的接口 ID, 从而配置网络前缀得到一个唯一的链路本地地址.

计算规则:

1. 将 MAC 地址从最中间隔开，插入 FFFE.

2. 将 MAC 地址的第 7bit 进行反转.

    00e0-fcf0-1886

1. 插入 FFFE

    00e0-fcff-fef0-1886

2. 第 7bit 进行反转

      0   0   e 0
    0000 0000 e 0
    0000 0010 e 0
      0   2   e 0

3.FE80:: 前缀

FE80::02e0:fcff:fef0:1886

## 实验 - 链路本地地址

    interface GigabitEthernet0/0/0
     ipv6 enable
     ipv6 address auto link-local

    [R1]display ipv6 interface brief
    *down: administratively down
    (l): loopback
    (s): spoofing
    Interface                    Physical              Protocol
    GigabitEthernet0/0/0         up                    up
    [IPv6 Address] FE80::2E0:FCFF:FE98:3F54

    [R1]ipv6 route-static :: 0 GigabitEthernet 0/0/0
    [R1]ping ipv6 FE80::2E0:FCFF:FE24:6CBA -i GigabitEthernet 0/0/0
    [R1]ping ipv6 FE80::2E0:FCFF:FE24:6CBB -i GigabitEthernet 0/0/0

WLAN

WLAN WLAN WLANWLAN: 无线局域网，指的是无线技术构建的无线网络，通过 WLAN 技术可以让用户随时随地的接入网络，并且在 WLAN 覆盖的区域内实现自由移动，摆脱有线网...

推荐阅读
记一次仅在 IPv4 环境下访问 IPv6 网络的经历 IP编址 交换网络基础 ARP协议 NAT网络地址转换 数据转发过程

留言区

Notes
数据通信网络
Are You A Robot?