当前位置:网站首页>ipv4和ipv6对比(IPV4)
ipv4和ipv6对比(IPV4)
2022-07-31 11:56:00 【全栈程序员站长】
大家好,又见面了,我是你们的朋友全栈君。
TCP/IP的心脏是互联网层,这一层主要由IP和ICMP两个协议组成。
IP相当于OSI参考模型中的第三层——网络层。而网络层的作用是实现终端节点之间的通信。这种终端节点之间的通信也叫‘点到点’通信。IP地址用于连接在网络中的所有主机中识别出进行通信的目标地址。谷在tcp/ip通信的所有主机中必须设置IP地址。
路由控制、多条路由和路由控制表使得数据包可以成功抵达要去的地方。路由控制表记录着此刻数据包应该下一步应该发送给哪个路由器。
IP为了简化和提速采用无连接的方式,而为了提高可靠性,上层TCP采用面向连接方式。
IPV4
IPV4由32位正整数来表示,在计算机内部以二进制方式被处理。
IPV4地址由网络位和主机位两部分构成。有A、B、C、D、E五类。E类为科研所用。
A类地址:首位以’0’开头,从第一位到第八位是它的网络位。0.0.0.0——127.0.0.0为A类的网络地址。A类地址的后24位为主机位。
B类地址:首位以’10’开头,从第一位到第八位是它的网络位。128.0.0.0——191.255.0.0
为B类的网络地址。B类地址的后16位为主机位。
C类地址:首位以’110’开头,从第一位到第八位是它的网络位。192.0.0.0——223.255.255.0为C类的网络地址。C类地址的后8位为主机位。
D类地址:首位以’1110’开头,从第一位到第八位是它的网络位。224.0.0.0——239.255.255.255为D类的网络地址。D类地址无主机位。
广播地址:用于在同一链路中相互连接的主机之间发送数据包。将IP地址中主机地址部分全部写成1就成为了广播地址。(广播地址分为本地广播和直接广播两种,在本网络内的广播叫做本地广播,不同网络之间的广播为直接广播)。
IP多播:多播用于将包发送给特定组内的所有主机。其直接使用IP协议,不存在可靠传输。多播使用D类地址,从首位开始到第四位是‘1110’,则可认为是多播地址,剩下的28位可以成为多播的组编号。
CIDR和VLSM
CIDR(无类域间选路):多个C类地址可以划分到一个较大的网络内,降低了路由器的负担。
VLSM(可变长子网掩码):将一个网络地址划分为多个主机数。
IPV4报头:
版本号:当前版本号为4即代表此报文为IPV4报文
首部长度:表示当前IPV4报文头部长度。一般为20字节。
优先级和服务类型:用来给特殊的数据打标记,一般用来做QOS。
总长度:表示ipv4数据包的总长度,此字段长度为16 bit,因此用十进制表示最大为65535,也就是说IP数据包最大长度为65535字节即75字节。
标识、标志、片偏移:这三个字段用于ipv4数据包的分片和重组,
生存时间:用于ipv4数据报文的防环,此字段占8个比特,总长度为256,每经过一个路由器减一,当此字段为0时,路由器将丢弃此数据包。
协议号:用于表示将要处理的上层协议类型。
头部校验和:字段长度为16 bit。可以对于IP报头纠错,它不包括被封装的数据内容。
源IP地址和目标IP地址
可选字段:可选且长度可变,但最长为40字节。此字段在实际中用得并不多。
IPV6
IPV6有地址长度有128比特,8个16位字节。IPV6的出现解决了IP V4地址不足问题。
在 IPV6的标记上一般将128比特IP地址以每16比特为一组,每组采用冒号标记,出现连续的0时可以省略,并用两个冒号隔开。一个IP地址中只允许出现一次两个连续的冒号。
全球单播地址
链路本地单播地址:在同一数据链路内唯一的地址。用于不经过路由器,在同一链路中通信。地址范围为FE80::/10。
环回地址:该地址无法在互联网通信时使用 ::1/128
多播地址:FF00::/8
IPV6报头:
版本号:和IPV4报头版本号意思相同,这里为6.
流量级别:长度为8bit,它等同于IPv4报头中的TOS字段,表示IPv6数据包的类或优先级,主要应用于QoS。
流标签:长度为20bit,它用于区分实时流量。
数据长度:定义了负载的长度,数据包封装的字节数。
下一报头:长度为8bit。该字段定义了紧跟在IPv6报头后面的第一个扩展报头(如果存在)的类型,这个区域非常类似与ipv4包头中的协议字段,实际上使用的目的就是标识在下一头是一个上层协议的头(就是标识上层协议)。 同ipv4这个区域类似,这个区域也是8个bit。 但是在ipv6中,在紧随在数据包头的不一定是上层协议的头(ipv4里面的数据包头后面跟的就是上层协议的头),有可能是扩展包头(再次出现这个名词,在下一段中描述)。 所以下一报头区域的命名具有很大范围的意义。
跳限制:长度为8bit,该字段类似于IPv4报头中的Time to Live字段,它定义了IP数据报所能经过的最大跳数。每经过一个路由器,该数值减去1;当该字段的值为0时,数据包将被丢弃。
源IP地址和目标IP地址
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/128730.html原文链接:https://javaforall.cn
边栏推荐
- 最长算术(暑假每日一题 11)
- Detailed tutorial on distributed transaction Seata
- CWE4.8 -- The 25 most damaging software security issues in 2022
- R 语言data.frame 中的另一行中减去一行
- B/S架构模式的一个整体执行流程
- Standard SQL/JSON - the sobering part
- SAP Commerce Cloud Product Review 的添加逻辑
- JS列表数据通过递归实现树形结构
- Docker practical experience: Deploy mysql8 master-slave replication on Docker
- St. Regis Takeaway Project: New dishes and dishes paged query
猜你喜欢
随机推荐
学习笔记 Golang 写入文件(io.WriteString、ioutil.WriteFile、file.Write、write.WriteString)
[Virtualization ecological platform] Raspberry Pi installation virtualization platform operation process
Different lower_case_table_names settings for server ('1') and data dictionary ('0') solution
Addition logic for SAP Commerce Cloud Product Review
How MySQL's allowMultiQueries flag relates to JDBC and jOOQ
Summary of several defragmentation schemes for MySQL (to solve the problem of not releasing space after deleting a large amount of data)
一、excel转pdf格式jacob.jar
想吃菌子,当然是自己上山找了
WebGL给Unity传递参数问题1: Cannot read properties of undefined (reading ‘SendMessage‘)
MySQL limit paging query and performance issues
deeplab implements its own remote sensing geological segmentation dataset
deeplab实现自己遥感地质分割数据集
Docker practical experience: Deploy mysql8 master-slave replication on Docker
才22岁!这位'00后'博士拟任职985高校!
ESP8266-Arduino编程实例-PIR(被动红外)传感器驱动
Docker安装canal、mysql进行简单测试与实现redis和mysql缓存一致性
消息队列面试题(2022最新整理)
瑞吉外卖项目:新增菜品与菜品分页查询
JVS设置不同应用的登录时效时间
R语言:文本(字符串)处理与正则表达式









