一文读懂IPv6v6地址的配置方式
在数字化浪潮的推动下,互联网正以前所未有的速度发展,而IPv6作为新一代网络协议,以其庞大的地址空间、增强的安全性和灵活的地址配置机制,成为了支撑这一发展的关键技术。本文将深入解析这两种配置方式的工作原理、应用场景及操作流程,带您全面了解IPv6地址配置的方式。
Ipv6地址的配置基础
IPv6使用两种地址自动配置协议,分别为无状态地址自动配置协议(SLAAC)和IPv6动态主机配置协议(DHCPv6)。
SLAAC不需要服务器对地址进行管理,主机直接根据网络中的路由器通告信息与本机MAC地址结合计算出本机IPv6地址,实现地址自动配置;
DHCPv6由DHCPv6服务器管理,用户主机从服务器请求并获取IPv6地址及其他信息,达到地址自动配置的目的。
一、无状态地址自动配置协议(SLAAC)
IPv6无状态地址自动配置协议基于IPv6邻居发现协议(NDP)实现。它依靠设备本身的MAC地址以及网络中的路由器RA信息来完成地址的自动分配,不需要IPv6地址分配服务器保存和管理每个节点的状态信息。主机通过收听路由器发送的路由器通告(RA)报文来获取网络前缀,然后结合自身的接口ID生成IPv6地址。
无状态地址自动配置协议步骤,如图所示:
IPv6无状态地址自动配置不需要服务器参与,配置速度快,使用难度较低,适用于家庭网络或物联网等较小的应用场景。
- IPv6动态主机配置协议(DHCPv)
IPv6动态主机配置协议主要分为DHCPv6有状态自动配置、DHCPv6无状态自动配置和DHCPv6前缀代理三类。
DHCPv6主要由DHCPv6客户端、DHCPv6服务器、DHCPv6中继三个部分构成。
| 角色 | 功能 |
| DHCPv6客户端 | 用于动态获取IPv6地址、前缀或其他网络配置参数。 |
| DHCPv6服务器 | 负责为DHCPv6客户端分配IPv6地址、前缀和其他配置参数。 |
| DHCPv6中继 | 转发来自客户端或服务器的DHCPv6报文,协助DHCPv6客户端和DHCPv6服务器完成地址配置功能。 |
1、DHCPv6有状态自动配置
DHCPv6有状态自动配置是基于动态主机配置协议版本6(DHCPv6)实现的。IPv6地址分配服务器必须保存每个节点的状态信息,并管理这些保存的信息。客户端通过向DHCPv6服务器发送请求报文来获取IPv6地址、前缀和其他网络配置参数。根据网络中的DHCPv6服务器数量和配置方式的不同,主要分为两类:四步交互分配过程和两步交互分配过程。
(1)DHCPv6四步交互过程
四步交互分配过程常用于网络中有多个DHCPv6服务器的情况。
第一步——Solicit(请求)发送:
DHCPv6客户端通过组播发送Solicit报文寻找DHCPv6服务器,可选含Rapid Commit以求快速响应。
第二步——Advertise(通告)接收与选择:
服务器接收到发来的报文后,如果服务器支持客户端的请求,会向客户端回复Advertise报文告知可用资源。
第三步——Request(请求)发送:
客户端向所有服务器发送Request报文,含选定服务器DUID,通知其他服务器停止服务。
第四步——Reply(回复)接收:
被选定的服务器回复Reply,确认资源分配。客户端完成配置。
DHCPv6四步交互分配过程示意图
(2)DHCPv6两步交互过程
第一步——Solicit发送:
DHCPv6客户端通过组播发送Solicit报文,并携带Rapid Commit选项,寻求速配。
第二步——Reply回复:
若服务器支持,则直接返回Reply(携带Rapid Commit选项)报文并分配IPv6地址及配置。

DHCPv6两步交互分配过程示意图
DHCPv6两步交互过程属于DHCPv6有状态自动分配的一种优化方式,常用于网络中只有一个DHCPv6服务器的情况,减少了网络中的报文交互次数,提高了DHCPv6过程的效率。
需要注意的是,当网络中存在多个DHCPv6服务器时,为了防止多个服务器同时回应Reply报文导致的冲突,通常需要配置DHCPv6服务器是否支持两步交互地址分配方式。
2、DHCPv6无状态自动配置过程
DHCPv6无状态自动配置是DHCPv6协议中的一种重要配置方式,它允许IPv6主机在已经通过其他方式(如SLAAC,即无状态地址自动配置)获得IPv6地址的情况下,通过DHCPv6服务器获取除IPv6地址以外的其他网络配置参数。
第一步——Information-Request报文发送:
DHCPv6客户端通过组播向服务器发送Information-Request报文(携带Option Request选项)请求,并指定所需配置。
第二步——Reply接收:
服务器收到Information-Request报文后,为DHCPv6客户端分配网络配置参数,并单播发送Reply报文,完成无状态配置。
DHCPv6无状态交互分配过程示意图
- DHCPv6前缀代理自动配置
DHCPv6前缀代理是一种前缀分配机制,用于层次化网络结构中。利用这种机制,下游网络设备无需手工指定用户侧链路的IPv6地址前缀。它只需向上游网络设备提出前缀分配申请,上游网络设备便会分配合适的地址前缀给下游设备。下游设备获得前缀后,再通过路由通告(RA)将这些前缀传递到与IPv6主机直连的用户链路上,从而实现IPv6【IP地址查询】主机的地址自动配置,并完成整个系统层次的地址布局。通过DHCPv6前缀代理自动配置过程,可以大大提高IPv6网络的部署效率和灵活性,降低网络管理的复杂度和成本。
IPv6动态主机配置协议支持有状态和无状态两种配置方式,由DHCPv6服务器管理地址池,能够满足不同场景的使用需求。更适用于大型网络或复杂环境。
通过本文的探讨,我们不难发现,无论是基于设备本地信息的无状态地址自动配置(SLAAC),还是依赖于服务器管理的DHCPv6协议,都展现出了IPv6在地址配置上的灵活性和高效性。在实际运用中,我们可以根据自己的使用需求灵活选择合适的配置协议。
相关文章:
一文读懂IPv6v6地址的配置方式
在数字化浪潮的推动下,互联网正以前所未有的速度发展,而IPv6作为新一代网络协议,以其庞大的地址空间、增强的安全性和灵活的地址配置机制,成为了支撑这一发展的关键技术。本文将深入解析这两种配置方式的工作原理、应用场景及操作…...
【设计模式】设计模式的八大原则
设计模式的八个原则: 依赖倒置原则: 高层次的代码(稳定)不应该依赖低层次的代码(变化)抽象的代码不应该依赖具体的代码。 开放封闭原则:类模块应该开放扩展的,而其原先的代码尽量封…...
【Github项目推荐】DataLoom
项目推荐 - DataLoom 项目背景 在数据驱动的时代,越来越多的企业和个人用户需要从复杂的数据中提取出高价值的信息。然而,传统的数据处理和分析流程复杂且耗时,需要技术人员的深度参与。那么,有没有一种工具能够简化这一过程&am…...
重磅!布拉德皮特移居法国?据称与他和安吉丽娜朱莉生养的6个孩子有关!皮特一直为自己与孩子们如此亲近却又如此遥远而苦恼
对于那些不知道的人来说,布拉德皮特似乎已经正式离开洛杉矶前往欧洲。虽然这有很多原因,我们将逐一介绍,但主要原因据称与他和前前妻安吉丽娜朱莉所生养的六个疏远的孩子有关。 知情人士告诉《InTouch Weekly》,皮特搬到了法国&a…...
.net MAUI应用生命周期
.NET Multi-platform App UI (.NET MAUI) 应用通常有四种执行状态:“未运行”、“运行中”、“已停用”和“已停止”。 当应用从未运行状态转换为运行状态、从运行状态转换为已停用状态、从已停用状态转换为已停止状态、从已停止状态转换为运行状态,以及…...
Nginx 安装教程
一、安装编译工具及库文件 yum -y install make zlib zlib-devel gcc-c libtool openssl openssl-devel 二、首先要安装 PCRE PCRE 作用是让 Nginx 支持 Rewrite 功能。 1、下载 PCRE 安装包,下载地址: http://downloads.sourceforge.net/project/p…...
vue axios发送post请求跨域解决
跨越解决有两种方案,后端解决,前端解决。后端解决参考Django跨域解决-CSDN博客 该方法之前试着可以的,但是复制到其他电脑上报错,所以改用前端解决 1、main.js做增加如下配置 import axios from axios Vue.prototype.$axios a…...
MIT线性代数
本文链接的原创作者为 浊酒南街https://blog.csdn.net/weixin_43597208 第1讲 MIT_线性代数笔记:第 01 讲 行图像和列图像-CSDN博客 第2讲 MIT_线性代数笔记:第 02 讲 矩阵消元_矩阵first pivot-CSDN博客 第3讲 MIT_线性代数笔记:第 03…...
打工人自救指南!2024年数据恢复工具,清空回收站也能秒回数据
嘿,各位上班的朋友们,有没有手抖或者不小心,把重要的东西给拖到回收站,然后又不小心把回收站清空了?别慌,今天我就来给你们支招,用数据恢复工具,让你们在丢数据的倒霉时候也能找到救…...
MyBatis 缓存机制
分布式系统中不建议使用mybatis缓存机制,建议通过redis来解决数据缓存。 MyBatis 缓存机制包括一级缓存和二级缓存,它们在提高数据库查询效率方面发挥着重要作用。 1. **一级缓存**(Local Cache): - 一级缓存是 M…...
10个神级Python自动化脚本助力轻松工作
大家好,Python自动化简化了日常编程任务,同时更激发了探索创新解决方案的热情。本文将介绍10个精心挑选的自动化脚本,帮助大家提升工作效率和优化操作流程。 1.Speakify Speakify 是专注于语音交互的人工智能助手,可以帮助用户通过语音进行…...
EasyExcel模板导出与公式计算(下)
目录 环境要求 功能预览 需求分析 导入依赖 制作模板 编写代码 格式优化 最终效果 总结 在上一篇 EasyExcel模板导出与公式计算(上)-CSDN博客 文章中我们知道了在若依中使用自带的Excel注解来实现表格数据的导出,并且通过重写相关接…...
Golang序言全面学习-前序
最近看了很多与Golang有关的教程与书籍,也包括bilibili上的教程,各位老师讲解非常详细的,基本涉及了基础篇的方方面面,但总是感觉缺少了一些实战,以及实际经验的传授。实际项目会用到的日志框架、配置管理框架…...
Python世界:文件自动化备份实践
Python世界:文件自动化备份实践 背景任务实现思路坑点小结 背景任务 问题来自《简明Python教程》中的解决问题一章,提出实现:对指定目录做定期自动化备份。 最重要的改进方向是不使用 os.system 方法来创建归档文件, 而是使用 zip…...
PTA 6-10 阶乘计算升级版(详讲)
6-10 阶乘计算升级版 - 基础编程题目集 (pintia.cn)https://pintia.cn/problem-sets/14/exam/problems/type/6?problemSetProblemId742&page0 首先这道题不能用我们之前学过的阶乘计算方法来解决,比如下面这段代码就无法通过全部的样例 void Print_Factorial…...
软件开发人员从0到1实现物联网项目:项目架构的思考
文章目录 前言单体应用足矣摒弃传统的微信对接后期的维护投入上真正的“云”:云托管0服务器免运维免费的CDN和DDoS防护 技术架构小结 前言 因为种种原因,《软件开发人员从0到1实现物联网项目》这个项目的进度停滞了将近一个月。 鉴于该项目的前期开发和…...
Java--集合进阶 Collection,迭代器,lambda表达式
集合体系结构 Collection:单列集合 LIst系列集合:添加的元素是有序、可重复、有索引 Set系列集合:添加的元素是无序、不重复、无索引 Collection集合常用方法 | 方法名 | 说明 || :---…...
STM32G474之DAC
STM32G474分别使用CORDIC硬件和“math.h”的正弦值,从DAC1和DAC2输出。 1、DAC特点 PA4的附加功能为DAC1_OUT1,无需映射,直接将它配置为模拟功能,就可以使用了。 PA6的附加功能为DAC2_OUT1,无需映射,直接将…...
哈希表的底层实现(2)---C++版
目录 链地址法Separate Chaining——哈希桶的模拟实现 超大重点分析: 两种方法对比 由于在上次的哈希表的底层实现(1)---C版已经详细的阐述了相关的结构和原理,哈希表的实现方法主要分为链地址法和开放定址法。开放定址法上次已经实现过了,…...
算法知识点————【LRU算法】
思想:淘汰最久没有使用的 应用场景:手机清后台的时候先清最久没有使用的应用 设计一种数据结构:接收一个 capacity 参数作为缓存的最大容量,然后实现两个 API,一个是 put(key, val) 方法存入键值对,另一个是…...
在四层代理中还原真实客户端ngx_stream_realip_module
一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡(如 HAProxy、AWS NLB、阿里 SLB)发起上游连接时,将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后,ngx_stream_realip_module 从中提取原始信息…...
C++课设:简易日历程序(支持传统节假日 + 二十四节气 + 个人纪念日管理)
名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 专栏介绍:《编程项目实战》 目录 一、为什么要开发一个日历程序?1. 深入理解时间算法2. 练习面向对象设计3. 学习数据结构应用二、核心算法深度解析…...
Caliper 负载(Workload)详细解析
Caliper 负载(Workload)详细解析 负载(Workload)是 Caliper 性能测试的核心部分,它定义了测试期间要执行的具体合约调用行为和交易模式。下面我将全面深入地讲解负载的各个方面。 一、负载模块基本结构 一个典型的负载模块(如 workload.js)包含以下基本结构: use strict;/…...
Proxmox Mail Gateway安装指南:从零开始配置高效邮件过滤系统
💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「storms…...
springboot 日志类切面,接口成功记录日志,失败不记录
springboot 日志类切面,接口成功记录日志,失败不记录 自定义一个注解方法 import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target;/***…...
第一篇:Liunx环境下搭建PaddlePaddle 3.0基础环境(Liunx Centos8.5安装Python3.10+pip3.10)
第一篇:Liunx环境下搭建PaddlePaddle 3.0基础环境(Liunx Centos8.5安装Python3.10pip3.10) 一:前言二:安装编译依赖二:安装Python3.10三:安装PIP3.10四:安装Paddlepaddle基础框架4.1…...
CppCon 2015 学习:Time Programming Fundamentals
Civil Time 公历时间 特点: 共 6 个字段: Year(年)Month(月)Day(日)Hour(小时)Minute(分钟)Second(秒) 表示…...
2.3 物理层设备
在这个视频中,我们要学习工作在物理层的两种网络设备,分别是中继器和集线器。首先来看中继器。在计算机网络中两个节点之间,需要通过物理传输媒体或者说物理传输介质进行连接。像同轴电缆、双绞线就是典型的传输介质,假设A节点要给…...
npm安装electron下载太慢,导致报错
npm安装electron下载太慢,导致报错 背景 想学习electron框架做个桌面应用,卡在了安装依赖(无语了)。。。一开始以为node版本或者npm版本太低问题,调整版本后还是报错。偶尔执行install命令后,可以开始下载…...
CentOS 7.9安装Nginx1.24.0时报 checking for LuaJIT 2.x ... not found
Nginx1.24编译时,报LuaJIT2.x错误, configuring additional modules adding module in /www/server/nginx/src/ngx_devel_kit ngx_devel_kit was configured adding module in /www/server/nginx/src/lua_nginx_module checking for LuaJIT 2.x ... not…...
