IPv6

1.IPv6的基本认识

IPv4 位数是 32位,4字节,能够提供的IP地址大约是42亿,但你知道的,如今一个人都不止一个IP地址,看看如今设备的数量及发展速度就知道,所以有了IPv6,IPv6能够提供大量的地址.

  • IPv6:128位,16字节,能够提供的IP地址听老师以及教材都谈及过,地球上的沙子都不放过,我也是佩服

    具体是多少个IP地址呢?

  • 2128 个可提供的IP地址,这大概是3.4*1038 这么多.

IPv6的地址格式

  • IPv6使用128位地址,相比IPv4的32位地址更大。IPv6地址采用冒号分隔的八组四位十六进制数表示,如2001:0db8:85a3:0000:0000:8a2e:0370:7334。
  • IPv6地址中可以使用双冒号(::)表示一组或多组连续的0,以简化地址表示。例如,2001:0db8::1 表示 2001:0db8:0000:0000:0000:0000:0000:0001。

2.IPv6的头部格式

  • 对比IPv4:取消了校验和字段,本身IP校验和字段其实感觉就挺鸡驻的.现在大部分路由器都不怎么启用这个功能了,同时还取消了分片机制这个字段,还有可选字段也取消了.

嗯,其余字段作用功能基本一样,现在来理解一下

  1. 通行量号(Traffic Class):8bit,和IPv4的服务分区(TOS)差不多一个意思,用于表述数据包的一些流量要求,具体一点就是什么吞吐量,延迟的
  2. 流标号(Flow Label):20bit,这个字段属于特有的了,用于标识特定的数据流,通常用于实现服务质量(QoS)和流量标记。(这个字段可用可不用,这是我查到的资料,根据操作系统,网络设备也有关)
  3. 有效数据长度(Payload Length):16比特,标识数据部分的长度,单位字节.和IPv4的总长度字段功能基本一直.
  4. 下一个首部(Next Heade):8bit,这个字段表示紧随IPv6报文的下一个协议是什么,比如TCP,UDP,ICMPv6,和IPv4协议字段中的协议字段基本功能一样.
  5. 跳数限制(Hop Limit):8bit,这个字段表示网络上经过的最大跳数,就跟IPv4中的TTL字段一样,每经过一跳,跳数-1.

3.IPv6地址的结构

在IPv6地址中,还可以有一些特殊用途的地址类型:

  • 单播地址(Unicast Address):用于标识单个接口的地址。
  • 多播地址(Multicast Address):用于标识一组接口,数据包将被复制并发送到该组中的所有接口。
  • 任播地址(Anycast Address):用于标识一组接口中的任意一个接口,数据包将被路由到距离最近的任一接口。

此外,还有保留地址用于特定的用途,如环回地址(Loopback Address)和链路本地地址(Link-Local Address)等。

回环地址 0000...0(128位) ::1/128
本地地址 1111110..... FC00::/7
链路本地地址 1111111010... FE80::/10
多播地址 11111..... FF00::/8
  • 本地地址:相当于IPv4中的内网的私有地址,可在一个网络下通信,因为在一个子网下,比如什么192.168.X开头的,还是10.开头的,能明白大致含义就行.

  • 单播地址:上述表格里没有,也就是除了这些地址外的地址,相当于IPv4中的公网地址,也就是不会重复,其实这些地址的用法上和IPv4的用法上本质是一样的.

  • 多播地址:相当于IPv4的组播地址.在IPv4中,组播地址一般都用D类地址来表示,也就是224.0.0.0开头,而IPv6也有这种表示.

  • 链路本地地址:在IPv4中其实没有明确的规定,在同一链路单播通信,不经过路由器就可以使用链路本地地址.

    链路与内网:个人感觉其实是对内网的一个细分,因为内网的主机随着IPv6的地址分配,其实这个内网下的主机数就变多了,这时候如果没有层次的划分,内网里的主机数也会显得很臃肿,链路就好比每个房间里的人都共用一个链路,或者说一栋楼里的都用一个链路,链路一般的划分是根据交换机,数据链路层嘛,这样一个链路的人们一般来说一定是一个内网下的人.

  • 回环地址:127.0.0.1.....这个就不多说了.

接下来放出大图:方便理解链路本地与本地地址的区别:

IPv6的基本认识的更多相关文章

  1. App 审核由于 IPv6 网络问题被拒

    昨天 提交App Store 的时候被拒了 We discovered one or more bugs in your app when reviewed on iPhone running iOS ...

  2. iOS 支持 IPv6

    苹果的规定:2016年6月1日提交到App Store必须支持IPv6-only网络. 官方文档:https://developer.apple.com/library/mac/documentati ...

  3. 中大东校小米路由器mini实现inode上网,ipv6 wifi【中大】【东校】【inode】【ipv6】

    还有不到4个月就要毕业了,前几天半夜没事捣鼓小米路由没想到竟然实现了wifi的ipv6. 正好又安利了同学一台小米路由mini,从刷机到inode到ipv6全搞了一遍. 这里将教程写出来,服务学弟妹. ...

  4. IPv6进阶

    IPV6报文部分字段介绍 1.没有校验和字段:优点:当TTL减少时,不需要重新处理,相对于IPV4能减少处理的时间:缺点:必须在上层包含校验和2.下一个报文:可指向扩展报文:(大部分节点不处理和查看大 ...

  5. iOS-不用网线搭建IPv6网络测试环境

    前言 从6月1日开始苹果要求之后审核的项目必须支持iPv6,如果不支持将被拒绝,掘金最近一次审核被就被拒绝了....理由为下: Apps are reviewed on an IPv6 network ...

  6. 通过ipv6访问 g o o g l e

    Google.Youtube.Facebook等均支持IPv6访问,IPv4网络的用户大部分都无法访问,比如Gmail,Google Docs等等各种相关服务.而该类网站大部分均已接入IPv6网络,因 ...

  7. CentOS7中禁用IPV6

    helps from: https://linux.cn/article-4935-1.html vi /etc/sysctl.conf net.ipv6.conf.all.disable_ipv6 ...

  8. IPV6入门篇

    引言 由于互联网的快速发展与普及,原有的IPV4地址已不能满足网络用户的需求,虽然NAT可以缓解IPV4地址的耗尽,但NAT破坏了网络环境的开放.透明以及端到端的特性,因此IPV6地址协议应运而生.I ...

  9. 【ipv6惹的祸】curl 超时

    偶然发现 最近在公司日志平台 总是可以看到很多关于php curl的错误信息 Operation timed out after 0 milliseconds with 0 out of 0 byte ...

  10. 在Linux下禁用IPv6的方法小结

    在Linux下禁用IPv6的方法小结--http://www.jb51.net/LINUXjishu/335724.html 这篇文章主要介绍了在Linux下禁用IPv6的方法小结,禁用IPv6的操作 ...

随机推荐

  1. 使用poi-tl导出word文件的几个技巧

    1.前言   Poi-tl提供了基于word模板文件导出word文件的功能.文档地址:http://deepoove.com/poi-tl/.   用下来,总体感觉还是很方便的.但使用过程,有几个细节 ...

  2. Java 设计模式实战系列—工厂模式

    在 Java 开发中,对象的创建是一个常见的场景,如果对象的创建和使用都写在一起,代码的耦合度高,也不利于后期的维护.我们可以使用工厂模式来解决这个问题,工厂模式是一个创建型模式,将对象的创建和使用分 ...

  3. tomcat Filter内存马

    idea调试的时候加入源代码 <dependency> <groupId>org.apache.tomcat</groupId> <artifactId> ...

  4. IoTOS-v1.5.3 新增 智能诊断&会话记录导出

    IoTOS v1.5.3 一.新增智能诊断 智能诊断功能: 智能诊断会根据不同上游接口能力开放提供接近官方甚至比官方更加完善的智能诊断功能. 目前还原OneLink官方智能诊断功能包括动效.诊断建议等 ...

  5. 通过Jmeter压测存储过程

    通过Jmeter压测存储过程 一.存储过程准备: 1.建立一个空表: CREATE TABLE test_data ( id NUMBER, name VARCHAR2(50), age NUMBER ...

  6. 最为常用的Laravel操作(3)-模板

    Blade 模板引擎 模板继承 定义布局: <!-- 存放在 resources/views/layouts/app.blade.php --> <html> <head ...

  7. C语言基础-基础指针

    文章目录 指针 前言 1.什么是指针 2.指针的使用 (1)指针的定义 (2)指针的赋值 (3)指针类型 (4)如何使用指针 3.野指针 (1)导致野指针的原因 ① 未初始化指针 ②指针越界访问 ③指 ...

  8. 简单解决jsp中文乱码问题

    简单解决jsp中文乱码问题 初学jsp制作一个简单的响应页面 具体代码如下: <form action="test.jsp"> username : <input ...

  9. docker部署zabbix6.0及企业微信发送告警

    1 前言 1.1 实验背景 因zabbix 6.0新增许多新特性,为熟悉界面特意在本地部署一套简易版(未启用HA功能).原本想要在烧制了centos7.9系统树莓派上部署,一查之下armv7果然冷门, ...

  10. EaselJS 源码分析系列--第四篇

    鼠标交互事件 前几篇关注的是如何渲染,那么鼠标交互如何实现呢? Canvas context 本身没有像浏览器 DOM 一样的交互事件 EaselJS 如何在 canvas 内实现自己的鼠标事件系统? ...