博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
IP地址表达方式
阅读量:5786 次
发布时间:2019-06-18

本文共 2507 字,大约阅读时间需要 8 分钟。

IP地址表达

IPv4地址是四个字节表述,最大表示范围是

255.255.255.255

网络区域

首先在 255.255.255.255 这么大的一个网络中有(4,294,967,294个可用IP),一台计算机在这么大一群网络地址中想要快速路由到最终主机上很难实现,这相当于网络设备在转发数据包时,要在约 40亿次的查找才能找到最终的目标主机。

同时为了更好管理网络地址分配问题,就出现了网络区域这么一个概念。也就是所知的划子网。

说到子网一定会 提到 子网掩码,这两者的关系是这样的

一个IP地址 255.255.255.255 可以看做 11111111.11111111.11111111.11111111 这样一个二进制数。

在这个 4 组 8个1 的数字中分为前后两段,前面一段表示网络号,后面一段表示主机IP。就有了 <网络号><主机ID>

那么仅有一个4字节数是无法表示这个信息的,这时候就引入了另外一个四字节数,这就是所谓的 子网掩码。

子网

子网掩码的目的就是在一个 IP 地址上标记出,那一部分是网络ID,那一部分是主机ID。算子网的规则如下:

例如主机IP:192.168.1.10,子网掩码:255.255.255.0,网关地址为:192.168.1.1 的网路环境

其中:

IP地址:192.168.1.1 -> 11000000.10101000.00000001.00000001
子网掩码:255.255.255.0 -> 11111111.11111111.11111111.00000000

计算子网的网络ID(按位与运算):

11000000.10101000.00000001.0000000111111111.11111111.11111111.00000000

结果为:

11000000.10101000.00000001.00000000

在这个子网中拥有的最大 IP 数为: 255个

11111111.11111111.11111111.<可用的IP范围>

通常在一个子网网络中存在下面几个角色,它们的IP地址分配是固定的:

IP地址:192.168.1.1 -> 11000000.10101000.00000001.00000001

子网掩码:255.255.255.0 -> 11111111.11111111.11111111.00000000
网关IP:第一个IP -> 11000000.10101000.00000001.00000001 -> 192.168.1.1
广播IP:最后一个IP -> 11000000.10101000.00000001.11111111 -> 192.168.1.255

参考例子1:

image.png

CIDR 表述法

完整的表述一个主机所处的网络应该具有两个信息,1主机IP地址,2 主机所在网络的子网掩码。

有了子网掩码和主机ID,就可以计算出网络ID,从而得到整个网络信息。

CIDR 表示法是在已有主机IP的基础上,在后面增添一个 / 然后填写上,子网掩码中二进制位 1 的数量。例如子网掩码:255.255.255.0,一共有 24个 bit位都是 1.

例如: 上面IP为192.168.1.1,子网掩码:255.255.255.0

转换为CIDR 表述法为:192.168.1.1/24

网络分类

除了上面这些知识之外,还会经常听到 A类、B类、C类地址。

所谓 A类、B类、C类是 人为进行网络管理的一个方法,计算机在处理网络传输的时是按照上面的方式进行转发。网络分类只是用于人为管理。

下面这段是摘抄自 百度百科中有关 A类、B类、C类的解释

IP地址根据网络号和主机号的数量而分为A、B、C三类:IP地址用二进制来表示,每个IP地址长32bit,比特换算成字节,就是4个字节。例如一个采用二进制形式的IP地址是“00001010000000000000000000000001”,这么长的地址,人们处理起来也太费劲了。为了方便人们的使用,IP地址经常被写成十进制的形式,中间使用符号“.”分开不同的字节。于是,上面的IP地址可以表示为“10.0.0.1”。IP地址的这种表示法叫做“点分十进制表示法”,这显然比1和0容易记忆得多。

A类IP地址

用可变的7位(bit)来标识网络号,可变的24位标识主机号,最前面一位为"0",即A类地址的第一段取值介于1~126之间。A类地址通常为大型网络而提供,全世界总共只有126个A类网络,每个A类网络最多可以连接16777214台主机。其中 1~126之间

A类地址:01111111.00000000.00000000.00000000 -> (1~126).0.0.0

A类地址可用地址范围:01111111.<00000000.00000000.00000000> 三个字节可表述范围为:16777215

B类IP地址

用可变的14位来标识网络号,可变的16位标识主机号,前面两位是"10"。B类地址的第一段取值介于128~191之间(网络号不能以数字127开头,数字127是专门保留给诊断用的,如127.0.0.1是回送地址,用于回路测试),第一段和第二段合在一起表示网络号。B类地址适用于中等规模的网络,全世界大约有16000个B类网络,每个B类网络最多可以连接65534台主机。

C类IP地址

用可变的21位来标识网络号,可变的8位标识主机号,前面三位是"110"。C类地址的第一段取值介于192~223之间,第一段、第二段、第三段合在一起表示网络号。最后一段标识网络上的主机号。C类地址适用于校园网等小型网络,每个C类网络最多可以有254台主机。

IPv6

IPv6 有128位可以使用,比起 ipv4 的 32 位来说扩大了不知多少倍。 即便如此 ipv6 在ip 划分上也是遵循上述逻辑。

QA

问:192.168.1.10 和 192.168.10.3 在一个网段里嘛?

答:看子网,如果子网掩码为:255.255.240,那么就会在同一个网段里

image.png

转载地址:http://vityx.baihongyu.com/

你可能感兴趣的文章
Puppet 配置管理工具安装
查看>>
Bug多,也别乱来,别被Bug主导了开发
查看>>
sed 替换基础使用
查看>>
高性能的MySQL(5)创建高性能的索引一B-Tree索引
查看>>
oracle备份与恢复--rman
查看>>
图片变形的抗锯齿处理方法
查看>>
Effective C++ Item 32 确保你的 public 继承模子里出来 is-a 关联
查看>>
phpstorm安装laravel-ide-helper实现自动完成、代码提示和跟踪
查看>>
python udp编程实例
查看>>
TortoiseSVN中图标的含义
查看>>
Tasks and Back stack 详解
查看>>
关于EXPORT_SYMBOL的作用浅析
查看>>
成功的背后!(给所有IT人)
查看>>
在SpringMVC利用MockMvc进行单元测试
查看>>
Nagios监控生产环境redis群集服务战
查看>>
Angular - -ngKeydown/ngKeypress/ngKeyup 键盘事件和鼠标事件
查看>>
Android BlueDroid(一):BlueDroid概述
查看>>
Java利用httpasyncclient进行异步HTTP请求
查看>>
宿舍局域网的应用
查看>>
html代码究竟什么用途
查看>>