IPv6地址格式
- 总长度12比特,分8组,每组4个十六进制数的形式,每组用:分隔。
- 包括网络前缀和接口标识两部分,不再有子网掩码、网络号
- ipv6地址可以使用::压缩,但只能由一个::,::代表多个0,用于压缩地址长度。例如:2002::123:1,::就是多个0
IPv6单播地址类型:
全球单播地址:
全球单播地址(公网地址)前三位一定是001,/3代表最多到3FFF。可以理解成最大可用网络位
意思就是全球单播地址的主机位一定是64位,后面的主机位就是标识主机,如果想划分那就是对前面的64位操作
链路本地地址:
只在本地链路的节点之间使用,不会被路由(不同的链路上可以重复),用来自动地址配置、邻居发现、路由器发现等等,每个ipv6接口都必须具备的地址,且默认自动配置
唯一本地地址:
其实就是类似ipv4的内网地址,ipv4有三段192.168/16、10/8、172.16~172.31/16,只能在私网内使用,自行配置网段
单播地址规划案例:
全球单播地址:
唯一本地地址(私网):
IPv6组播地址类型
标识一组接口,发往组播地址的数据将被转发给侦听该地址的多个设备(和ipv4一致)
范围:FF00::/8
只要接口配置了单播地址就会自动加入组播的组,如果想找到该设备只要知道对端单播地址然后通过这个规律找到组播组,就能发现它。
IPv6任播地址类型
任播地址和全球单播地址无任何区别,主要用于冗余、备份作用。可以理解为多台服务器配置一样的全球单播地址,用户访问时优先访问最近的那台服务器。
华为配置命令:IPv6 add 2222::2 anycast
IPv6地址配置方法和命令
- 具体有三种方法实现配置全球单播地址:
- 静态:
- 由PC全手动指定地址,根据ISP给予路由器的网络前缀自行分配接口ID(也就是网络位)
- SLAAC 无状态地址自动配置
- ipv6无需依赖dhcp获取ip地址等信息,通过SLAAC协议实现。路由器下发的RA数据包A标志位为1(具体看抓包)表示使用无状态地址自动配置实现配置单播地址。
- 华为默认关闭RA,需要命令手动开启:
- undo ipv6 nd ra halt
- 实现步骤:
- 操作系统根据EUI-64规范生成64位的设备标识符也就是接口ID(默认情况下是由mac地址转换成接口id,windows为了系统安装考虑默认开启随机方式生成,可以通过命令关闭),通过接口ID加上网络前缀fe80,得到链路本地地址。
- PC会发送DAD(重复地址检测)包到邻居组播组,以确保没有其他设备使用相同的地址。
- PC将它生成的链路本地地址发送到路由器(路由器通过ff02::2收到信息),并发送RS(路由请求 ICMPv6数据包)来请求路由器的实际前缀。路由器收到请求后,会发送RA(路由通告)数据包回应,并用回复的实际前缀替换掉fe80,PC开始使用收到的新地址作为单播地址。
- 静态:
作者:Zleoco,如若转载,请注明出处:https://www.zleoco.com/?p=2155