当前位置: 首页 > ops >正文

第二部分-IP及子网划分

目录

一、什么是IP?

1.1.IP地址的由来

1.2.IP地址的表示

1.3.IP地址的构成

1.4.IP地址的分类

1.5.IP地址类型

1.6.IP地址的计算

1.7.私网IP地址

1.8.特殊IP地址

二、子网划分

2.1.什么是子网划分及为什么要进行子网划分?

2.2.如何进行子网划分?

实例:

2.3.如何判断是否属于同一网段?

实例:

一、什么是IP?

1.1.IP地址的由来

要想知道IP地址的由来,我们可以先看看网络的分层模型:

我们都知道,交换机的工作层级为数据链路层。作为一个二层设备,与实际的接入设备互联,那么当数据传输到交换机这层之后,交换机如何准确地将数据发送至目标设备呢?为了解答这一问题,我们为每台电脑分配了一个独特的数字虚拟地址,即IP地址。IP地址为每个联网设备分配唯一的逻辑地址(如IPv4的 192.168.1.1或IPv6的 2001:0db8:85a3::8a2e),确保数据能准确送达目标设备,类似于现实中的门牌号。在发送数据时,只需在数据包上标注出目标设备的IP地址,交换机便能据此判断数据包的去向。

以老李、老张和老王为例,他们的电脑分别被分配了192.168.1.2、192.168.1.3和192.168.1.4的IP地址。当老李需要向老王发送数据时,他只需在数据包上注明“收件人:192.168.1.4”,交换机便会明白应将数据包发送至老王的电脑。

1.2.IP地址的表示

IP地址在计算机最开始的设计中,就被设计使用4个字节(32位—1Bytes = 8bit)二进制编码进行表示,但复杂的二进制信息不符合我们人类的思维习惯,所以后边演进为点分十进制,即把复杂的、不容易记忆和表示的二进制转换为十进制(称为:点分十进制)来进行表示。

1.3.IP地址的构成

IP地址逻辑上是由两部分进行组成:即网络部分、主机部分,这一点类似我们生活中住址的填写,xx省/xx市/xx区/...  /xx单元/xx栋    xx号,前者就可以用来标识该用户大概地址在什么位置,后者则具有唯一性,就能精准找到对应住户地址。

IP地址的组成如下图:

网络部分:网络部分用来标识一个网络

主机部分:主机部分则是用来标识某一个网络下具体的某一台主机

那逻辑上的网络部分如何在计算机中进行标识呢?这就引出了我们需要知道的——网络掩码,网络掩码就是用于标识某一个网络的主机部分。如下图:

1.4.IP地址的分类

互联网中的地址被划分了5类:即A类、B类、C类、D类、E类。各类地址如下显示。在IP地址中,全0代表着网络,全1则代表着广播。

A类地址的识别头是0,占有1个字节(8位),定义最高位为0来标识此类地址,余下的7位则为真正的网络地址,支持1~126个网络(第一个字节由于一号位用于标识A类网络,所以十进制值为:000~127)。后面的3个字节(24位)为主机地址,并提供2^24-2个端口。

B类地址的识别头是10,占有2个字节,使用前两位进行标识,其余的十四位用来表示真正的网络地址,主机地址占用后边的两个字节(16位),所以B类全部的地址有(2^14-2)x(2^16-2)=16382x65 534 个。B 类网络地址第一个字节的十进制值为 128~191。

C类地址的识别头是110,占有3个字节,它是最通用的Intemet 地址。使用前三位用来标识此类地址,其余 21位为真正的网络地址,因此C类地址支持 2^21-2个网络。主机地址占最后1个字节,每个网络可多达 2^8-2 个主机。C类网络地址第一个字节的十进制值为 192~223。

D 类地址的识别头是 1110,用于组播,例如用于路由器修改。D 类网络地址第一个字节的十进制值为 224~239。

E 类地址为实验保留,其识别头是 1111。E 类网络地址第一个字节的十进制值为 240~255。

总结:

识别头还是蛮有规律的,从0开始之后,以后都前缀都依次递增1

类型网络地址占用字节数识别头
A1字节0
B2字节10
C3字节110
D用于组播1110
E用于实验1111

1.5.IP地址类型

一般我们将一个网络号所定义的网络范围称之为一个网段。

网络地址:用于标识一个网络,例如:192.168.10.0/24,也就是主机位全0。

广播地址:用于该网络中的所有主机发送数据,例如:192.168.10.255/24,也就是主机位全1。

可用地址:该网段下,除网络、广播地址之外的所有地址,计算公式:2^主机位数 - 2。

1.6.IP地址的计算

例:172.16.10.1/16这个B类地址的网络地址、广播地址以及可用地址数分别是?

二进制在线转换器:在线进制转换

1.7.私网IP地址

私网IP地址(也称私有IP地址)是专门设计用于内部网络的IP地址,这些地址不能在公共互联网上直接路由。这不仅是对内部网络的一种保护,其也变相的解决了部分IPv4地址短缺的问题。

核心作用:

        1.地址复用:不同局域网中可使用相同的私网IP段(如家庭和公司都用192.168.1.0/24)

        2.隔离保护:私网设备对外隐藏真实IP,需通过NAT(网络地址转换)访问互联网

        3.节省公网IP:每一个公网IP都是唯一的,而通过NAT技术就可以让一个公网IP为整个局域网提供上网服务。

私网IP地址范围,根据国际标准,私网IP分为以下三个保留段:

地址范围子网掩码可用IP总数常见场景
10.0.0.0-10.255.255.255255.0.0.0/816,777,216大型企业、数据中心
172.16.0.0-172.31.255.255255.240.0.0/121,048,576中型企业、机构网络
192.168.0.0-192.168.255.255255.255.0.0/1665,536家庭/小型办公室路由

1.8.特殊IP地址

特殊IP地址是在TCP/IP协议栈中预留的、具有特定功能且不能用于常规主机分配的地址。

地址类型示例用途是否可路由
本网络本主机0.0.0.0DHCP请求源地址
环回地址127.0.0.1本地协议栈测试
受限广播地址255.255.255.255本地网段广播
直接广播地址192.168.1.255特定子网广播可配置
组播地址224.0.0.1一对多通信(如视频流)可配置
自动配置地址169.254.1.1DHCP失败时临时通信
私网地址192.168.0.1内部网络设备分配需NAT转换

二、子网划分

2.1.什么是子网划分及为什么要进行子网划分?

一是,前面已经提到,IP地址在早期就已经将32位的地址编码划分为A、B、C、D、E五种类型,拿A类地址来说,单个A类地址就可提供约1667万(2^24 - 2 =16,777,214)个地址给主机使用,而实际需求中,根本用不了这么多,如果强行使用A类地址进行管理,那将会造成很大的IP浪费,实属大材小用。

而子网划分正是将大地址划分成更小的地址块,从而按照需求进行使用。如将一个C类网划分为4个子网,每个子网就有62个可用IP(2^8 = 256    2^6=64    64 - 2 = 62 )。

二是,若未进行子网划分,B类地址的广播域过于庞大,假如广播流量充斥着整个网络,必定会造成网络拥塞。而划分子网之后,广播就被限制在小型的子网中。

三是,子网划分也一定增加了网络的安全性和简化网络管理和故障排查。

2.2.如何进行子网划分?

原理:前面提到,IP地址的结构是由(网络位 + 主机位)共同决定,而子网划分的技术原理就是从主机位中借用若干个比特位来作为子网位,从而进一步形成了(网络位 + 子网位 + 主机位)。

而子网划分的核心实现逻辑就是在借用的主机位之后,更换子网掩码。从而以子网掩码的改变来带动子网的改变。

实例:

若对一个B类地址—172.16.0.0/16 借用5位主机位划分子网后,网络掩码位就由原来的16位再加上新增的5位,即合计21位,看如下计算:

2.3.如何判断是否属于同一网段?

子网掩码,通过与IP地址逐位“与”运算分离网络地址和主机地址

判断是否属于同一网段的核心手段:若俩IP地址与子网掩码运算后网络地址相同,则属于同一子网。

实例:

判断222.21.160.6和222.21.160.73在掩码255.255.255.192下是否属于同一子网?

http://www.xdnf.cn/news/13114.html

相关文章:

  • BERT 位置嵌入机制与代码解析
  • Ubuntu 24.04 LTS 长期支持版发布:对服务器用户意味着什么?新特性、升级建议与性能影响初探
  • AWS S3 SDK FOR JAVA 基本使用及如何兼容七牛云
  • [Java基础] stream流中Collectors.toMap报空指针异常情况
  • CppCon 2015 学习:Time Programming Fundamentals
  • Shooter–System Performance Variability as a Function of Recoil Dynamics
  • 一般视频剪辑的硬盘配置是什么
  • AUTOSAR图解==>AUTOSAR_AP_RS_General
  • 卷积核、FIR滤波器与LTI系统——一回事
  • 高斯列主元消去法——python实现
  • Android Jetpack 系列(三) Lifecycle 生命周期感知组件详解
  • cacert.pem根证书文件
  • PydanticAI 作为 MCP 客户端示例
  • RK3568/RK3588 KVM系统虚拟化解决方案
  • WPS2024 软件下载及安装教程!
  • 关于纯java代码项目,打包jar实现方式
  • Python 训练营打卡 Day 47
  • 免布线+双向通信——电力载波技术重塑楼宇自控能效管理
  • 自建CA并生成自签名SSL证书
  • Cell的复用及自定义Cell
  • STM32嵌套向量中断控制器(NVIC)及外部中断使用案例分析
  • GAMES202-高质量实时渲染(Assignment 4)
  • 【Python基础】异常捕获知识梳理
  • Device Mapper 机制
  • Redis数据结构选择策略--String?Hash?怎么选?
  • C++ Saucer 编写Windows桌面应用
  • AI——DeepSeek+LangChain+streamlit 实现智能汽车维修服务
  • 视觉slam十四讲实践部分记录——ch2、ch3
  • 字节开源代码模型——Seed-Coder 本地部署教程,模型自驱动数据筛选,让每行代码都精准落位!
  • ​第八章:漏洞里的人间烟火