首页 > 其他分享 >IPv6(五)

IPv6(五)

时间:2024-09-20 20:19:19浏览次数:3  
标签:报文 地址 RA 邻居 IPv6 路由器

文章目录

IPv6协议

ICMPv6

IPv6的基础协议之一

在IPv4中,Internet 控制报文协议 ICMP 向源节点报告关于向目的地传输IP数据包过程中的错误和信息。它为诊断、信息和管理目的定义了一些消息,如:目的不可达、数据包超长、超时、回应请求和回应应答等。

在IPv6中,ICMPv6除了提供ICMPv4常用的功能之外,还是其它一些功能的基础,如邻接点发现、无状态地址配置(包括重复地址检测)、PMTU发现等。

ICMPv6的协议类型号(即IPv6报文中的Next Header字段的值)为58

  • Type:表明消息的类型,0至127表示差错报文类型,128至255表示消息报文类型。
  • Code:表示此消息类型细分的类型。
  • Checksum:表示ICMPv6报文的校验和。
  • type:
    0-127表示差错报文类型
    128-255表示消息报文类型
    128 : Request
    129 : Reply
    133 : RS //寻找路由器的报文
    134 : RA //路由器发送的报文
    135 : NS //类似于ARP-Request报文
    136 : NA //类似于ARP-Reply报文
    137 : ICMPV6重定向

NDP邻居发现

邻居发现协议NDP(Neighbor Discovery Protocol)是IPv6协议体系中一个重要的基础协议

邻居发现协议替代了IPv4的ARP(Address Resolution Protocol)和ICMP路由器发现(Router Discovery),定义了使用ICMPv6报文实现地址解析,跟踪邻居状态,重复地址检测,路由器发现以及重定向等功能。


邻居通告报文:

  • 邻居请求报文NS:类型字段值为135
  • 邻居通告报文NA:类型字段值为136
  • 在路由器发现中使用了两种ICMPv6报文:路由器通告和路由器请求报文:
  • 路由器通告RA:类型字段值为134
  • 路由器请求RS:类型字段值为133
  • 重定向使用了一种新的ICMPv6报文:重定向报文。重定向报文类型字段值为137




地址解析

类似于IPv4中的ARP协议

  • 基于ICMPv6实现
  • 包括NS报文和NA报文
#PC1 发送NS消息(135)请求
Source IP:自己的IPv6地址                 目的IP:PC2的请求节点组播地址#(物理接口的地址可以推出来请求节点组播地址)
Source MAC:自己的MAC                    目的MAC:33开头的组播MAC地址
target address:PC1的IP地址
Option:自己的MAC地址

#PC2 回应NA消息(136)应答,回复的时候发送的是单播报文
Source IP:自己的IPv6地址                 目的IP:PC1的IPv6地址
Source MAC:自己的MAC                    目的MAC:PC1的MAC
target address:PC2的IP地址
Option:自己的MAC地址

IPv6定义了五种邻居状态

Empty状态为空白状态

  • 未完成(Incomplete)
  • 可达(Reachable)
  • 陈旧(Stale)
  • 延迟(Delay)
  • 探查(Probe)
#下面以A、B两个邻居节点之间相互通信过程中A节点的邻居状态变化为例(假设A、B之前从未通信),说明邻居状态迁移的过程。
1.A先发送NS报文,并生成缓存条目,此时邻居状态变为Incomplete。
2.若B回复NA报文,则邻居状态由Incomplete变为Reachable,如固定时间后未收到NA报文则邻居状态由Incomplete变为Empty,即删除表项。此状态可以通信
3.邻居链路空余固定时间后,邻居状态由Reachable变为Stale,即未知是否可达。
4.如果在Reachable状态,A收到B的非请求NA报文,且报文中携带的B的链路层地址(NAC地址)和表项中不同,则邻居状态马上变为Stale。
5.在Stale状态若A要向B发送数据,则邻居状态由Stale变为Delay,并发送NS请求。如果有NA应答,变成Reachable。
6.再经过一段固定时间后,邻居状态由Delay变为Probe,期间若有NA应答,则邻居状态由Delay变为Reachable。
7.在Probe状态,A每隔一定时间间隔发送单播NS,发送固定次数后,有应答则邻居状态变为Reachable,无应答则邻居状态变为Empty,即删除表项。

dis ipv6 neighbors    //查看IPv6邻居状态

debugging ipv6 nd    //开启Debug测试
terminal debugging    //终端显示Debug信息
terminal monitor    //监控显示Debug信息

DAD重复地址检测

IPv4使用免费ARP进行重复地址的检测、IPv6使用DAD进行地址冲突的检测

  • 基于ICMPv6实现

  • 包括 NS 报文和 NA 报文

  • 在进行DAD检测是,一个IPv6单播地址在分配给一个接口之后且通过重复地址检测之前称为试验地址(Tentative Address)。此时该接口不能使用这个试验地址进行单播通信,但是仍然会加入两个组播组:ALL-NODES组播组和实验地址所对应的Solicited-Node组播组。

  • IPv6重复地址检测技术和IPv4中的免费ARP类似:节点向一个自己即将使用的试验地址所在Solicited-Node组播组发送一个以该试验地址为请求的目标地址的NS报文,如果收到某个其他站点回应的NA报文,就证明该地址已被网络上使用,节点将不能使用该实验地址通讯,如果没有收到某个其他站点发送的NA报文,那么这个试验地址转换为正式地址就可以使用了

#DAD检测过程
1、PC1的IPv6地址为2001::1为新配置的地址,即试验地址,PC1向2001::1所在的 Solicited-Node 组播组发送一个以 2001::1 为请求的目标地址的NS报文进行冲突检测,由于2001::1报文的源地址为未指定地址,PC2收到该NS报文后,有两种处理方法
	(1)、如果PC2发现2001::1是自身的一个试验地址,则PC2放弃使用该地址作为接口地址,并且不会发送NA报文
	(2)、如果PC2发现2001::1是自己已经在使用的地址,PC2会向该地址所在的All-Node组播组发送一个NA报文,消息中包含			2001::1。之后PC1收到消息之后就会停止使用该地址



路由发现

  • 基于ICMPv6实现
  • 发现与本地链路相连的路由器
  • 获取与地址自动配置相关的前缀和其他配置参数
  • 包括RA和RS报文

在IPv6中,IPv6地址可以支持无状态的自动配置,即主机通过某种机制获取网络前缀信息,然后主机自己生成地址的接口标识部分。路由器发现功能是IPv6地址自动配置功能的基础,主要通过以下两种报文实现:

  • 路由器通告RA(Router Advertisement)报文:每台路由器为了让二层网络上的主机和路由器知道自己的存在,定时都会组播发送RA报文,RA报文中会带有网络前缀信息,及其他一些标志位信息。RA报文的Type字段值为134。
  • 路由器请求RS(Router Solicitation)报文:很多情况下主机接入网络后希望尽快获取网络前缀进行通信,那么此时主机可以立刻发送RS报文,网络上的路由器将回应RA报文。RS报文的Type字段值为133。


    RA消息的源IP:自己 的Link-local地址 目的地址是FF02::1
#当存在以下情况时,忽略RA发送的前缀
1、ICMPv6里的Option字段的Flag中的Auto未置位
2、前缀与已有地址前缀重复(包括Link-local地址)
3、RA报文选项中 Preferred lifetime 时间大于 Valid lifetime
4、前缀长度与接口ID长度之和不等于128位
#除以上情况外,主机获得前缀同时也获取一些相关的时间参数
1、Preferred time 发起通讯的有效时间
2、valid lifetime 原有通讯的有效时间
#主机会周期新的发送RA报文,并根据此报文来更新自己的时间参数




ICMPv6中的Flag字段

M位置1:表示有状态–DHCPv6
M位置0:表示无状态–RA消息自动获取
O位置1:表示通过无状态获取到 IP 地址,但是通过有状态的方式获取到其他信息、比如DNS




ICMPv6----RA消息中的Flag字段:

  1. Cur Hop Limit:64----该字段用于帮助主机完成跳数限制。当PC使用该RA通告的前缀构建IPv6地址后,该PC发送的IPv6报文的跳数限制被设置为该值(64)
  2. Managed address configuration----M位默认为0,0时收到该RA的主机使用RA中包含的IPv6前缀用于无状态地址自动配置
    ----使用如下命令,可将该值设置为1----ipv6 nd autoconfig managed-address-flag
    ----当该值为1时,收到该RA的主机将采用有状态自动配置,也就是DHCPv6的方式来获取IPv6地址
  3. Other Configuration,默认为0,表示主机不应该使用有状态自动配置机制来配置除了IPv6地址外的其他参数
    ----使用命令:ipv6 nd autoconfig other-flag----将该值置1,则主机需使用DHCPv6来配置除了IPv6地址外的其他信息,如DNS,域名等,但是IPv6地址还是无状态自动获取的
  4. Router Lifetime:1800----单位是秒,主机将路由器视为缺省路由器的时间。该计时器到计数为0时,该路由器将不会出现在主机的缺省网关列表中



    对于M位和O位,配置强制置1命令之后需要重新使能一下接口来进行实现

Author:DC

标签:报文,地址,RA,邻居,IPv6,路由器
From: https://blog.csdn.net/Jerry_BLOG/article/details/142397677

相关文章

  • 【IPV6从入门到起飞】5-2 IPV6+Home Assistant(ESP32+MQTT+DHT11+BH1750)传感器采集上
    IPV6+HomeAssistant[ESP32+MQTT+DHT11+BH1750]传感器采集上传监测1背景2实现效果3HomeAssistant配置3-1MQTT配置3-2yaml配置3-3加载配置4ESP32搭建4-1开发环境4-2工程代码5实现效果1背景在上一小节【IPV6从入门到起飞】5-1IPV6+HomeAssistant(搭建......
  • 搭建ipv6并发代理池
    声明本文章中所有内容仅供学习交流,抓包内容、敏感网址、数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除!学习目标ounter(lineipv6代理池学习前置环境配置要求linux系统。我是pve下的ubuntugolang的环境我......
  • BitComet比特彗星解决端口阻塞问题/黄灯问题,如何使用IPv6实现公网访问
    分析根据其本身的描述,就可以知道,黄灯的本质是端口对外网不公开。因此我们需要做以下工作:拥有一个外网IP/公网IP一般都是不给分配IPv4的,所以我们可以使用IPv6,这个默认都是开的。一般光猫默认的设置就是ipv4/ipv6,两种都开放使用。开放对应端口的防火墙说起来简单,实际上......
  • 网站支持IPv6和不支持有什么区别?
    在当今数字化时代,互联网已经成为人们生活和工作中不可或缺的一部分。随着互联网的不断发展,IPv6作为新一代互联网协议,正逐渐被广泛应用。网站支持IPv6和不支持IPv6究竟有什么区别呢?一、IPv6的背景与优势IPv6是“InternetProtocolVersion6”的缩写,即互联网协议第六版。它是为了......
  • IPv6的优势分析
    本文分享自天翼云开发者社区《IPv6的优势分析》,作者:没烦恼IPv6的优势分析1.更大的地址空间IPv6中IP地址的长度为128位,其地址容量则达到了2^128个,远远大于IPv4地址容量,足以满足日益增长的互联网用户以及未来物联网地址的分配需求。2.报文结构更精简IPv4的报文长度不固定,且有一......
  • IPv6协议——互联网通信协议第六版
    引言  IPv6是互联网升级演进的必然趋势、网络技术创新的重要方向、网络强国建设的基础支撑。近些年,随着我国大力推动IPv6规模部署和应用,目前中国的IPv6渗透率已超过70%。对于车载以太网来说,目前IPv4是车载IP通信的主流协议,但随着车辆的智能化、网联化程度不断提高,IPv6协议应......
  • IPv6基于策略的地址分配
    IPv6基于策略的地址分配RA的周期性发送使用的是组播方式,但是针对RS的回复使用组播和单播两种可能;如果RA都是以组播方式发送,那么同一个广播域下的所有终端都可以收到,如果要基于终端mac/link-local地址来控制分配策略,则应该使用单播方式回复,以限制RA被接收的范围。关闭周期性......
  • 如何开启让设备获取到IPv6?
    前言现在许多小伙伴拉的宽带基本上都是光猫进行拨号的。这个就导致很多小伙伴不知道如何让设备获取IPv6。但好像还有小伙伴分不清光猫拨号和光猫桥接的区别,其实它们的区别就在于让设备直连光猫的网口或者光猫的Wi-Fi,就会出现两种情况:如果设备能上网,那就是光猫拨号模式;如......
  • [计算机网络] IPv6
    1IPv6概述引言近期突发奇想,能不能用IPv6的公网地址,给家里的NAS做内网穿透。技术上是可行的。只是必须确保是IPv6的公网地址。大学学的IPv6的知识,早就抛到九霄云外了,故此需要重新学习,并记录之。1.1诞生的由来:32位的IPv4数量受限,已分配殆尽192.168.1.1,这......
  • IPv6无状态地址自动配置(SLAAC)-常见问题
    SLAAC如何工作?主机在启动或接口UP后,发送路由器祈求(RouterSolicitation,RS),路由器收到此消息后,回复路由器宣告(RouterAdvertisement,RA)。此宣告可能是单播给主机的,也可能是多播的,取决于路由器当前的状态(见下文)。路由器在RA中设置M位和O位,针对这两个标志位,解释如下:M位:“Managedadd......