计算机网络———ipv6简解

文章目录

    • 1.前言:
    • 2. ipv6简单分析:
      • 2.1.地址长度对比
      • 2.2. ipv6包头分析
      • 2.3. ipv6地址的压缩表示:
      • 2.3. NDP:
      • 2.4. ipv6地址动态分配:

1.前言:

在这里插入图片描述

因特网地址分配组织)宣布将其最2011年2月3日,IANA (Internet Assigned Numbers Authority,的468万个IPv4地址平均分配到全球5个RIR (Regionallnternet Registry,区域互联网注册管理机构),此后IANA再没有可分配的IPV4地址

可能有小伙子问了为什么新买服务器或者装宽带依旧有ipv4呢?
❗️ 因为只是INNA分完了,但是下层机构或者运营商并没有分完,由于现在机构加以节省,商用或者特殊用途还是能分得到的。

❗️❗️❗️❗️突击检查,ipv4有多少个地址?

IPv4地址总数是2^32,即约42.9亿个。

在这里插入图片描述

由于有一些地址被保留为特殊用途,实际上可用于分配的IPv4地址数量比总数少。

当然,这并不能解决ipv4不够用的问题,那么为了解决ipv4地址枯竭问题,引入了ipv6
在这里插入图片描述

2. ipv6简单分析:

下面简单分析下ipv6的结构。以便于了解ipv6的特点以及优势。

2.1.地址长度对比

项目特点最大ip
ipv42^32个255.255.255.255(10进制)
ipv62^128个f*32(16进制)

那么可以明显看出ipv6的总容量是ipv6的79,228,162,514,264,337,593,543,950,336(2^96) 倍,几乎不可能分的完。那么最大的长度问题就解决了。

2.2. ipv6包头分析

我们可以通过ipv4对比,可以很清楚的了解为什么改进,改进的目的是什么。
在这里插入图片描述在这里插入图片描述

我们可以看出ipv6删除了首部长度,分组相关的内容

ipv6变化目的
删除Identification,·Flags,Fragment Offset精简包头,网络层不拆包
删除options,padding精简包头,payload length,next header功能取代
新增Flow Label标识数据包类型,中间设备可以高效区分数据流
变化 Traffic Class和Tos功能相似,用于qos。
变化Hop Limit类似ttl,包跳数限制
变化 Next Header类似协议protocal,0为尾包,该字段同时实现了协议控制和部分拓展的功能。

ipv6拓展包头的长度不受限制

2.3. ipv6地址的压缩表示:

即便ipv6使用十六进制表示也要八组这么多

IPv6 地址的压缩表示是一种简化和缩写的方式,用于更紧凑地表示较长的 IPv6 地址。IPv6 地址由 128 位构成,通常以 8 个 16 位的块(每个块使用四个十六进制数字表示)表示。IPv6 地址的压缩表示通过省略一些连续的零块,以及使用 :: 符号来表示零块,从而使地址更短。

2001:0db8:0000:0042:0000:8a2e:0370:7334
=>
2001:db8:0:42::8a2e:370:7334

😄 一个地址只能压缩一次,且必须压缩最长的字段。

2.3. NDP:

  • 地址解析(Address Resolution): 类似于IPv4中的ARP,IPv6中的NDP用于将目标IPv6地址解析为对应的链路层地址(通常是MAC地址)。

  • 邻居发现(Neighbor Discovery): NDP允许节点发现其附近的IPv6邻居。这包括确定邻居是否仍然可达,以及发现新邻居。节点可以通过发送Neighbor Solicitation和Neighbor Advertisement消息进行邻居发现。

  • Router发现: NDP允许IPv6节点在同一链路上发现路由器。通过Router Advertisement和Router Solicitation消息,节点可以了解到可用的IPv6路由器,并配置其IPv6地址。

  • 重定向(Redirect): NDP支持重定向消息,允许节点更新其路由表,以便将数据包发送到更合适的下一跳。

  • Prefix Discovery: NDP还用于发现链路上可用的IPv6前缀,以便节点能够自动配置其IPv6地址。

  • NDP通过使用ICMPv6(Internet Control Message Protocol version 6)消息来实现上述功能。它在IPv6协议栈的数据链路层和网络层之间起到桥梁的作用,使IPv6节点能够在链路层和网络层之间进行有效的通信和协同工作。

2.4. ipv6地址动态分配:

  1. 有状态分配
    在这里插入图片描述

dhcpv6,故名思意,和dhcp差不多,需要部署dhcpv6服务器,如dns

由dhcp服务器统一下发ip地址好处是便于统一管理。
2. 无状态分配
在这里插入图片描述

由路由器周期性通知ipv6前缀,拿到前缀的客户机可以根据本地硬件地址动态生成唯一的ipv6地址

好处是路由器没有过高的功能要求,客户机配置简单方便,坏处是难以获取过多的信息。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Sentinel浅层介绍(上)

一、概述 Sentinel是阿里开源的一款面向分布式、多语言异构化服务架构的流量治理组件。 主要以流量为切入点,从流量路由、流量控制、流量整形、熔断降级、系统自适应过载保护、热点流量防护等多个维度来帮助开发者保障微服务的稳定性。 二、核心概念 1、资源 资…

MATLAB Simulink和S7-1200PLC MOBUSTCP通信

MATLAB Simulink和SMART PLC OPC通信详细配置请查看下面文章链接: MATLAB和西门子SMART PLC OPC通信-CSDN博客文章浏览阅读749次,点赞26次,收藏2次。西门子S7-200SMART PLC OPC软件的下载和使用,请查看下面文章Smart 200PLC PC Access SMART OPC通信_基于pc access smart的…

97.qt qml-自定义Table之实现ctrl与shift多选

我们之前实现了:93.qt qml-自定义Table优化(新增:水平拖拽/缩放自适应/选择使能/自定义委托)-CSDN博客 实现选择使能的时候,我们只能一行行去点击选中,非常麻烦,所以本章我们实现ctrl多选与shift多选、 所以在Table控件新增两个属性: 1.实现介绍 ctrl多选实现原理:当我…

AWS实战(一)-创建S3 存储桶

1)登录AWS账号,选择服务—>存储—>S3。 2)查看存储桶列表 3)点击"创建存储桶"创建bucket。 4)设置跨域 点击编辑,修改跨域设置即可。

轻松搭建短域名短链接服务系统,可选权限认证,并自动生成证书认证把nginx的http访问转换为https加密访问,完整步骤和代码

轻松搭建短域名短链接服务系统,可选权限认证,并自动生成证书认证把nginx的http访问转换为https加密访问,完整步骤和代码。 在互联网信息爆炸的时代,网址复杂而冗长,很难在口头告知他人,也难以分享到社交媒体…

为什么我学了几天 STM32 感觉一脸茫然?

为什么我学了几天 STM32 感觉一脸茫然? 刷到过b站的zhihui君吧,去看他的回答,他的第一块开发板是arduino,这种级别的人物,在国内也是大神级了,最早学电子方向也是用的arduino。最近很多小伙伴找我&#xff…

gRPC 的原理 介绍带你从头了解gRPC

gRPC 的原理 什么是gRPC gRPC的官方介绍是:gRPC是一个现代的、高性能、开源的和语言无关的通用 RPC 框架,基于 HTTP2 协议设计,序列化使用PB(Protocol Buffer),PB 是一种语言无关的高性能序列化框架,基于 HTTP2PB 保…

Java获取Jar、War包路径,并生成可编辑修改的本地配置文件

前言 本地的可修改配置文件的编写理应是一个很常用的功能,但由于数据库的存在,它鲜少被提及,大多数我们直接存储到数据库中了。 以至于现今,除了没接触数据库的新手时常使用它以外,它没有太多的出场机会。 也因此&am…

浅谈C++重载、重写、重定义

C重载、重写、重定义 重载、重写、重定义对比一、重载(overload)二、重写 / 覆盖(override)三、重定义 / 隐藏(redefining) * 为什么在虚函数中不能使用 static 关键字?动态绑定(Dyn…

3.6 Windows驱动开发:内核进程汇编与反汇编

在笔者上一篇文章《内核MDL读写进程内存》简单介绍了如何通过MDL映射的方式实现进程读写操作,本章将通过如上案例实现远程进程反汇编功能,此类功能也是ARK工具中最常见的功能之一,通常此类功能的实现分为两部分,内核部分只负责读写…

【刷题专栏—突破思维】LeetCode 138. 随机链表的复制

前言 随机链表的复制涉及到复制一个链表,该链表不仅包含普通的next指针,还包含random指针,该指针指向链表中的任意节点或空节点。 文章目录 原地修改链表 题目链接: LeetCode 138. 随机链表的复制 原地修改链表 题目介绍&#xf…

Vue3-shallowRef 和 shallowReactive函数(浅层次的响应式)

Vue3-shallowRef 和 shallowReactive函数(浅层次的响应式) shallowRef函数 功能:只给基本数据类型添加响应式。如果是对象,则不会支持响应式,层成也不会创建Proxy对象。ref和shallowRef在基本数据类型上是没有区别的…

IDEA 高分辨率卡顿优化

VM设置优化 -Dsun.java2d.uiScale.enabledfalse 增加该条设置,关闭高分切换 https://intellij-support.jetbrains.com/hc/en-us/articles/115001260010-Troubleshooting-IDE-scaling-DPI-issues-on-Windows​intellij-support.jetbrains.com/hc/en-us/articles/1…

【Spring】依赖注入方式,DI的方式

这里写目录标题 1. setter注入在一个类中注入引用类型在一个类中注入简单类型 2. 构造器注入在一个类中注入引用类型在一个类中注入简单类型 3. 依赖注入方式选择4. 依赖自动装配按类型注入按名称注入 5. 集合注入 1. setter注入 在一个类中注入引用类型 回顾一下之前setter注…

一个开源的汽修rbac后台管理系统项目,基于若依框架,实现了activiti工作流,附源码

文章目录 前言&源码项目参考图: e店邦O2O平台项目总结一、springboot1.1、springboot自动配置原理1.2、springboot优缺点1.3、springboot注解 二、rbac2.1、概括2.2、三个元素的理解 三、数据字典3.1、概括与作用3.2、怎么设计3.3、若依中使用字典 四、工作流—…

基于PI+重复控制的并网逆变系统谐波抑制策略模型

微❤关注“电气仔推送”获得资料(专享优惠) PI重复控制简介: 重复控制这一新型控制理论最早于出现日本学术界,其目的是为了用于解决质子加速器跟踪精度的问题。Yamamoto Y 等人提出了重复控制数学基础的内模原理,在控…

Filter和ThreadLocal结合存储用户id信息

ThreadLocal并不是一个Thread,而是Thread的局部变量。当使用ThreadLocal维护变量时,ThreadLocal为每个使用该变量的线程提供独立的变量副本,所以每一个线程都可以独立地改变自己的副本,而不会影响其它线程所对应的副本。ThreadLoc…

基于R语言平台Biomod2模型的物种分布建模与可视化分析

!](https://img-blog.csdnimg.cn/84e1cc8c7f9b4b6ab60903ffa17d82f0.jpeg#pic_center)

python+django+mysql个人博客项目部署(VMware部署)

目录 一、Vmware新建win7虚拟机 二、组件/软件安装 2.1 安装python3 2.2 更新pip 2.3 安装pycharm 2.4 安装django 2.5 win安装mysql 三、配置数据库 3.1 安装sqlite客户端 3.2 db.sqlite3导出为myblog.sql 3.3 Heidisql连接本地sql 四、部署项目 4.1 安装模块 4.2 尝试运行 …

Pytorch torch.normal()的用法

该函数原型如下: normal(mean, std, *, generatorNone, outNone) 该函数返回从单独的正态分布中提取的随机数的张量,该正态分布的均值是mean,标准差是std。 用法如下:我们从一个标准正态分布N~(0,1),提取…