TCP/IP——网络层

article/2025/8/23 23:48:58

TCP/IP——网络层

一、网络层协议
网络层继承被称之为IP层。但网络层协议并不只是IP协议,还包括ICMP(Internet control Message Protocol)协议、IPX(Internet Packet Exchange)协议
在这里插入图片描述
IP寻址:能过上网的设备中,那些IP地址可用,那些IP地址不可用,都是由网络层中的协议来规定的‘
路由选择:由了IP地址之后,我们如何找到这个IP地址表示的上网设备,这个过程我们称之为路由选择
这两个功能是我们在网络层中两个重要功能
IP协议
IP是Internet Protocol的缩写。Internet Protocol本身是一个协议文件的名称,该协议文件的内容非常好,主要是定义
并阐述了IP报文的格式
经常被提及的IP,一般不是特指Internet Protocol这个协议文件本身,而是泛指直接或间接与IP协议相关的任何内容
在这里插入图片描述
注:逻辑地址是可以随意修改的,而物理地址是不可以随意修改的
数据封装
在这里插入图片描述
IP v4报文格式(IP头部信息)
在这里插入图片描述字段:
Version:版本号,如IP v4,IP v6,占4位
Header Length:头部长度,(当前IP头部的长度),占4位
Type of Service:服务类型,当前的数据包的优先级(0-7)数字越大,优先级越高,数据在处理的时候将被优先处
理,占8位
Total Length:总的长度,不包括以太网头部,以太网尾部,即不包含二层信息长度
***Identification(标识),Flags(标志),Fragment Offset(片偏移)***:主要是用来包的重组的
IP数据报的分片与重组
1、在IP数据报头中有三个字段与数据报的分片与重组有很大的关系,分别是标识符、标志和片偏移量。
其中标志占3位,该字段目前只有后两位有意义。
其中,最末位记为MF(More Fragment),用于把数据报最后一片与前面其它各片区分开来。MF = 1代表片未完,,即该分片不是原始数据报的最后一片;MF = 0表示该片是原始数据报的
最后一片。

次低位DF(Don’t Fragment),用来控制数据报是否允许分片。DF = 1表示该数据报不允许分片;DF = 0
允许分 片。
2、标识占16位,用于目的主机将数据报的各个分片重装成原来的数据报。当数据报分片时,该标识字段的值
被复制到所有的数据报分片的标识字段中。这样,目的主机就可以正确的将标识字段值相同的各数据报分
片重装成原来的数据报。在同一段数据进行分片时,标识为不变,便于日后数据进行重组。

3、片偏移占13位,表示本片在原数据报中的偏移,偏移量以8字节为单位。由于各片数据均按照独立数据
报方式传输,因此到达目的站的片序是不定的,目的主机在重装数据报时需要该字段提供偏移量。因此在分片时,分出来的数据量都要除以8来算偏移量
例子说明:
有一数据报总长度4820,字节,首部20字节,数据4800字节。某一网络能传送的数据报的最大长度是1420字
节(注意不一定是以最大传输单元1500字节分片的!),该如何分片?
在这里插入图片描述
***TTL(time to live):生存时间:***占8比特,限制IP数据包在计算机网络中的存在的时间,即数据包可以经过的路由器数,每经过一 个路由器,TTL减去1,当它为0时,则该数据报被丢弃。TTL值的查看可以通过ping命令查看,根据操作系统的不同TTL默认最大取值也会有所不同, linxu为TTL=255,win98为TTL=128,win7为TTL=64这都是由应用程序自由决定的。TTL的最大值是255,TTL的一个推荐值是64。(作用是防止环路)
MTU:最大传输单元。一般是1500个字节。一个ip数据报分片的单位。它是包括ip首部在内的。由于一般的ip首部是20个字节,因此一般
的ip数据是1480个字节。
***Protocol:协议字段:***占8位,表明具体包含的时何种协议,具体如下图:
在这里插入图片描述
***Header Checksum:头部校验和字段:***占16位,该字段表明,该数据是否在传输过程中被篡改,主要时同来做校验的确保数据的可靠传输
***源IP地址,目标IP地址:***各占32位。用来标明发送IP数据报文的源主机地址和接收IP报文的目标主机地址。
Options:可选项,占32位
***Padding:***可选项不足32位,用0填充
二、IP v4地址介绍
什么是IP地址
1)IP地址在网络中用于表示一个节点(或者网络设备的接口),节点——就是任何一个接入网络中的设备
2)IP地址用于IP报文在网络中寻址
IP地址的表示
一个IP v4地址有32位二进制,IP v6位IP v4的4倍
IP v4地址通常采用“点分十进制”表示
在这里插入图片描述
IP v4地址范围:0.0.0.0~255.255.255.255
IP地址构成
1)网络部分:用来表示一个网络
2)主机部分:用来区分一个网络内不同主机
3)网络掩码:区分一个IP地址中的网络部分即主机部分
IP地址的寻址
网络部分:用来表示一个网络
主机部分:用来雀蜂一个网络内的不同主机,能唯一标识网段上的某台设备
在这里插入图片描述
不同网段之间的通信就得需要网关
***IP地址的分类(有类编址)***如下图
在这里插入图片描述
在这里插入图片描述
IP地址类型
1)我们通常把一个网络号所定义的网络范围称之为一个网段
2)网络地址:用于标识一个网络(即网络位全为0)
3)广播地址:用于向该网络中的所有主机发送数据的特殊地址(例如:192.168.1.11111111——192.168.1.255)
4)可用地址:可分配给网络中的节点或网络设备接口的地址
注意:
在这里插入图片描述
IP地址的计算
例:172.16.10.1/16这个B类网络地址、广播地址一级可用地址数分别是?
在这里插入图片描述
私网IP地址
公网IP地址:IP地址是有IANA同意分配的,以保证任何一个IP地址在Internet上的唯一性。这里的IP地址指的是公网IP地址
私网IP地址:实际上一些网络不需要连接到internet上,比如一个大学的封闭实验室的网络,只要同一网络中的网络设备的IP
地址不冲突即可,在IP地址空间里,A、B、C三类地址中各预留了一些地址专门用于上述情况,称为死亡IP地址
A类:10.0.0.0~10.255.255.255
B类:172.16.0.0~172.31.255.255
C类:192.168.0.0~192.168.255.255
使用NAT(网络地址转换)技术,使公网地址私网地址转换
特殊IP地址
IP地址空间中,有一些特殊的IP地址,这些地址有特殊的含义和作用,举例如下:
在这里插入图片描述
IP v4 vs IP v6
有全球IP地址分配机构,IANA管理的IP v4地址,于
年完全用尽。随着最后一个IP v4公网地址分配完毕,加上接入公网的用户及设备越来越多,IP v4地址枯竭的问题日益严重,这是当前IP v6替代IP v4的最大源动力。
在这里插入图片描述
在这里插入图片描述
三、子网划分
1.为什么要划分子网:
1)一个B类地址用于一个广播域,地址浪费
2)广播域太庞大,一旦发生广播,内网不堪重负
经过子网划分后——:
1)将一个网络号划分成多个子网,每个子网分配给一个独立的广播域
2)如此一来广播域的规模更小、网络规划更加合理
3)IP地址得到了合理的利用
***子网划分的计算:***
1)首先确定子网内多少主机需要连接
2)其次通过主机数量计算需要多少主机位
3)然后再计算子网需要向主机位借多少位——即8-主机位数
4)子网掩码就是将向主机位借的位数全变为1,算出他的十进制即可
子网汇总:
将主机位的二进制写出,取相同位,去不同位
子网划分例题:
在这里插入图片描述
在这里插入图片描述
三、ICMP协议
1)Internet控制消息协议,是IP协议的辅助协议
2)ICMP协议用来再网络设备间传递各种差错和控制信息,对于收集各种网络信息、诊断和排除各种网络故障方面起着至
关重要的作用
ICMP传递方式:
在这里插入图片描述
ICMP的报文内容形式:
在这里插入图片描述
ICMP差错检查:
ping——检验是否连通
Tracert——检验是否连通,哪个设备出现了故障
在这里插入图片描述
在这里插入图片描述
五、IP v4地址配置及基本应用
物理接口的配置:
Router>enable
Router#configure terminal
Router(config)#interface f0/0
Router(config-if)#no shutdown
Router(config-if)#ip address 192.168.1.1 255.255.255.0
逻辑接口的IP地址配置(回环口):
Router#configure terminal
Router(config)#interface loopback 0
Router(config-if)#ip address 1.1.1.1 255.255.255.0


http://chatgpt.dhexx.cn/article/17wcnJI7.shtml

相关文章

计算机网络 | 网络层 | 什么是网络层 | 详解

本博客为个人笔记,篇幅较长,内容较多,因时间原因,内容中的重点部分没有重点标出,望谅解。如有错误,欢迎各位前来纠正。 目录 一.网络层提供的两种服务 1.虚电路服务 2.电话机与现代计算机的区别 3.数据…

计算机网络-网络层

网络层 1. 前言2. 网络层的作用3. 网络层数据交换4. 网络层协议及报文格式5. ARP与RARP6. 国际控制报文协议ICMP 1. 前言 网络层介于传输层和数据链路层之间,其主要作用是实现两个网络系统之间的数据透明传送,具体包括路由选择,拥塞控制和网…

计算机网络(五):网络层

文章目录 1. 网络层概述1.1 路由器工作原理 2. IP:网际协议2.1 IPv4数据报格式2.2 IP地址2.2.1 IP地址的分类2.2.2 广播和多播2.2.3 子网和子网掩码2.2.4 CIDR与VLSM2.2.5 公有地址和私有地址 2.3 路由控制2.4 IP 分片和重组2.4.1 路径 MTU 发现 2.5 IPv62.5.1 IPv6…

网络层与传输层

目录 一、网络层 (一)IP数据包格式 (二)ICMP协议介绍 (三)ARP协议介绍 (四)ARP攻击原理 (五)ping命令及tracert ( 六)ARP命令 …

网络层——IP协议

网络层 网络层概述 网络层主要考虑数据传输的路上问题,在复杂的网络环境中确定一个合适的路径。 网络层设计要尽量简单,向上层只提供简单灵活的、无连接的、不保证可靠性的数据报服务。网络层不提供服务质量的承诺! IP 数据报的格式 如何分…

计算机网络——网络层

目录 4.1 网络层概述 4.2 网络层提供的两种服务 面向连接的虚电路服务 无连接的数据报服务 4.3 IPv4地址 IPv4地址概述 分类编址的IPv4地址 划分子网的IPv4地址 无分类编制的IPv4地址 IPv4地址的应用规划 4.4 IP数据报的发送和转发过程 4.5 静态路由配置 默认路由和…

详解网络层_计算机网络

目录 1. 网络层提供的两种服务 2. 网际协议IP 3.虚拟互联网络 4. IP地址 IP地址的划分方法 点分十进制 IP地址指派范围 IP地址的重要特点 5. IP地址与MAC地址 1. 网络层提供的两种服务 首先,网络层的引入主要是为了屏蔽不同网络的差异,实现不同网络…

计算机网络(四)_网络层

相关博文: 计算机网络入门 计算机网络物理层 计算机网络-数据链路层 与网络层相关的IP地址与子网掩码单独抽出于下 IP地址 计算机网络-域名与IP地址详解 子网掩码与子网划分 计算机网络-子网掩码与子网划分 文章目录 IP地址子网掩码与子网划分一些基本概念网络层提供…

应用层、传输层、网络层、数据链路层

应用层 包括:应用服务 (FTP(FileTransfer Protocol,文件传输协议)和DNS(Domain NameSystem,域名系统))发送HTTP请求DNS域名解析系统:提供通过域名&#xff0…

计算机网络之网络层

一、概述 网络层介于传输层和数据链路层之间,其主要作用是实现两个网络系统之间的数据透明传送,具体包括路由选择,拥塞控制和网际互连等。网络层是网络与网络之间通信的最底层,在数据从数据链路层向传输层进行数据传输的通信中&a…

计算机网络-网络层详细讲解

目录 网络层概述 网络层提供的两种服务 面向连接的虚电路服务 无连接的数据报服务 IPv4地址 IPv4地址概述 概述 表示方法 分类编址的IPv4 A类地址 B类地址 C类地址 练习 划分子网的IPv4地址 子网掩码 32比特的子网掩码可以表明分类IP地址的主机号部分被借用了几个比特…

网络层

一、概述 1、网络层是OSI参考模型中的第三层,介于传输层和数据链路层之间,它在数据链路层提供的两个相邻端点之间的数据帧的传送功能上,进一步管理网络中的数据通信,将数据设法从源端经过若干个中间节点传送到目的端,从…

网络五大层介绍,看完你就懂

当前的网络协议是分层的:应用层,传输层,网络层,数据链路层,物理层 目录 应用层 传输层 UDP协议 数据报格式 TCP(传输控制协议) 报文格式 1.确认应答(核心) 2.超时重传 3.连接…

Android 4.4 沉浸式状态栏的实现

Android 4.4(kitkat)之后,Android Window 提供一个新的属性: WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS从名字上可以看出,这个属性可以用来设置状态栏是否透明,我们就可以利用这个属性来实现沉浸…

总结系列-一文搞懂沉浸式状态栏

近期做到与状态栏相关一些需求,网上关于沉浸式状态栏的文章有很多,基本上都先讲一堆概念,然后接着推出一个自己写的轮子,这类轮子面对很多不同场景的情况不能百分之百满足使用需求,过度地使用轮子也往往会让开发者不了解代码到底是怎么实现沉浸式的,基于…

安卓沉浸式状态栏

安卓沉浸式状态栏 前言安卓版本Android4.4之前Android4.4(API 19) - Android 5.0(API 21)1.图片沉浸1.1 xml实现1.2代码实现 2.ToolBar沉浸2.1xml实现2.1.1 设置 fitsSystemWindows 属性2.1.2 布局里添加占位状态栏 2.2代码实现2.…

Android-StatusBarUtil沉浸式状态栏

文章目录 一、前言二、去掉标题栏三、StatusBarUtil属性四、沉浸状态栏颜色五、沉浸状态栏图片 一、前言 大家再开发过程中会遇到上面这种情况,它不影响使用但是在美观上面差点意思,接下来教给大家一种方式来使它美观 二、去掉标题栏 只需要改变NoAction…

沉浸式状态栏(一)

我们知道IOS上的应用,状态栏的颜色总能与应用标题栏颜色保持一致,用户体验很不错,那安卓是否可以呢?若是在安卓4.4之前,答案是否定的,但在4.4之后,谷歌允许开发者自定义状态栏背景颜色啦&#x…

安卓沉浸式状态栏,android沉浸式状态栏工具类封装

文章目录 前言二、使用步骤1.定义2.使用3.效果 前言 沉浸式状态栏对安卓6.0以上版本很简单,今天分享一个封装好的工具,供大家参考 二、使用步骤 1.定义 代码如下: package com.example.mystudy_kotlin.utilsimport android.app.Activity …

沉浸式状态栏实现

文章目录 郭霖的博客这样实现透明状态栏隐藏导航栏真正的沉浸式模式 轮子 郭霖的博客这样实现 Android状态栏微技巧,带你真正理解沉浸式模式 透明状态栏 新建一个项目,只放一张图片 可以看到 状态栏、ActionBar、底部导航栏都显示,现在修…