IPv6

www.sixxs.net/tools/grh/ula //申请 IPv6 地址

IPv6 技术特点:

地址空间巨大(IPv4 32bit,IPv6 128bit)

报文结构精简

实现自动配置和重新编址

安全特性:Ipsec

增强的 QoS 特性:额外定义了流标签字段,可为应用程序或者终端所用,针对特殊的服务和数据流,分配特定的资源

IPv4 书写格式,采用的是点分十进制,把 32bit 平均分成了 4 个组,每一组 8bit,两种表现形式:

掩码表示法:192.168.1.1 255.255.255.0

前缀表示法:192.168.1.1/24

IPv6 书写格式

采用冒号分 十六 进制,把 128bit 平均分成了 8 组,每一组 16bit,一种表现形式:

前缀表示法:2001:1a2c:0000:0000:7695:abc4:aabb:01c0/64

IPv6 地址格式

网络前缀,相当于 IPv4 中的网络位,IPv6 中最常用的网络前缀长度为 64

接口标识 (接口 ID),相当于 IPv4 中的主机位,存在两种产生方式

EUI-64:叫做扩展的唯一标识符,是根据设备网卡的 MAC 地址,产生 IPv6 后 64bit

产生方式:1、一个 MAC 地址为 :0012-3400-ABCD

2、在中间插入 FFFE :0012-34FF-FE00-ABCD

3、写成 IPv6 地址格式:0012:34FF:FE00:ABCD

4、将第 7bit 进行反转 :0212:34FF:FE00:ABCD

反转:即如果为 0 置为 1,如果为 1 置为 0

当前缀不满足 64bit 的时候,而 EUI-64 只能产生 64bit 接口ID,剩下接口 ID 部分将会用 0 进行填充

当前缀超过 64bit 的时候,华为中不能这样配置

当接口没有 MAC 地址的时候,系统将会通过软件的方式自动产生

缺点:可能存在攻击者通过二层 MAC 反推出 IPv6 地址的接口ID

IPv6 地址缩写格式:

在一个 IPv6 地址中只能存在一个 ": :",不能存在多个,不然会导致设备无法判断 ": :" 代表了多少个组

IPv4 和 IPv6 的报文格式

IPv6 固定基本报文头部 40 字节

Version:版本号,长度为 4bit。对于 IPv6,该值为 6

Traffic Class:流类别,长度为 8bit。等同于 IPv4 中的 ToS 字段,表示 IPv6 数据报的类或优先级,主要应用于 QoS

Flow Label:流标签,长度为 20bit。IPv6 中的新增字段,用于区分实时流量,不同的流标签 + 源地址可以唯一确定一条数据流,中间网络设备可以根据这些信息更加高效率的区分数据流

Payload Length:有效载荷长度,长度为 16bit。有效载荷是指紧跟 IPv6 报头的数据报的其它部分(即扩展报头和上层协议数据单元)

Next Header:下一个报头,长度为 8bit

Hop Limit:跳数限制,长度为 8bit。该字段类似于 IPv4 中的 Time to Live 字段,它定义了 IP 数据报所能经过的最大跳数。每经过一个路由器,该数值减去 1,当该字段的值为 0 时,数据报将被丢弃

Source Address:源地址,长度为 128bit。表示发送方的地址

Destination Address:目的地址,长度为 128bit。表示接收方的地址

IPv6 地址前缀

::/128

作用:用于标识一个没有实际 IPv6 地址的接口,类似于 IPv4 的 0.0.0.0

::1/128

作用:类似于 IPv4 的 127.0.0.0

FE80::/10

作用:使运行了 IPv6 协议的链路两端,天生就具有三层通讯功能,无需像 IPv4 地址一样必须配置 IPv4 地址才能通讯

作用范围:只局限于本地链路

产生方式:动态产生:当接口开启 IPv6 功能之后,将会自动使用 EUI-64 方式产生 LLA 地址

人为配置:ipv6 address fe80: :2 link-local

2001::/16 IANA 组织从 2001::/16 开始进行全球单播地址的分配

2002::/16 用于 6to4 隧道中,属于 IPv6 向 IPv4 过渡技术的一种

3FFE::/16 公共 IPv6 研究所,已经被废除

范围:2000::/3 ~ 3FFF:FFFF....

范围:FC00::/7,类似于 IPv4 中的私网地址

范围:FF00::/8

作用:用来标识一组接口,发往组播地址的数据将被转发给帧听该地址的多个设备

IPv6 组播 MAC

组播IPv6报文的目的IP为组播IPv6地址,同样,目的MAC为组播MAC地址

组播MAC的前16bit为"33:33",是专门为IPv6组播预留的MAC地址前缀。后32bit从组播IPv6地址的后32bit直接映射而来

例如:组播 IPv6 地址为 :FF02: :5

所以此组播 MAC 地址为 :33-33-00-00-00-05

IPv6 被请求节点组播地址

当一个接口配置了一个 IPv6 单播地址之后,将会自动加入到一个被请求节点组播地址中

加入的被请去节点组播地址的:FF02: :1: :FF00:0 /104 前104bit 固定,后 24bit 复制单播地址的后 24bit,行成被请求节点组播地址

作用:用于邻居发现机制和地址重复检测功能,被请求节点组播地址的有效范围为本地链路范围

ICMPv6 协议

用于向源节点传递报文转发的信息或者错误,邻居发现,无状态地址配置,重复地址检测,PMTU发现等

NDP 协议

NDP:邻居发现协议

地址解析:

两台设备之间,一台设备发送 NS 请求报文,报文中包含自己的 IP 地址和自己的 MAC 地址以及对方的 "被请求节点组播地址" 和 目的 MAC 为组播 MAC,另一台设备收到 NS 请求报文之后,回应 NA 报文,报文含有自己的 IP 地址和 MAC 地址,以此实现链路之间的建立和通信

好处:不适用 ARP(只能工作在以太网的基础上),不使用广播的方式,地址解析在三层完成

NS:邻居请求,类似于 IPv4 中的 ARP 请求(组播),type:135

NA:邻居通告,类似于 IPv4 中的 ARP 响应(单播),type:136

重复地址检测:DAD

确保网络中无两个相同的单播地址,所有地址都要做 DAD,使用 NS 和 NA 完成 DAD 交互过程

NDP 报文类型:

RS:路由请求报文

RA:路由器通告报文

NS:邻居请求报文

NA:邻居通告报文

DHCPv6:有状态的地址自动配置

SLAAC:无状态的地址自动配置

有状态:需要保存和维护客户端和 IP 地址之间的映射关系

无状态:无需保存和维护客户端和 IP 地址之间的映射关系

RS:路由器请求

RA:路由器通告,发送时间间隔,在华为设备中由最大发送间隔和最小发送间隔同时控制

RA 消息中携带接口所有全球单播地址的前缀信息,其他主机收到后,使用该前缀结合 EUI-64 的方式进行地址的自动配置

经常使用的命令:接口下:IPv6 nd ra ... 使用 ? 查看

IPv6 中 MTU 最小值为 1280 bytes,发送值的大小根据链路中的最小 MTU 决定

IPv6 过渡技术

双栈 Dual Stack:设备同时支持 IPv4 和 IPv6,且接口同时配置 IPv4 和 IPv6 地址

6over4 手动隧道:两块 IPv6 区域,中间负责通信的领域为 6over4,且配置 6over4 的是双栈路由器,在 IPv6 的报头上添加 IPv4 报头

AR1 配置

AR类似

6over4 GRE 隧道:两块 IPv6 区域,中间负责通信的领域为 6over4 GRE隧道,且配置 6over4 的是双栈路由器,在 IPv6 的报头上添加 IPv4 报头和 GE 报头

和上述 6over4 的区别,多了一层 GRE 字段,应用上,GRE 隧道可以提供对 GRE 隧道存活的检测机制,即keeplive,也能提供 GRE key 认证

配置区别将类型:tunnel-protocol ipv6-ipv4 修改为 tunnel-protocol gre 即可

6to4 隧道

6to4 中继

实现 6to4 网络和 IPv6 普通网络互通

转发的路由器不一定是 6to4 路由器,但是下一跳必须是 6to4 路由器

AR1

AR2

IPv6 基础配置

Huawei\] ipv6 \[Huawei-GigabitEthernet1/0/0\] ipv6 enable \[Huawei-GigabitEthernet1/0/0\] ipv6 address { ipv6-address prefix-length \| ipv6-address/prefix-length }

每个接口下最多可配置 10 个全球单播地址

Huawei-GigabitEthernet0/0/0\] ipv6 address auto { global \| dhcp } \[Huawei-GigabitEthernet0/0/0\] ipv6 address ipv6-address link-local \[Huawei-GigabitEthernet0/0/0\] ipv6 address auto link-local \[Huawei\] display ipv6 interface \[ interface-type interface-number \| brief

Huawei\] display ipv6 neighbors \[Huawei-GigabitEthernet0/0/0\] undo ipv6 nd ra halt \[Huawei\] ospfv3 \[ process-id

OSPFv3 支持多进程,一台路由器上启动的多个 OSPFv3 进程之间由不同的进程号区分

Huawei-ospfv3-1\] router-id router-id \[Huawei-GigabitEthernet1/0/0\] ospfv3 process-id area area-id

案列:配置一个双栈网络

配置 R1 R2 的接口 IP 地址和 OSPF,R1为例

R1\]ipv6 \[R1\]interface GigabitEthernet 1/0/0 \[R1-GigabitEthernet1/0/0\]ipv6 enable \[R1\]interface GigabitEthernet 2/0/0 \[R1-GigabitEthernet2/0/0\]ipv6 enable \[R1\]interface GigabitEthernet 1/0/0 \[R1-GigabitEthernet1/0/0\]ip address 10.0.12.1 24 \[R1-GigabitEthernet1/0/0\]ipv6 address 2001:DB8:1::1 64 \[R1\]interface GigabitEthernet 2/0/0 \[R1-GigabitEthernet2/0/0\]ip address 192.168.1.254 24 \[R1-GigabitEthernet2/0/0\]ipv6 address 2001:DB8:2::1 64 \[R1\]ospf 1 router-id 10.0.1.1 \[R1-ospf-1\]area 0 \[R1-ospf-1-area-0.0.0.0\]network 10.0.12.0 0.0.0.255 \[R1-ospf-1-area-0.0.0.0\]network 192.168.1.0 0.0.0.255 配置 OSPFv3 使得 PC1 和 PC2 可以通过 IPv6 网络通信,R1 为例 \[R1\]ospfv3 \[R1-ospfv3-1\]router-id 10.0.1.1 \[R1-ospfv3-1\]quit \[R1\]interface gigabitethernet1/0/0 \[R1-gigabitethernet1/0/0\]ospfv3 1 area 0 \[R1\]interface gigabitethernet2/0/0 \[R1-gigabitethernet2/0/0\]ospfv3 1 area 0

相关推荐
海上彼尚1 小时前
Nodejs也能写Agent - 6.基础篇 - Agent
前端·人工智能·后端·node.js
IpdataCloud1 小时前
IP查询工具怎么选?在线API vs IP离线库:精度、速度、成本、隐私全对比
服务器·网络·数据库
Harm灬小海1 小时前
【云计算学习之路】学习Centos7系统:Linux磁盘管理
linux·运维·服务器·学习·云计算
2501_940041741 小时前
纯前端实战:5个高复杂度业务与交互场景
前端
艾莉丝努力练剑1 小时前
【Linux网络】Linux 网络编程:HTTP(三)HTTP 协议原理
linux·运维·服务器·网络·c++·http
renke33641 小时前
写给前端的 CANN-torchtitan-npu:昇腾PyTorch Titan适配到底是啥?
前端·人工智能·pytorch·cann
小皮蛋儿子1 小时前
mac 微信双开
linux·服务器·apache
Gauss松鼠会1 小时前
GaussDB(DWS) 资源监控Topsql
java·网络·数据库·算法·oracle·性能优化·gaussdb
minji...1 小时前
Linux 网络基础之网络IP层(十一)私有IP地址和公网IP地址,运营商和全球网络,理解公网
linux·服务器·网络·nat·内网·公网·运营商