网络知识之IP与子网掩码

6,537 阅读4分钟

一、背景

与外公司进行业务合作的时候,需要提供我司的出口ip,用来开通白名单。

去找公司运维问出口ip,得到答复说:XX.XX.XX.128/25 这个网段一百多个ip都是我们的ip

内心:???100+的ip?这个25代表什么?应该是误把255打成25了吧!恩,对的,应该是想说XX.XX.XX.128到XX.XX.XX.255这差不多有100多个的!!

但是毕竟是给外面公司,还是发扬不懂就问的精神吧!于是问了问这个25是什么,运维大哥回答说这是子网掩码。

幸好多问了一句,发现了个知识盲区,所以仔细去了解了下网络的基本知识,并整理记录下来。

二、IP

1.IP是什么

官方定义:IP地址是一种在Internet上的给主机编址的方式,也称为网际协议地址。IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。常见的IP地址,分为IPv4与IPv6两大类。主要介绍的是IPv4这一类。

2.IP的表现形式

IP地址是一个32位的二进制数,但为了方便记忆,通常被分割为4个"8位二进制数",并且用"点分十进制"表示为a.b.c.d的形式,其中a,b,c,d都是0~255之间的十进制整数。

3.IP地址分类

分类摘自百度百科
IP地址分为五类,各类可容纳的地址数目不同:

A类保留给政府机构(0.0.0.0到127.255.255.255)

B类分配给中等规模的公司(128.0.0.0到191.255.255.255)

C类分配给任何需要的人(192.0.0.0到223.255.255.255)

D类用于组播(224.0.0.0---239.255.255.255)

E类用于实验(240.0.0.0---247.255.255.255)

A、B、C三类中IP地址=网络地址+主机地址,而D、E两类不区分网络地址和主机地址

特殊说明:

(1)A类中的 10.X.X.X是私有地址;127.X.X.X是保留地址

(2)B类中的 172.16.0.0~172.31.255.255是私有地址

(3)C类中的 192.168.X.X是私有地址

4.网络地址和主机地址

网络地址可以简单理解我们平时常说的网段

主机地址则是在这个网段中不同设备的地址

那么提供一个IP地址,我们要怎么得到网络地址和主机地址呢?

这时候就轮到子网掩码上场了!

三、子网掩码

1.作用

子网掩码只有一个作用,就是将一个IP地址划分成网络地址和主机地址两部分。

(常见的掩码是由一连串1+一连串0构成的,不过看网上资料也说1和0交替也是可以的)

默认分配的子网掩码每段只有255或0

  • A类的默认子网掩码 255.0.0.0
  • B类的默认子网掩码 255.255.0.0  
  • C类的默认子网掩码 255.255.255.0     

2.原理

子网掩码与IP地址一样是32位地址,然后将IP地址与子网掩码进行与运算即可得到网络地址。

例:

IP地址为192.168.10.2,子网掩码为255.255.255.240。
先将十进制转换成二进制:
IP地址:  11000000 10101000 00001010 00000010
子网掩码: 11111111 11111111 11111111 11110000
进行与运算:--------------------------
          11000000 10101000 00001010 00000000
则可得其网络标识为192.168.10.0,主机标识为2。

3.掩码的不同表示形式

已经说过了子网掩码也是32位的地址,那么开头的25怎么转化呢?

25的意思是网络号为25,就代表连续的25个1,然后剩下的用0补齐

即11111111 11111111 11111111 10000000

4.包含的其他信息

还是以这个信息为例:XX.XX.XX.128/25,我们还可以拿到什么信息呢?

(1)主机号:主机号+网络号=32,32-25=7

(2)网络地址:当7位主机号全为0,也就是XX.XX.XX.128

(3)广播地址:当7位主机号全为1,也就是XX.XX.XX.255

(4)可用地址数量:7位主机号有2^7种结果,但是要去掉网络地址和广播地址,即:2^7-2=126(这个也就是运维所说的一百多个ip)

这些信息网上是有工具可以直接帮助计算的,只要了解原理即可。

四、最后

不要不懂装懂,多问问还是没什么坏处的。