IP 地址分为哪几类?
IP 地址 ? 分为哪几类 ?
IP 地址就是给互联网上的每一台主机(或路由器)的每一个接口分配一个在全世界范围内是唯一的 32 位的标识符。IP 地址的结构使我们可以在互联网上很方便地进行寻址。IP 地址现在由互联网名字和数字分配机构 ICANN
(Internet Corporation for Assigned Names and Numbers)进行分配 ?。
分类就是将 IP 地址划分为若干个固定类,每一类地址都由两个固定长度的字段组成,其中第一个字段是网络号(net-id),它标志主机(或路由器)所连接到的网络。一个网络号在整个互联网范围内必须是唯一的。第二个字段是主机号(host-id),它标志该主机(或路由器)。一台主机号在它前面的网络号所指明的网络范围内必须是唯一的。所以,一个IP地址在整个互联网范围内 ? 是唯一的 ?。
- ✅ A 类、B 类和 C 类地址的网络号字段(在图中这个字段是灰色的)分别为1个、2个和3个字节长,而在网络号字段的最前面有 1~3 位的类别位,其数值分别规定为 0 ,10 和 110 代表 ? 类 ? 类地址。
- ✅ A 类、B 类和 C 类地址的主机号字段分别为 3 个、2 个和 1 个字节长。
IP 地址并不仅仅指明一台主机,而是还指明了主机所连接到的网络。
为了提高可读性,我们常常把 32 位的 IP 地址中的每 8 位插入一个空格(但在机器中并没有这样的空格)。为了便于书写,可用其等效的十进制数字表示,并且在这些数字之间加上一个点。
常用的三种类别的 IP 地址 ?
A 类地址的网络号字段占 1 个字节,只有 7 位可供使用(该字段的第一位已固定为 0 ),所以可指派的网络号是 126 个(即 27–22^7 – 227–2 )。
解释一下减 2 的原因(去掉第一个和最后一个):
- 1️⃣ 第一,IP 地址中的全 0 表示 “这个(
this
)”。网络号字段为全 0 的 IP 地址是个保留地址,意思是 “本网络” ; - 2️⃣ 第二,网络号为127(即
01111111
)保留作为本地软件环回测试(loopbacktest)本主机的进程之间的通信之用。若主机发送一个目的地址为环回地址(例如127.0.0.1)的IP数据报,则本主机中的协议软件就处理数据报中的数据,而不会把数据报发送到任何网络。
◼ A 类地址的主机号占 3 个字节(24位),因此每一个 A 类网络中的最大主机数是 224 – 2 ,即16777214
。
这里减 2 的原因是(同样也是去头去尾):
- 1️⃣ 全 0 的主机号字段表示该IP地址是 “本主机” 所连接到的单个网络地址(例如,一主机的IP地址为5.6.7.8,则该主机所在的网络地址就是5.0.0.0),
- 2️⃣ 而全 1 表示“所有的(all)”,因此全 1 的主机号字段表示该网络上的所有主机。
IP 地址空间共有 232(即4294967296)个地址。整个A类地址空间共有 231 个地址,占整个IP地址空间的50%。
B 类地址的网络号字段有 2 个字节,但前面两位(101010)已经固定了,只剩下 14 位可以进行分配。
◼ 但实际上 B 类网络地址 128.0.0.0 是不指派的,而可以指派的 B 类最小网络地址是 128.1.0.0 。因此B类地址可指派的网络数为 214−1 ,即 16383。
◼ B 类地址的每一个网络上的最大主机数是 216–2,即 65534 。这里需要减 2 是因为要扣除全 0 和全 1 的主机号。整个 B 类地址空间共约有 230 个地址,占整个 IP 地址空间的 25%。
C 类地址有 3 个字节的网络号字段,最前面的 3 位是(110)(110)(110),还有 21 位可以进行分配。
◼ C 类网络地址 192.0.0.0 也是不指派的,可以指派的 C 类最小网络地址 192.0.1.0,因此 C 类地址可指派的网络总数是 221−1 ,即 2097151 。
◼ 每一个 C 类地址的最大主机数是28–2,即 254 。整个 C 类地址空间共约有 229 个地址,占整个 IP 地址的 12.5%。
- 细数那些在2017年被黑客滥用的系统管理工具和协议
- Compass: 在你的应用中集成搜索功能
- 列表选择Spinner
- 巧用CSS3 :target 伪类制作Dropdown下拉菜单(无JS)
- 开源的虚拟机软件 VirtualBox v1.5.2
- Farseer:一个用于Silverlight和XNA的开源物理引擎
- Visual Studio 2008 debug的时候发生郁闷的错误ContextSwitchDeadlock was detected
- LINQ TO XML
- 不被未来折叠掉:AI时代下的思考
- Google 分析的基准化测试
- WebFont 三宗罪之一:WebFont 与 FOUT
- 探究基于声明的身份标识
- 深化“互联网+先进制造业”发展工业互联网的系列解读二:打造平台体系
- WebFont 三宗罪之二:吹毛求疵的WebFont 渲染差异
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法