IPv4地址(二)网络划分
在IPv4地址(一)中提到过,IP地址可以分成两部分,前面一部分是网络号,而后面一部分是主机号。
这里网络可以通过主机数量规模不同而分为3类:大型网络、中型网络和小型网络。
不同网络的特点
- 大型网络——可以定义位包含大量主机的网络。大型网络的数量相对很少。
- 小型网络——作为大型网络的对照,它仅仅包含很少量的主机,但是小型网络的数目很多。
- 中型网络——相对于大型网络和小型网络,包含的主机数量中等,而且中型网络的数量也中等。
下图显示了3类IPv4地址的网络号和主机号是如何划分的。

图1 不同类型网络地址的格式及其区分
目前对于所描述的大型、中型和小型网络,是按照如下的方式映射到各类地址的:
- A类地址——用于大型网络,第1个八位组是网络号,后3个八位组是主机号。8位的网络号最多可以表示256个网络,而每个网络地址的主机号可以提供的主机数量为2^24或1, 677, 216。
- B类地址——用于中型网络。前2个八位组表示网络号,后2个八位组表示主机号。网络号和主机号的数量均为2^16或65535个。
- C类地址——对应于A类IP地址。前3个八位组表示网络号,最后1个八位组表示主机号。
如何区分不同类型的地址
对于所有的IPv4地址,都是32位的二进制字符串,所以需要有某种方法来区分一个特定的地址到底属于哪一类地址。
如图1中所示的:
- 对于A类地址,首个八位组的第1位,即32位字符串最左边的1位,总是被设置为0。所以对于前八位,可以很容易找到A类地址范围中的最小数和最大数,即0和127。但是例外的是:0被保留作为缺省地址部分,127被保留作为内部回送地址。剩下的十进制数则是1~126。其中最典型的127.0.0.1是给设备使用的环回地址,向自己给发送流量。发送到该地址的数据将会被直接送回给发送进程,而不会离开此设备。
- B类地址总是把左边的第1位设置为1,第2位设置为0。再次通过设置首个八位组的剩余位为0或者为1,可以得到128到191之间的IP属于B类地址。
- C类地址中,前2个均被设置为1,第3位被设置为0。这样设置之后,首个八位组在192~223之间。

图2 不同网络号的分布
事实上有很多地址都不会被分配,例如:
10.0.0.0~10.255.255.255
172.16.0.0.~172.31.255.255
192.168.0.0~192.168.255.255
这几个范围都是作为保留地址的,难怪路由器中老是192.168.xxx.xxx,原来是C类地址呀。
确定IP地址的网络号
有了以上的约定之后,可以通过首个八位组字节规则确定IP地址的网络类型,然后通过网络类型确定取前多少位,然后计算可得网络号,那么剩下的位数就是主机号咯。
比如:如果第1位是0,则需要读取前8位才能获取网络地址;如果前两位是01,那么需要读取16位。但是事情真的就是这么简单么???
IPv4地址(二)网络划分的更多相关文章
- IPv4编址及子网划分
在讨论IP编址之前,我们需要讨论一下主机与路由器连入网络的方法.一台主机通常只有一条链路链接到网络:当主机中的IP想发送一个数据报时,它就在链路上发送,主机与物理链路之间的边界叫做接口(interfa ...
- 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为环回地址 ...
- 计算机网络之IPv4(IPv4分组、IPv4地址、NAT、子网划分与子网掩码、CIDR、ARP协议、DHCP、ICMP)
文章转自:https://blog.csdn.net/weixin_43914604/article/details/105138313 学习课程:<2019王道考研计算机网络> 学习目的 ...
- 网络连接详细信息出现两个自动配置ipv4地址
问题:网络连接详细信息出现两个自动配置ipv4地址,一个是有效地址,一个是无效地址. 解决办法:先将本地连接ip设置成自动获取,然后点击开始——>运行——>输入cmd,回车,进入命令行界面 ...
- 网络连接详细信息出现两个自动配置ipv4地址的解决办法
问题描述:网络连接详细信息出现两个自动配置ipv4地址,一个是有效地址,一个是无效地址. 解决办法: 先将本地连接ip设置成自动获取 点击开始——>运行——>输入cmd,回车,进入命令行界 ...
- python网络编程——将IPv4地址转换成不同的格式
1.将IPv4地址转换为32位二进制格式,用做底层网络函数. import socket from binascii import hexlify def convert_IPv4_address() ...
- IPv4地址学习总结
一. IPv4地址格式 网络互连的一个重要前提条件是要有一个有效的地址结构,并且所有的互连网络用户都应遵守这个地址结构.因为只有这样所有的互连网络用户才能在统一的规定下相互之间通讯.这个地址结构可以有 ...
- ------- 当前全球最新的 IPv4 地址池使用报告 -------
-------------------------------------------------------------- 对于互联网行业相关的从业人员而言,时刻关注 IPv4 地址池的状态此类&q ...
- IP地址和子网划分学习笔记之《IP地址详解》
2018-05-03 18:47:37 在学习IP地址和子网划分前,必须对进制计数有一定了解,尤其是二进制和十进制之间的相互转换,对于我们掌握IP地址和子网的划分非常有帮助,可参看如下目录详文. ...
随机推荐
- 张孝祥JavaScript视频教程flash版
原文发布时间为:2008-09-16 -- 来源于本人的百度文章 [由搬家工具导入] 之前论坛有人发过RM版的,容量差不多有10G.现在这个是flash版的,只有1.2G共七部分. 第一部分:http ...
- 让Dropdownlist既有静态项又有动态项或者既能有编辑项又能绑定数据源
原文发布时间为:2008-10-27 -- 来源于本人的百度文章 [由搬家工具导入] protected void Page_Load(object sender, EventArgs e) //Dr ...
- [LeetCode] Compare Version Numbers 字符串操作
Compare two version numbers version1 and version2.If version1 > version2 return 1, if version1 &l ...
- unbuntu 矫正电脑系统时间
sudo tzconfig,如果命令不存在请使用 dpkg-reconfigure tzdata
- 记Django数据库迁移过程中遇到的一些问题
首先描述一下问题,Django 数据库使用的mysql, 然后开始没注意,没建一个default库,就把第一个数据库当成默认的了,结果Django的admin相关的那些表,都自动生成到这个库里了,现在 ...
- SVG描边动画实现过程
准备工具:Adobe AI+PS 1.确定SVG画布的大小,在PS中切出需要描边效果的区域,以此区域的大小做为SVG容器的大小. 2.将PS中切好的图片直接拖拽到AI中 3.使用AI中的钢 ...
- Codeforces Gym101522 C.Cheering-字符串 (La Salle-Pui Ching Programming Challenge 培正喇沙編程挑戰賽 2017)
C.Cheering To boost contestants' performances in the 20th La Salle - Pui Ching Programming Challenge ...
- Wannafly交流赛1 A 有理数[模拟/分类讨论]
链接:https://www.nowcoder.com/acm/contest/69/A来源:牛客网 题目描述 有一个问题如下: 给你一个有理数v,请找到小于v的最大有理数. 但这个问题的答案对于任意 ...
- Swoole MySQL 连接池的实现
目录 概述 代码 扩展 小结 概述 这是关于 Swoole 入门学习的第八篇文章:Swoole MySQL 连接池的实现. 第七篇:Swoole RPC 的实现 第六篇:Swoole 整合成一个小框架 ...
- 洛谷—— P1609 最小回文数
https://www.luogu.org/problemnew/show/1609 题目描述 回文数是从左向右读和从右向左读结果一样的数字串. 例如:121.44 和3是回文数,175和36不是. ...