ipv6基础

  • 地址

    • 前缀+子网+主机位

    • PI法则=3.14

      • 前缀:3个16位

      • 子网:1个16位

      • 接口ID:4个16位

  • 地址分类

    • 未指定地址

      • ::/128 ,类似于0.0.0.0

    • 本地回环地址

      • ::1/128 ,用于本地测试,类似于127.0.0.1

    • 本地链路地址(lionk-local address ,LLA)

      • FE80::/10 (1111 1110 10) 局限于本地链路,使运行了IPV6协议的链路两端,天生具有三层通讯能力,无需像ipv4接口一样必须配置ipv4地址才可以。

        • 产生方式:

          • 1.动态产生,接口使能ipv6后,用eui-64产生

          • 2.接口上手动配置:ipv6 address fe80::2 link-local

        • 用途:

          • ripng、ospfv3使用该地址作为协议报文的源地址,路由表的下一条也是该地址。

    • 可聚合全球地址

      • 2000::/3 ~ 3FFF:FF... 前3位是001

      • 2001::/16 IANA开始分配的

      • 2002::/16 6to4隧道

      • 3FFE::/16 公共ipv6研究所,已被废除

    • 本地站点地址

      • FEC0::/10 已被废除!

    • 唯一本地地址

      • FC00::/7 相当于ipv4的私网地址,只能在本地网络内部转发

    • 组播地址

      • FF00::/8

      • 预定义组播地址

        • Node-local

          • FF01::1所有节点的组播地址

          • FF01::2所有路由器的组播地址

        • Link-local 保留了一部分ipv4的味道

          • FF02::1 所有节点的组播地址 224.0.0.1

          • FF02::2 所有路由器的组播地址 224.0.0.2

          • FF02::1:FFXX:XXXX Solicited-Node组播地址 被请求节点的组播地址

          • FF02::5 所有ospf路由器地址 224.0.0.5

          • FF02::6 所有ospf的DR路由器地址 224.0.0.5

          • FF02::D 所有PIM路由器组播地址

      • 组播地址与mac地址的映射

        • 33-33-组播ipv6地址的后32bit

      • 当一个接口配置了一个ipv6单播地址后,会自动加入到一个被请求节点的组播地址中,该地址主要用于邻居发现和重复地址检测。

        • FF02::1:FF00:0/104 前104位固定,后24位复制单播地址的后24位

        • 用人话解释一下什么叫做被请求节点的组播地址:

          • ipv6取消了ARP报文和广播,要想拿到目的主机的mac地址,只有到处发送组播报文了。只有和目的主机后24位相同的才能收到这个组播报文,其他设备收到这个组播帧时在网卡层面就被丢弃。

    • 任播地址

      • 纸上谈兵阶段,可以把单播地址配置成任播地址,允许多台服务器配置相同的ip地址,提供相同的服务,以就近访问。

  • 邻居发现协议NDP 使用icmpv6报文

    • RS路由器请求 133类型的icmpv6报文

      • 请求ipv6地址

    • RA路由器通告 134类型的icmpv6报文

      • 周期发送ipv6地址

      • 发送间隔由最大发送间隔和最小发送间隔同时控制。

        • 最小发送间隔默认200s,最大发送间隔默认600s

      • RA消息的flag字段

        • M:Managed address configuration 默认为0,表示用SLAAC配置ip地址。如果为1,用DHCPv6配置ip地址

        • O:Other-Config-Flag,默认为0,表示除了ip地址,不用DHCPv6配置其他参数。如果为1,需用DHCPv6配置其他信息。

        • P:Default Router Preference,产生默认路由的优先级,默认为00,medium。

        • 前缀Option里的flag字段

          • L:On-Link Flag,默认为1,当前缀option中on-link=1时,接收主机除了产生ipv6地址之外,还会产生一条该前缀的直连路由。置0时只会根据前缀产生ipv6地址。

          • A:Autonomous Addr-conf FLag,默认为1,表示可以用该前缀进行无状态自动配置

    • NS 邻居请求 135类型的icmpv6报文 类似于ARP请求

      • 目的mac地址是组播mac地址

      • 目的ip是被请求节点的组播地址

      • 地址解析在三层完成,可以使用三层安全机制(如ipsec)避免地址解析攻击。

    • NA 邻居通告 136类型的icmpv6报文 类似于ARP响应

    • Redirect 重定向 137类型的icmpv6报文

  • ipv6邻居表

    • display ipv6 neighbors

    • 相当于ipv4的arp表

    • win用命令 netsh interface ipv6 show neighbors

  • 邻居状态追踪,邻居不可达检测(Neighbor Unreachable Detection,NUD)

    • 邻居状态

      • Empty,空,没有通讯之前

      • Incomplete,正在进行地址请求,已发送NS,还没收到NA

      • reachable,已收到NA报文,认为这个地址可达。如果NA报文没有指定Reachable Time,默认可达30s

      • stale,陈旧,无法确定到邻居的可达性。陈旧状态默认停留1200s

        • 1.Reachable Time这段时间内没有流量通过

        • 2.收到了邻居发来的非请求NA报文(这个NA报文不是我问了邻居之后邻居给我的,如链路层地址改变,ipv6地址改变),这时邻居可以到达本机,但本机不一定能到达邻居

      • delay,延迟,当设备访问stale节点时,在这个状态停留5秒

        • 如果5秒内收到邻居可达性的确认,进入Reachable状态

          • 邻居可达性的确认:一去一回的证明

            • 1.针对NS收到NA

            • 2.收到上层协议的hints,如tcp的ack

        • 如果5秒未收到确认,进入probe状态

      • probe,探查,delay的5s后,每隔1s发送单播NS,发送MAX_Unicast_Solicit(3次)个请求后,再等1s

        • 有应答,reachable

        • 无应答,empty,删除表项

    • ipv6邻居关系优于ipv4的arp,ipv6可以确保双向可达,但ipv4只能等老化

  • DAD 重复地址检测

    • 一个地址在通过DAD检测前,叫做试验性地址(tentative地址),接口还不能用这个地址来正常通讯,但会加入被请求节点的组播地址组(FF02::1::FF00:FFFF)

    • 加入被请求节点的组播地址后,发送一个NS报文。如果组中有地址相同的,会响应一个NA,就证明该地址已被使用,节点将不能用。

    • 所有单播ipv6地址都要进行DAD,包括LLA

    • 类似于ipv4的免费arp

  • DHCPv6 有状态地址自动配置

  • SLAAC (StateLess Address Auto Configuration)无状态地址自动配置

    • 什么是无状态:如dhcp服务器,分配ipv4地址后,产生租约信息,这是有状态。无状态是无需保存客户端和ip地址直接的映射关系。

    • 无需服务器,更加轻量

    • 配置

      • AR1 [AR1-GigabitEthernet0/0/0]undo ipv6 nd ra halt //关掉抑制ipv6路由通告,周期发送ra消息

      • AR3

    • 如果配置多个全球单播地址,发送的RA消息就会有多个前缀,收到RA消息的也会配置多个全球单播地址

    • 存在以下情况时忽略RA发送的前缀:

      • RA报文中的“auto”(地址自动配置位)未置位

      • 前缀与已有地址前缀重复(包括LLA)

      • RA报文的优选生存期(preferred lifetime)> 有效生存期(valid lifetime)

      • 前缀长度与接口id长度之和不等于128位

    • 相关时间参数

      • preferred lifetime 发起新通讯的有效时间

      • valid lifetime 原有通讯的有效时间

    • 主机周期性收到RA报文,并据此报文来更新自己的时间参数。

    • 生存时间

      • DAD→preferred lifetime(7天,优选生存期)→deprecated(不优选生存期)→无效

      • preferred lifetime + deprecated = valid lifetime (30天)

  • 重定向

    • Redirect报文告知主机,更好的转发路径。

  • PMTU发现

    • PMTU路径上接口的最小接口MTU。

    • 探测路径上最小的MTU,按这个MTU分片。优化整体传输效率。

    • PMTU最小为1280B

    • MTU = 源主机路径上MTU

    • while(没到目的主机){

      MTU构建一个报文,发送给下一跳..直到有更小MTU的路径,回送给主机icmp错误消息packet too bigMTU = 更小的MTU}
  • ipv6过渡技术

    • 双栈Dual Stack

      • 设备支持双栈,同时配置ipv4和ipv6地址。优先ipv6。

    • 6 over 4 手动隧道

      • 解决ipv6孤岛:站点是v6,网络是v4

    • 6 over 4 GRE隧道

      • 可以开启gre对隧道存活的检测,或者一些基本认证

    • 6 to 4 隧道

      • 采用6to4专用地址 2002:ipv4::/48

    • ISATAP(Intra-Site Automatic Tunnel Addressing Protocol)隧道

      • 6 over 4 自动隧道的一种,采用ISATAP专用地址

      • 人话:将ISATAP路由器配置成网关,所有ipv6访问都走这里。

    • NAT64

      • 转换网关连接ipv4网络和ipv6网络,互相转换ip包头

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/663296.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【云原生】kubernetes中pod的生命周期、探测钩子的实战应用案例解析

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…

正则匹配优化:匹配排除多个字符串的其他字符串

(^entity|^with|...)\w优化 (?!entity|with|has|index|associations|input)\w(?!): 匹配排除项 效果 继续优化 匹配会过滤掉带有关键字的字段,在过滤的时候是可以加上尾部结束匹配符的 效果:

JS-Lodash工具库

文档:Lodash Documentation orderBy函数:根据条件进行排序 注:第一个是要排序的数组,第二个是根据什么字段进行排序,第三个是排序的方式(desc倒序) 安装方式:Lodash npm i lodash…

【码银送书第二十期】《游戏运营与出海实战:策略、方法与技巧》

市面上的游戏品种繁杂,琳琅满目,它们是如何在历史的长河中逐步演变成今天的模式的呢?接下来,我们先回顾游戏的发展史,然后按照时间轴来叙述游戏运营的兴起。 作者:艾小米 本文经机械工业出版社授权转载&a…

平衡二叉树(oj题)

一、题目链接: https://leetcode.cn/problems/balanced-binary-tree/submissions/536133365 二、思路 调用深度计算函数,得到每次当前的根结点的左右子树的深度。比较每次得到的左右子树深度之差 如果当前根节点的左右子树的深度差大于1,说明不是平衡…

03-树2 List Leaves(浙大数据结构PTA习题)

03-树2 List Leaves 分数 25 全屏浏览 切换布局 作者 陈越 单位 浙江大学 Given a tree, you are supposed to list all the leaves in the order of top down, and left to right. Input Specification: Each input file contains one test c…

mac 安装java jdk8 jdk11 jdk17 等

oracle官网 https://www.oracle.com/java/technologies/downloads/ 查看当前电脑是英特尔的x86 还是arm uname -m 选择指定版本,指定平台的安装包: JDK8 JDK11的,需要当前页面往下拉: 下载到的安装包,双击安装&#x…

Linux系统编程(六)线程同步机制

本文目录 前述:同步机制的引入及概念一、线程的互斥锁1. 定义2. 互斥锁常用方法3. 相关函数(1)头文件(2)创建互斥锁(3)销毁互斥锁(4)加锁(5)解锁 …

Java Sort 方法的使用(包含Arrays.sort(),Collections.sort()以及Comparable,Comparator的使用 )

目录 Comparable && Comparator的使用: Comparable: Comparator: Arrays.sort()的使用: 升序排序: 降序排序: 自定义排序方法: 在日常的刷题或开发中,很多时候我们需要对数据进行排序,以达到我…

【C++修行之道】类和对象(二)类的6个默认成员函数、构造函数、析构函数

目录 一、类的6个默认成员函数 二、构造函数 2.1 概念 2.2 特性 2.2.5 自动生成默认构造函数 不进行显示定义的隐患: 2.2.6 自动生成的构造函数意义何在? 两个栈实现一个队列 2.2.7 无参的构造函数和全缺省的构造函数都称为默认构造函数&#x…

ELK 使用 metricbeat监控数据

IP功能版本192.168.140.153elk-18.13.4192.168.140.153metricbeat8.13.4192.168.140.156elk-28.13.4192.168.140.156metricbeat8.13.4192.168.140.159logstash8.13.4192.168.140.159kibana8.13.4 一、安装ELK 参考文档: https://download.csdn.net/download/weix…

【免费Web系列】JavaWeb实战项目案例四

这是Web第一天的课程大家可以传送过去学习 http://t.csdnimg.cn/K547r 多表操作&员工列表查询 1. 多表关系 关于单表的操作(单表的设计、单表的增删改查)我们就已经学习完了。接下来我们就要来学习多表的操作,首先来学习多表的设计。 项目开发中&#xff0…

2023年全球DDoS攻击现状与趋势分析

天翼安全科技有限公司副总工程师、运营保障部总经理陈林表示,2023年扫段攻击频次快速增长,成为网络基础设施面临的最大威胁。为躲避防御,低速扫段攻击成为主流达到攻击总数的73.19%;43.26%的C段攻击持续时间小于5分钟,…

面试题vue+uniapp(个人理解-面试口头答述)未编辑完整....

1.vue2和vue3的区别(vue3与vue2的区别(你不知道细节全在这)_vue2和vue3区别-CSDN博客)参考 Vue3 在组合式(Composition )API,中使用生命周期钩子时需要先引入,而 Vue2 在选项API&am…

车载以太网的未来:OPEN Alliance下17个技术委员会的最新进展与行业影响(下)

从上篇介绍来看,TC1-TC8大多数处于暂停或完成状态。而TC9-TC17在2023年都有不同程度的进展,让我们继续探索藏在其中的车载以太网的发展和挑战。 TC9 Automotive Ethernet Channel & Components(in progress) TC9的目标是为通…

基础9 探索图形化编程的奥秘:从物联网到工业自动化

办公室内,明媚的阳光透过窗户洒落,为每张办公桌披上了一层金色的光辉。同事们各自忙碌着,键盘敲击声、文件翻页声和低声讨论交织在一起,营造出一种忙碌而有序的氛围。空气中氤氲着淡淡的咖啡香气和纸张的清新味道,令人…

【PHP项目实战训练】——laravel框架的实战项目中可以做模板的增删查改功能(2)

👨‍💻个人主页:开发者-曼亿点 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 曼亿点 原创 👨‍💻 收录于专栏&#xff1a…

linux centos nfs挂载两台服务器挂载统一磁盘目录权限问题

查看用户id id 用户名另一台为 修改uid和gid为相同id,添加附加组 usermod -u500 -Gwheel epms groupmod -g500 epms

SQL Server定期收缩日志文件详细步骤——基于SQL Server 2012

SQL Server定期收缩日志文件详细步骤 一、环境配置1、查看数据库的属性2、文件设置3、备份模式4、查看收缩配置5、查看收缩选项 二、编写作业计划1、选择新建作业2、常规配置3、步骤4、输入内容5、脚本详解6、新建计划7、输入名称、选择执行时间8、查看测试9、查看测试结果 一、…

Mistral发布首个代码生成人工智能模型Codestral 但不可用于商业活动

由微软支持、估值高达 60 亿美元的法国人工智能初创公司 Mistral发布了首个用于编码的生成式人工智能模型,名为 Codestral。Codestral 与其他代码生成模型一样,旨在帮助开发人员编写代码并与之交互。 Mistral 在一篇博文中解释说,它接受过 80…