IP基本原理(上)

news2025/1/10 1:30:24

文章目录

  • 一、IP的定义
  • 二、IP的作用
    • 1.标识节点和链路
    • 2.寻址和转发
    • 3.适应各种数据链路
  • 三、IP头部封装格式
  • 四、MTU
  • 五、IP地址
    • 1.定义
    • 2.格式
      • 2.1 点分十进制和二进制关系与转换
      • 2.2 由网络位+主机位组成
      • 2.3 网络位长度决定网段
    • 3.分类
      • 3.1 A类
      • 3.2 B类
      • 3.3 C类
      • 3.4 D类
      • 3.5 E类
    • 4.特殊地址
      • 4.1 127.X.X.X
      • 4.2 主机位全0的地址
      • 4.3 主机位全1的地址
      • 4.4 255.255.255.255
      • 4.5 0.0.0.0
    • 5.公网/私网地址
      • 1.公网地址
      • 2.私网地址

首先可以看下思维导图,以便更好的理解接下来的内容。
在这里插入图片描述

一、IP的定义

IP(Internet Protocol)是当前唯一的网络层协议标准,它定义了数据网络层的封装方式和编址方法。作为互联网的核心协议之一,IP协议负责处理在网络中传输的数据包,确保它们可以从源节点传输到目标节点。

二、IP的作用

1.标识节点和链路

IP具有两个关键作用,即标识节点和链路。每个连接到网络的设备都被分配一个唯一的IP地址,这个地址用于标识网络中的每一个节点,无论是计算机、服务器还是其他网络设备。此外,每个网络也会被分配一个唯一的IP网络号,用于标识不同的链路或子网。

例子: 想象一下,您的家庭网络中有多台设备,如笔记本电脑、智能手机和智能电视。每个设备都有一个不同的IP地址,就像每个房子都有一个唯一的邮政地址一样。IP地址的分配使得路由器知道如何将数据包传送到正确的设备。

2.寻址和转发

IP在寻址和转发数据包方面起着重要作用。当数据包从源节点发送时,它会包含目标节点的IP地址。中间的路由器会根据目标IP地址来确定数据包应该被转发到哪个方向,从而找到达到目标节点的路径。这个过程涉及IP路由器的选择,它们根据路由表中的信息来决定如何最有效地将数据包传递到目标节点。

例子: 可以把路由器想象成邮局,它们根据目的地地址(IP地址)来决定如何将数据包传送到下一个站点。就像邮局会查看邮寄目的地以选择适当的路线一样,路由器会根据目标IP地址来决定数据包的下一步去向。

3.适应各种数据链路

IP协议需要适应不同数据链路的特性。数据链路可能具有不同的最大传输单元(MTU),即在不分片的情况下可以传输的最大数据包大小。因此,当数据包的大小超过链路的MTU时,IP协议会将数据包分片,然后在目标节点处进行重组。此外,为了在实际的数据链路上传递信息,IP地址必须映射到数据链路层的物理地址,以便确保数据包可以在网络中正确传输。

例子: 就像快递公司可能需要将大件包裹分成更小的部分以适应不同的运输车辆一样,IP协议会将大的数据包分成更小的片段以适应不同的网络链路。然后,接收方将这些片段重新组合成完整的数据包。

三、IP头部封装格式

IP头格式

version                                        版本,用于标识封装是IPv4还是IPv6
IHL                                            头部长度,描述了数据包头的内容长度
Type of service                                服务类型,用于标识DSCP或IP优先级,用于QOS识别
Total length                                   数据包总长度
Identification             标识符              用于标识某个分片来自于哪个数据包
Flags                      标志                标识数据包是否允许分片
Fragment offset            分片偏移             用于描述分片在数据包中的位置
Time to Live               TTL,生存时间        该数据包允许经过的路由器的最大跳数   最大值为255
Protocol                   协议                用于标识上层协议是TCP/UDP/ICMP
Header Checksum            头部校验序列         用于头部信息差错校验
Source Address                                 源IP地址
Destination Address                            目的IP地址
Options                                        可选项
Padding                                        填充

例子: 这个IP头部就像邮件信封上的标签,告诉网络设备如何处理数据包。就像信封上的发件人和收件人地址一样,IP头部包含了源IP地址和目标IP地址,以便网络设备知道数据包的来源和去向。

四、MTU

MTU(Maximum Transmission Unit)指的是接口收发数据支持的单个包的最大长度。不同的数据链路可能具有不同的MTU值,它会影响数据包的大小和分片。
默认情况下,以太网接口的MTU通常为1500字节,而在使用PPPoE(Point-to-Point Protocol over Ethernet)连接时,MTU可能会减小到1492字节,以适应PPPoE头部的额外开销。

例子: MTU就像快递车的最大装载容量,如果包裹太大,就需要进行拆分,以适应运输工具的限制。

五、IP地址

1.定义

IP地址是网络层地址,用于在互联网中标识和定位设备。

例子: 就像电话号码能够唯一标识一个人一样,IP地址能够唯一标识一个连接到网络的设备。通过IP地址,设备可以相互识别和通信。

2.格式

2.1 点分十进制和二进制关系与转换

在这里插入图片描述
在这里插入图片描述在这里插入图片描述

2.2 由网络位+主机位组成

IP地址由网络位和主机位组成。网络位用于标识特定网络,而主机位用于标识该网络中的具体设备。根据IP地址类别和子网掩码,网络位和主机位的长度会有所不同。
在这里插入图片描述在这里插入图片描述

生活中的类比:

想象你住在一个公寓楼里,这个楼可以被视为一个网络。在这个网络中,每个公寓都有一个门牌号,而这个门牌号可以被分解为两部分:楼号和房间号。楼号可以被看作网络位,房间号可以被看作主机位。

例如,假设你住在楼号为 192.168.197 的公寓楼,你的房间号是 20。在这个例子中,楼号是网络位,房间号是主机位。通过组合楼号和房间号,你的门牌号就是 192.168.197.20。

2.3 网络位长度决定网段

在IP地址中,如果网络位长度和数字完全一致,那么这些地址属于同一网段。换句话说,网络位的不同部分将标识不同的网段。这有助于路由器和交换机等网络设备根据目标IP地址来正确地路由数据包。

网段是指具有相同网络位的一组IP地址。在划分子网时,通过更改子网掩码,可以在同一个网络中进一步划分不同的子网,每个子网将有不同的网络位长度,这样可以灵活地管理IP地址。

例子
考虑一个网络 192.168.1.0,它使用子网掩码 255.255.255.0。这意味着前三个八位组(192.168.1)为网络位,而最后一个八位组为主机位。在这个网络中,有如下IP地址:
也就是1-254是一栋楼的门牌号

192.168.1.1
192.168.1.2
...
192.168.1.254

3.分类

IP地址分为五个主要类别:A类、B类、C类、D类和E类。

3.1 A类

  • 地址范围:1.0.0.0 - 126.255.255.255
  • 网络位划分:前8位为网络位,后24位为主机位

例子: A类地址范围广泛,可用于大型网络,如全球公司的内部网络。
A类IP地址

3.2 B类

  • 地址范围:128.0.0.0 - 191.255.255.255
  • 网络位划分:前16位为网络位,后16位为主机位

例子: B类地址适合中等规模的网络,如大学校园或中型企业。
B类IP地址

3.3 C类

  • 地址范围:192.0.0.0 - 223.255.255.255
  • 网络位划分:前24位为网络位,后8位为主机位

例子: C类地址常用于小型网络,如家庭网络或小型办公室。
C类IP地址

3.4 D类

  • 地址范围:224.0.0.0 - 239.255.255.255
  • 作用:组播地址,不能用于配置为主机地址

例子: D类地址用于多播,使得一个数据包可以同时发送到多个设备。

D类IP地址

3.5 E类

  • 地址范围:240.0.0.0 - 255.255.255.255
  • 作用:科研用地址,不对公开使用

例子: E类地址保留给特定的科研和实验目的。
E类IP地址

IP地址分类用来划分不同的网络规模

4.特殊地址

4.1 127.X.X.X

本地环回地址,用于标识本机,数据发送到此地址会被回送至本机。

例子: 就像电话号码短号可以直接拨打内部电话一样,本地环回地址 127.0.0.1(因127.0.0.1常见并且方便输入) 允许设备与自己进行通信。

4.2 主机位全0的地址

网络地址,用来标识某个网段中的整个网络。

例子: 就像街道名称标识整个街区一样,网络地址 192.168.0.0 标识整个子网。

4.3 主机位全1的地址

本网段广播地址,数据发送到此地址会被发送至本网段内的所有主机。

例子: 就像广播电台向整个城市播放消息一样,广播地址 192.168.0.255(最后的255代表八个二进制1所以是全1) 将消息发送到同一子网中的所有设备。

4.4 255.255.255.255

全网广播地址,数据发送到此地址会被发送至整个网络。

例子: 就像全国性的电视广播可以覆盖整个国家一样,全网广播地址 255.255.255.255 发送数据到整个网络。

4.5 0.0.0.0

任意IP地址,通常在某些配置中表示未指定地址或任何地址。

例子: 就像一个信封上没有填写收件人地址一样,0.0.0.0 代表未指定的目的地,也可以代表任何目的地。

5.公网/私网地址

1.公网地址

可以在互联网上寻址的地址,全球唯一,由互联网服务提供商分配。

例子: 就像您的家庭地址可以在邮件系统中找到您一样,公网地址能够在全球范围内唯一标识您的设备。

2.私网地址

用于内部网络,在互联网上无法直接寻址,用于局域网或内部网络通信。

地址范围:

  • 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

例子: 就像您家中的内部电话号码在全市范围内不可用一样,私网地址用于内部网络通信而不涉及互联网。

如有不详或错误,敬请指出。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux虚拟机磁盘扩容

Linux虚拟机磁盘扩容 问题起源 在使用linux系统开发时遇到文件无法创建的问题,根据提示发现是磁盘空间不足。 使用df -h查看具体磁盘使用情况。 针对这个问题,有两种解决方案: 使用du -sh ./*可以查看当前工作目录下各文件的占用空间大小…

【USRP】Ettus USRP X440 (USRP软件无线电设备)

Ettus USRP X440 30 MHz至4 GHz,1.6 GHz 带宽,基于GPS的OCXO,USRP软件无线电设备 - Ettus USRP X440是一款USRP软件无线电(SDR)设备,可帮助您集成硬件和软件,对高性能、多通道、宽带信号生成和分析系统进行原型验证。…

InnoDB的Buffer

一、Buffer内存结构 MySQL 服务器启动的时候就向操作系统申请了一片连续的内存,默认128M,可通过从参数修改。 [server] innodb_buffer_pool_size 268435456 1.1 控制块 控制块包括该页所属的 表空间编号、页号、缓存页在 Buffer Pool 中的地址、链表…

14:00面试,14:06就出来了,问的问题有点变态

从小厂出来,没想到在另一家公司又寄了。 到这家公司开始上班,加班是每天必不可少的,看在钱给的比较多的份上,就不太计较了。没想到8月一纸通知,所有人不准加班,加班费不仅没有了,薪资还要降40%,…

vue three.js基本案例解析

1.安装依赖 // 比如安装148版本 npm install three0.148.0 --save2.使用页面引用 import * as THREE from three; // 引入扩展库OrbitControls.js import { OrbitControls } from three/addons/controls/OrbitControls.js; // 引入扩展库GLTFLoader.js import { GLTFLoader }…

盘点那些国际知名黑客(上篇)

电影中的黑客仅靠一部电脑就可以窃取别人的信息,利用自己高超的技术让公司甚至国家都胆战心惊。“黑客”原指热心于计算机技术、水平高超的电脑高手,但逐渐区分为黑帽、白帽、灰帽。这些术语源自美国流行文化的老式西部电影,其中主角戴白色或…

企业怎么优化固定资产管理

在优化固定资产管理的过程中,不仅要关注硬件设备和设施的维护,还要重视软件系统和数据管理。一些可能的方法:  需要建立一套完整的资产管理系统。这个系统应该包括资产的采购、登记、使用、维修、报废等各个环节的管理流程。通过这个系统&a…

带你吃透Reactor并发模型

目录 1.概述2.项目介绍2.1 有那些并发模型2.2 能锻炼那些技能2.3目录结构 3.编码实践3.1 前期准备3.1.1 Echo协议3.1.2公共代码抽象3.1.3基准性能压测工具 3.2 并发示例3.2.1 EpollReactorSingleProcess3.2.2 EpollReactorProcessPool3.2.3 EpollReactorThreadPool3.2.4 EpollR…

MongoDb-01——Mac上安装MongoDb以及相关的简单命令

MongoDb-01——Mac上安装MongoDb以及相关的简单命令 1. 下载、安装1.1 官网下载1.2 关于安装MongoDB1.2.1 官方安装文档1.2.2 Mac安装详细步骤(使用brew) 2. 启动MongoDB2.1 官方说明2.2 作为macOS服务运行的相关命令2.3 访问 3. 链接并使用mongodb3.1 链…

人工智能与软件开发的未来

人工智能正在从各个方面改变软件开发。尽管许多公司竞相推出人工智能功能,但人工智能的潜力已超出了功能层面,成为大多数SaaS解决方案的基础。当机器学习和人工智能模型应用在SaaS技术后,便能提高各种业务流程的效率。人工智能应被视为新的开…

解决报错“No module named ‘pandas.core.indexes‘”

解决办法: 首先使用看一下你的pandas是不是版本太新了,如果使用2.0.0以上的版本,则会出现这个报错。 可以安装1.x.x的版本。 pip install pandas1.5.3

在Bigemap中怎么添加高清地图呢?

会使用到的工具 bigemap gis office,下载链接:BIGEMAP GIS Office-全能版 打开软件,要提示需要授权和添加地图,然后去点击选择地图这个按钮,列表中有个添加按钮点进去选择添加地图的方式。 第一种方式:通…

多轮面试中的策略和技巧:如何稳步晋级

🌷🍁 博主猫头虎 带您 Go to New World.✨🍁 🦄 博客首页——猫头虎的博客🎐 🐳《面试题大全专栏》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 &a…

如何用数字化系统延长用户运营周期?如何建立数字化用户体系?

如果说运营是进行用户引流、留存及转化的各个细分环节搭建,精细化运营便是针对各个细分环节,结合用户画像、人群定位、场景拆解及数据分析等细节,对用户展开有针对性的运营策略。要知道,运营需要以用户为中心,没有用户…

优思学院|企业推行精益生产要具备哪些前提条件?

企业界早已充斥着各种方法和策略,试图模仿精益生产和六西格玛管理等成功之路,目标在于通过质量工具的运用来改善业务。然而,许多公司在推行这些方法的过程中都犯了一个大错:他们忽视了背后的企业文化和制度,以及精益生…

电脑批量记账,提高效率和管理质量

在快节奏的商业环境中,记账是一项繁琐但必要的任务。为了提高效率和准确性,越来越多的人和企业寻求电脑批量记账的解决方案。 第一步:首先我们要进入晨曦记账本主页面,并点击“收支类别”在弹出来的文件框里输入好类别&#xff0…

Linux查日志的六种实用方法

工具(比Xshell好用,国产且免费) 先给大家安利一个软件:FinalShell官网 你打印出了日志,可以直接在这个上面搜索高亮 查日志 # 持续打印最新的日志,300行 tail -300f xxx.log# 查某个值 grep "内容&q…

[SWPUCTF 2022]——Web方向 详细Writeup

SWPUCTF 2022 ez_ez_php 打开环境得到源码 <?php error_reporting(0); if (isset($_GET[file])) {if ( substr($_GET["file"], 0, 3) "php" ) {echo "Nice!!!";include($_GET["file"]);} else {echo "Hacker!!";} }e…

【HSPICE仿真】实战练习(1)基础仿真分析

仿真实战 1. 反相器直流仿真1.1 输入文件2.2 执行仿真3.3 仿真输出控制.lis 文件内容波形文件 3.4 修改输出配置 2. 反相器瞬态分析使用不同宽长比进行仿真 3. 几种不同输入源的比较Pulse SourcePattern SourcePWL Source 1. 反相器直流仿真 1.1 输入文件 仿真所用电路图&…

MATLAB中mod函数转化为C语言

背景 有项目算法使用matlab中mod函数进行运算&#xff0c;这里需要将转化为C语言&#xff0c;从而模拟算法运行&#xff0c;将算法移植到qt。 MATLAB中mod简单介绍 语法 b mod(a,m) 说明 b mod(a,m) 返回 a 除以 m 后的余数&#xff0c;其中 a 是被除数&#xff0c;m 是…