IP 地址分类及子网划分
IP 地址分类
在现实生活中,一个市区有许多的区,区下面又有很多的街道,街道下面又有很多的小区,A 市区、B 市区就是一个范围,每一个范围都有不同的居民数量。类比到计算机网络,A 类地址可以容纳256*256*256台主机。
A 类 IP 地址
IP 地址是一个 32 位二进制代码组成的,在 A 类地址中用前 8 位来表示网络号,后 24 位表示主机数量。主机地址表示每一个网络号中可以容纳的主机数量。
0 表示该地址是本地宿主机;127 保留给内部回送函数,所以 A 类 IP 地址可以表示的网络号是 1~126。也就是说,A 类地址一共有 126 个网络号,每一个网络号下面可以容纳2^24-2(即 16777214)台主机。
B 类 IP 地址
在 B 类地址中前 16 位来表示网络号,后 24 位表述主机数量。
B 类 IP 地址有 128~191 个网络号,每个网络可以容纳2^16-2(即 65534)台主机。
C 类 IP 地址
在 C 类地址中前 24 位来表示网络号,后 8 位表示主机数量。
C 类 IP 地址有 192~223 个网络号,每个网络可以容纳2^8-2(即 254)台主机。
子网划分
如下图:有两个网络,192.30.12.x(A 网络)和 192.30.13.x(B 网络)。两个网络下的主机并不能互相通信,只能通过路由器进行转发:

有时,一个单位需要在新的地点马上开通一个新的网络。但是在申请到一个新的 IP 地址之前,新的网络是不可能连接到互联网上工作的。因此,在原本有的网络上再划分一个 IP 地址。如上图所示,在 A 网络中再划分一个子网。

原来的地址不可能再变化了,只有从主机号这里开始对网络再区分。对一个 IP 地址的主机号再划分的过程称之为子网划分。其实,对于外面来说,还是一个网络。
仔细观察,192.30.12.129~192.30.12.254 都是一个新的子网,192.30.12.2~192.30.12.126 也是子网。它们对外还是属于 192.30.12.0 这个网络的。
两台主机所处的网络号不同,那么这两台主机不能直接通信,而是需要通过路由器进行转发。PC12-129 与 PC12-2 相互通信,发现是不能发送 ICMP 数据包的。如下图所示:

PC12-2 和 PC12-124 属于同一个网络(同一个子网)因此可以直接进行通信。前面说到,对外,它们依旧还是一个网络,但是由于子网掩码的作用,计算机判断它们不属于一个网络,上图发现这两个计算机不能通信,说明子网已经划分成功。
子网掩码
其实,如上图,PC12-129 和 PC12-2 在进行通信时,如何知道对方是不是属于我这个子网的计算机呢?
没有子网掩码,路由器就不能分辨哪一个子网属于哪一个网络。每台主机都必须有一个子网掩码和 IP 地址。只有这样,主机才可以发送消息和接收消息。
- A 类 IP 地址的子网掩码是 255.0.0.0;
- B 类 IP 地址的子网掩码是 255.255.0.0;
- C 类 IP 地址的子网掩码是 255.255.255.0。
子网掩码与 IP 地址进行与运算就可以知道一台计算机属于哪一个子网。与运算的规则:0 AND 0 = 0;1 AND 0 = 0;0 AND 1 = 0;1 AND 1 = 1。
每一类地址的主机数不能全为 0 或不能全为 255,这样的地址不可以分配给主机。比如,121.0.0.0,主机数全为 0,不能分配给主机。
已经知道子网掩码的作用之后,再回头看上面的子网划分图,PC12-129 和 PC12-2 的子网掩码都是什么呢?
PC12-129 的 IP 配置信息:

PC12-2 的 IP 配置信息:

它们的子网掩码都是一样的,这是因为采用了等长子网划分,变长子网划分的话,两个子网掩码才可能不一样。这里,推荐观看视频:等长子网划分、变长子网划分。
子网划分+子网掩码可以让一个网络更加灵活,提高 IP 地址的使用率。
练习题
假如,IP 地址为 192.168.0.1,子网掩码是 255.255.255.0,同一个子网内的主机 IP 地址是以下哪些?
A. 192.168.0.0;B. 192.168.0.2;C. 192.168.1.0;D. 192.168.1.2。
第一步,把 192.168.0.1 所处的子网算出来:
\]
第二步,分别把选项中的 IP 地址与 255.255.255.255 子网掩码进行与运算:
选项 A 和选项 B 与 192.168.0.1 所处的子网相同。但是,选项 A 中的主机数全为 0,不可以作为主机 IP。因此,只有选项 B 与题目的子网相同。
每一类地址的主机数不能全为 0 或不能全为 255,这样的地址不可以分配给主机。比如,121.0.0.0,主机数全为 0,不能分配给主机。因此,主机数全 0 或 255 的 IP 地址,直接省略不选。
Cisco 实战
上图的拓扑结构不能支持各个子网的计算机进行通信,而下面,将通过多个路由器再对上图的拓扑进行改造,实现一个可以通信的网络。如下图所示:

图中的拓扑结构中有三个路由器,每一个路由器需要至少 2 个 IP 地址,路由器的 IP 地址就是网关,而网关下的所有网络的计算机需要与其他网络的计算机通信,都要通过网关转发到其他网络。
集线器不影响网络的结构,集线器连接的所有计算机还是属于一个网络,而只有路由器才能“隔开”网络,但又转发数据包到其他网络,可以说,路由器就是网络与网络的守门人,同时又是灯塔。
上图所示的拓扑结构,所有的计算机都可以进行通信,比如,PC12-1 与 PC13-1 进行通信,它们都不是一个网络:

而 PC12-1 和 PC12-129 它们实际上是一个网络,但 PC12-129 所在的网络是 192.30.12.x 下面分出来的一个子网,子网与子网是否可以进行通信?是否可以与其他网络进行通信?


通过实验结果可以得出,是可以进行通信的。这是该实验的 pkt 文件:分类 IP 地址及其子网划分。
IP 地址分类及子网划分的更多相关文章
- [转,讲的非常精彩]CIDR地址块及其子网划分(内含原始IP地址分类及其子网划分的介绍)
http://blog.csdn.net/dan15188387481/article/details/49873923 CIDR地址块及其子网划分(内含原始IP地址分类及其子网划分的介绍) 1. ...
- 计算机网络【3】—— IP地址分类与子网划分
一.IP地址分类
- IP地址分类以及子网划分
五类IP地址段 根据上表的说明,我们可以知道: 你只要知道 IP 的第一个十进制数,就能够约略了解到该 IP 属于哪一个等级, 以及同网域 IP 数量有多少. 这也是为啥我们上头选了 192.168. ...
- IP地址分类和子网划分
IP地址: 地址范围 网络地址规律 子网掩码 私有地址 保留地址 A类地址:从1.0.0.0 到1 ...
- IP地址分类及CIDR划分方法
IP地址的分类和表示有三种形式,1.分类的IP地址.2.子网划分.3.无分类编址CIDR 1.分类的IP地址 IP地址:: = {<网络号>,<主机号>} 不同的网络号和主机号 ...
- IP的分类以及子网划分、网络设置
前言 整个因特网就是一个单一的.抽象的的网络.IP地址就是给因特网上的每一个主机(或路由器)的每一个接口分配一个在全世界范围是唯一的32位的标识符.IP地址的结构使我们可以在因特网上很方便的进行寻址. ...
- IPv4地址分类及子网划分
IPv4地址分为A,B,C,D,E类: A类:1.0.0.0~126.255.255.255,默认子网掩码/8,即255.0.0.0 (其中127.0.0.0~127.255.255.255为环回地址 ...
- IP地址分类、私有地址、子网、子网掩码
IP地址分类介绍 这里讨论IPv4,IP地址分成了A类.B类.C类.C类.E类,如下图所示: 解释: A类以0开头,网络地址有7位,主机地址有24位,举例:A类地址:0 10000000 000000 ...
- 3.IP地址分类_规划_子网掩码
IP地址分类_规划_子网掩码 3.1MAC地址 网卡的身份证号———MAC地址 MAC地址的长度为48位(6个字节),通常表示为12个16进制数,每2个16进制数之间用冒号隔开,如:08:00:20: ...
- IP地址分类(转)
IP地址分类以及C类IP地址的子网划分 国际规定:把所有的IP地址划分为 A,B,C,D,E A类地址:范围从0-127,0是保留的并且表示所有IP地址,而127也是保留的地址,并且是用于测试环回用的 ...
随机推荐
- 【每日一题】【遍历orSet】2022年2月1日-NC66 两个链表的第一个公共结点
描述输入两个无环的单向链表,找出它们的第一个公共结点,如果没有公共节点则返回空.(注意因为传入数据是链表,所以错误测试数据的提示是用其他方式显示的,保证传入数据是正确的) 输入描述:输入分为是3段,第 ...
- RGB以及RGBA
字母含义及取值 R:红色.0~255 整数 G:绿色.0~255 整数 B:蓝色.0~255 整数 A:透明度.0~1.整数或者小数 RGB和RGBA的关系 项目遇见一个需求,后台返回所占比例,前端根 ...
- MIsc writeup
1. 杂项 图片里面有什么 ,附件为一张图片 通过Binwalk查看发现有压缩包,通过foremost分离一下. 打开输出文件,发现里面有两个图片. 00000000.png是原图,00000722. ...
- Qt对象跨线程出现的问题记录,以及解决方案
Qt在跨线程开发的时候可能会出现不少问题,在这里记录一下 Qt目前用下来还是非常强大的,虽然只是用在桌面端程序开发上,但是其强大的桌面开发库真的挺好用的(Layout除外,你妈死了). Qt除了UI, ...
- STM32标准库中GPIO_ReadInputData与GPIO_ReadInputDataBit的区别
GPIO_ReadInputData读的是GPIOx的整个IDR寄存器的数据,返回一个十六位数,对应IDR寄存器的十六位.反映GPIOx所有端口的电平状态,所以参数只用传入GPIOx. uint16_ ...
- Jmeter 逻辑控制器之吞吐量控制器(Throughput Controller)
吞吐量控制器(Throughput Controller)用来控制其下元件的执行次数,并无控制吞吐量的功能,想要控制吞吐量可以用Constant Throughput Timer,吞吐量控制器有两种模 ...
- Python全栈工程师之从网页搭建入门到Flask全栈项目实战(7) - 在线问答系统
1.项目源码/业务逻辑 百度网盘链接:链接:https://pan.baidu.com/s/13VNfrSJE6vcL3HP1J5T8ew 提取码:00s0,项目业务逻辑自行阅读 2.项目搭建 点击新 ...
- week_2
Andrew Ng 机器学习笔记 ---by OrangeStar Week_2 1.Multiple Features 更有效的线性回归形式 此时,h函数已经不是二阶了. \[ X = \begin ...
- Python Kconfiglib初次学习
1 参考 kconfiglib库官方介绍:kconfiglib · PyPI Kconfiglib源码:GitHub - ulfalizer/Kconfiglib: A flexible Python ...
- day02-Promise
Promise 1.Promise基本介绍 Promise是异步编程的一种解决方案,可以解决传统Ajax回调函数嵌套问题. 传统的Ajax异步调用在需要多个操作的时候,会导致多个回调函数嵌套,导致代码 ...