Ipv6地址分为单播地址和组播地址、任播地址,组播地址不能作为发送方的源地址,这里介绍单播地址
单播地址又分为:全球单播地址、链路本地地址和唯一本地地址
终端可以同时拥有全球单播地址和唯一本地地址,链路本地地址三种地址,全球单播地址用于访问Internet网络,唯一本地地址作为内部网络通信的地址,链路本地地址用于同网段内通信的地址
下面以全球单播地址为例介绍地址配置流程
Ipv6地址的配置分为静态配置、无状态自动获取和有状态自动获取三种方式
静态配置:字面上意思,手工配上去的地址
无状态自动获取:这种方式通过NDP协议来实现,终端接入到Ipv6网络,获取前缀信息,自己生成接口ID,这样就有了Ipv6地址
有状态自动获取:这种方式同样是动态获取
这里说下有状态和无状态的区别是什么。
有状态和无状态说的是会不会记录分配出去的地址状态,有状态说的是通过DHCPv6实现的,通过地址池记录每一个地址的状态,是分配出去了,还是说是空闲的状态;而无状态就是不会记录地址的状态,是路由器下发前缀,终端生成接口ID,然后形成Ipv6地址,而且采用无状态方式,只能分发地址信息,如果希望分发其他的信息,比如DNS就需要以来DHCPv6来实现了
下面拿一个拓扑出来介绍下,有状态和无状态
无状态配置
由于ensp的PC看不到无状态现象,所以我这里通过桥接到物理机网卡方式来实现,这里用PC连接是为了画出当前的拓扑图
interface GigabitEthernet0/0/0
ipv6 enable
ipv6 address 2000:10::FFFF/64
undo ipv6 nd ra halt
#
这里可以看到,路由器发送RA消息,通告给这个网段中,里面包含了两个option,一个是source link-layer(就是路由器的mac地址)和prefix information(前缀信息),通过前缀可以知道网段是多少,终端会以路由器的链路本地地址作为网关地址,路由器的链路本地地址的接口ID生成方式为EUI-64范围生成,所以路由器会通告mac
这个场景里是路由器主动发布RA消息,当然终端也可以通过发送RS消息,主动去请求路由器的前缀信息
有状态配置
下面介绍有状态方式,也就是DHCPv6
先说下报文类型
Solicit:相当于Ipv4当中的Discover报文,用来寻找网络中是否有DHCP服务器,不同的是Ipv6这取消了广播,这里是组播发送
Advertise:相当于Ipv4当中的offer报文,服务器用来回复dhcp客户端的请求
Request:作用和Ipv4相同,如果dhcp客户端收到了多个dhcp服务器的advertise报文,使用request报文通知这个网段,已经选择了特定的服务器
Reply:作用的Ipv4当中的ack相同