文章目录
主机获得前缀及其它参数过程
- 当存在以下情况时忽略RA发送的前缀:
RA报文选项中的“auto”未置位。
前缀与已有地址前缀重复(包括link-local地址)。
RA报文选项中的“preferred lifetime”时间大于 “ valid lifetime ”。
前缀长度与接口ID长度之和不等于128位。 - 除以上情况外,主机获得前缀同时也获得一些相关时间参数:
“preferred lifetime”=发起新通讯的有效时间。
“ valid lifetime ”=原有通讯的有效时间。 - 主机会周期性的收到RA报文,并据此报文来更新自己的时间参数
几个生存时间
- 当地址处于Deprecated状态,地址不能主动的发起连接只能是被动的接受连接,这也是为了保证上层应用而设计的,但是过了valid lifetime时间地址就变为invalid,这时任何连接就会down掉。
ICMPv6 RA消息中的Flags字段
ICMPv6 RA消息中IPV6前缀信息的Flags字段
IPV6地址配置
IPV6地址配置:默认自动配置2种
1、全状态自动配置:动态主机配置协议DHCP实现了IP地址的自动配置。
2、无状态自动配置:
- 获得链路本地地址:链路本地地址前缀1111 1110 10后加网卡MAC地址,产生一个链路本地地址并发出ICMPv6请求,确认唯一性。
- 获得可聚合全球单播地址:向本地链路中所有组播ICMPv6路由器请求,主机获得单播前缀001后加自己的接口ID,自动配置单播地址
DHCPv6
IPv6动态主机配置协议DHCPv6(Dynamic Host Configuration Protocol for IPv6)是针对IPv6编址方案设计,为主机分配IPv6地址/前缀和其他网络配置参数
地址配置方法
目前IPv6地址的分配方法有以下几种:
- 手动配置。手动配置IPv6地址/前缀及其他网络配置参数(DNS、NIS、SNTP服务器地址等参数)。
- 无状态自动地址分配。由接口ID生成链路本地地址,再根据路由通告报文RA(Router Advertisement)包含的前缀信息自动配置本机地址。
- 有状态自动地址分配,即DHCPv6方式。DHCPv6又分为如下两种:
-
DHCPv6有状态自动分配。DHCPv6服务器自动分配IPv6地址/PD前缀及其他网络配置参数(DNS、NIS、SNTP服务器地址等参数)
-
DHCPv6无状态自动分配。主机IPv6地址仍然通过路由通告方式自动生成,DHCPv6服务器只分配除IPv6地址以外的配置参数,包括DNS、NIS、SNTP服务器等参数。
-
DHCPv6-自动配置技术
自动配置技术能够完成以下功能:赋予主机的IPv6地址参数
地址前缀
接口ID
赋予主机其它的相关参数
路由器地址
跳数
MTU
DHCPv6地址配置过程
接口初始化
接口产生“tentative“的link-local地址 。(tentative:测试)
对“tentative”地址进行地址重复检测(DAD)
接口产生link-local地址,具备IP连接能力
由Router Advertisement报文的M比特决定采用何种自动配置技术
无状态自动配置(stateless autoconfiguration)-利用RA信息通告的前缀生成地址
有状态自动配置(stateful autoconfiguration)-必须通过DHCP获得,称为有状态
获得全局地址
DHCPv6-有状态自动分配
IPv6主机通过有状态DHCPv6方式获取IPv6地址和其他配置参数(例如DNS
服务器的IPv6地址等)。
DHCPv6服务器为客户端分配地址/前缀的过程分为两类:
• DHCPv6四步交互分配过程
• DHCPv6两步交互快速分配过程
四步交互常用于网络中有多个DHCPv6服务器的情况。
DHCPv6客户端首先通过组播发送Solicit报文来定位可以为其提供服务的DHCPv6服务器,在收到多个DHCPv6服务器的Advertise报文后,根据DHCPv6服务器的优先级选择一个为其分配地址和配置信息的服务器,接着通过Request/Reply报文交互完成地址申请和分配过程。
DHCPv6服务器端如果没有配置使能两步交互,无论客户端报文中是否包含Rapid Commit选项,服务器都采用四步交互方式为客户端分配地址和配置信息
两步交互常用于网络中只有一个DHCPv6服务器的情况。DHCPv6客户端首先通过组播发送Solicit报文来定位可以为其提供服务的DHCPv6服务器,DHCPv6服务器收到客户端的Solicit报文后,为其分配地址和配置信息,直接回应Reply报文,完成地址申请和分配过程。
两步交换可以提高DHCPv6过程的效率,但在有多个DHCPv6服务器的网络中,多个DHCPv6服务器都可以为DHCPv6客户端分配IPv6地址,回应Reply报文,但是客户端实际只可能使用其中一个服务器为其分配的IPv6地址和配置信息。为了防止这种情况的发生,管理员可以配置DHCPv6服务器是否支持两步交互地址分配方式。
DHCPv6服务器端如果配置使能了两步交互,并且客户端报文中也包含Rapid Commit选项,服务器采用两步交互方式为客户端分配地址和配置信息。
如果DHCPv6服务器不支持快速分配地址,则采用四步交互方式为客户端分配IPv6地址和其他网络配置参数
ipv6 nd autoconfig managed-address-flag命令用来设置RA报文中的有状态自动配置地址的标志位。
ipv6 nd autoconfig other-flag命令用来设置RA报文中的有状态自动配置其他信息的标志位
M标志为1时表示主机可以使用有状态地址自动配置(例如DHCP等);
O标志为1时表示主机可以使用有状态地址自动配置(例如DHCP等)机制产生除地址以外的参数;
DHCPv6-无状态自动分配
IPv6节点可以通过DHCPv6无状态方式获取配置参数(包括DNS、SIP、SNTP等服务器配置信息,不包括IPv6地址)
dhcp实验
请参考AR接入路由器产品文档
DHCP服务端配置
操作步骤
1.启动DHCP服务
<Huawei> system-view
[Huawei] sysname R1
[R1] dhcp enable
2.配置DHCPv6服务器
[R1] dhcpv6 pool pool1
[R1-dhcpv6-pool-pool1] address prefix fc00:3::/64
[R1-dhcpv6-pool-pool1] dns-server fc00:3::1
[R1-dhcpv6-pool-pool1] excluded-address fc00:3::1
[R1-dhcpv6-pool-pool1] quit
3.配置接口的IPv6功能
[R1] ipv6
[R1] interface gigabitethernet 0/0/0
[R1-GigabitEthernet0/0/0] ipv6 enable
[R1-GigabitEthernet0/0/0] ipv6 address fc00:3::1/64
4.接口使能DHCPv6服务器功能
[R1-GigabitEthernet0/0/0] dhcpv6 server pool1
5.配置发布R1消息的M和O标志位,DHCPv6客户端通过R1消息学习到IPv6网关的路由。
[R1-GigabitEthernet0/0/0] undo ipv6 nd ra halt
[R1-GigabitEthernet0/0/0] ipv6 nd autoconfig managed-address-flag
[R1-GigabitEthernet0/0/0] ipv6 nd autoconfig other-flag
[R1-GigabitEthernet0/0/0] quit
[R1] quit
6.验证配置结果
# 在路由器上使用display dhcpv6 pool命令用来查看DHCPv6地址池信息。
<R1> display dhcpv6 pool pool1
DHCPv6 pool: pool1
Address prefix: FC00:3::/64
Lifetime valid 172800 seconds, preferred 86400 seconds
0 in use, 0 conflicts
Excluded-address FC00:3::1
1 excluded addresses
Information refresh time: 86400
DNS server address: FC00:3::1
Conflict-address expire-time: 172800
Active normal clients: 0
# 在路由器上使用display dhcpv6 server命令用来查看DHCPv6服务器信息。
<R1> display dhcpv6 server
Interface DHCPv6 pool
GigabitEthernet0/0/0 pool1
配置文件
RouterA的配置文件
#
sysname RouterA
#
ipv6
#
dhcp enable
#
dhcpv6 pool pool1
address prefix FC00:3::/64
excluded-address FC00:3::1
dns-server FC00:3::1
#
interface GigabitEthernet0/0/0
ipv6 enable
ipv6 address FC00:3::1/64
undo ipv6 nd ra halt
ipv6 nd autoconfig managed-address-flag
ipv6 nd autoconfig other-flag
dhcpv6 server pool1
#
return
配置DHCPv6客户端示例
操作步骤
1.启动DHCP服务
<Huawei> system-view
[Huawei] sysname R3
[R3] dhcp enable
2.配置接口的IPv6功能
[R3] ipv6
[R3] interface gigabitethernet 0/0/0
[R3-GigabitEthernet0/0/0] ipv6 enable
[R3-GigabitEthernet0/0/0] ipv6 address auto link-local
3.使能DHCPv6客户端功能
# 使能GE0/0/0接口的DHCPv6客户端功能。
[R3-GigabitEthernet0/0/0] ipv6 address auto dhcp
4.验证配置结果
# 在Router A上使用display dhcpv6 client命令用来查看DHCPv6客户端配置情况。
<R3> display dhcpv6 client
GigabitEthernet0/0/0 is in stateful DHCPv6 client mode.
State is BOUND.
Preferred server DUID : 000300060819A6CDA894
Reachable via address : FE80::A19:A6FF:FECD:A897
IA NA IA ID 0x00000051 T1 43200 T2 69120
Obtained : 2020-08-25 09:15:54
Renews : 2020-08-25 21:15:54
Rebinds : 2020-08-26 04:27:54
Address : FC00:3::2
Lifetime valid 172800 seconds, preferred 86400 seconds
Expires at 2020-08-27 09:15:54(172795 seconds left)
# 在Router A上使用display dhcpv6 client statistics命令用来查看DHCPv6客户端报文的统计信息。
<R3> display dhcpv6 client statistics
Message statistics of interface GigabitEthernet0/0/0:
Message Received
Advertise 1
Reply 1
Reconfigure 0
Invalid 0
Message Sent
Solicit 1
Request 1
Confirm 0
Renew 0
Rebind 0
Release 0
Decline 0
Information-request 0
配置文件
R3的配置文件
#
sysname R3
#
ipv6
#
dhcp enable
#
interface GigabitEthernet0/0/0
ipv6 enable
ipv6 address auto link-local
ipv6 address auto dhcp
#
return