1、查询方法
2、IP地址是一个网卡在网络世界通讯的地址,相当于我们现实世界的门牌号;就是一个IP,这个地址被分为4部分,每个部分8个bit ,取值0或者1,所以IPV4的地址每位的取值范围是0~255,所以IP地址总共是32位;ipv6是128位,
1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
32 位的IP地址被分为5类:
对于ABC类主要分为两部分,前面一部分是网络号,后面一部分是主机号,下面是ABC三类地址能包含的主机数量:
类别 | IP地址范围 | 最大主机数 | 私有IP地址范围 |
A | 0.0.0.0—127.255.255.255 | 16777214 | 10.0.0.0—10.255.255.255 |
B | 128.0.0.0—191.255.255.255 | 65534 | 172.16.0.0—172.31.255.255 |
C | 192.0.0.0—223.255.255.255 | 254 | 192.168.0.0—192.168.255.255 |
3、无类型域间选路(CIDR)
这种方式打破原来的设计地址的做法,将32位地址一分为二,前面是网络号,后面是主机号;
从哪里分呢?
10.100.122.2/24,这种地址表示形式就是CIDR,后面的24表示的是,32位中,前24位是网络号,后8位是主机号。
伴随着CIDR存在的,一个是广播地址,10.100.122.255。如果发送这个地址,所有10.100.122网络里面的机器都可以收到。另一个是子网掩码,255.255.255.0。
将子网掩码和IP地址做AND计算,就可得到网络号;前面三个255,转换成二进制都是1,1与任何数取AND,都是原来的值,因而前三个数不变,为10.100.122。后面一个0,转换二进制是0,0与任何数取AND都是0,因而最后一个数是0,合起来就变成10.100.122.0,这就是网络号。
4、公有IP地址和私有IP地址
在日常工作中,几乎不用划分A类、B类和C类,所以时间长了,人们就忘记这个分类。而只记得CIDR。但是有一点还是要注意的,就是公有IP地址和私有IP地址。
表格右侧是私有IP地址,平时我们看到的数据中心里,办公室、家里或者学校的IP地址,一般都是私有地址IP段。因为这些地址允许组织内部的IT人员自己管理、自己分配,而且可以重复。因此你学校的某个私有IP地址段可以和我学校的重复,就像两个不同的小区都可以叫6栋,但一旦出了小区,就需要用公有IP地址,就像人民路888号,是国家统一分配的,不能两个小区都叫人民路888号。
公有IP地址有个组织统一分配,你需要去买。如果搭建一个网站给你学校人使用,让你们学校的IT人员给你个IP地址就行。但是如果做一个像淘宝一样的网站,就需要有公有IP地址,这样全世界都可以访问。
表格中192.168.0.x是做常用的私有IP地址。你家WiFi,对应就有一个IP地址。一般你家里上网设备不会超过256个,所以/24就够用了,有时候能见到/16的CIDR,这两种是最常见的,也是最容易理解的。
不需要将十进制转换成二进制32位,就能明显看出192.168.0是网络号,后面是主机号。而整个网络里面第一个地址192.168.0.1,往往就是这个私有网络的出口地址。例如,你家电脑链接WiFi,WiFi路由器地址就是192.168.0.1(一般路由器地址在路由器下面),而192.168.0.255就是广播地址。一旦发送这个地址,整个192.168.0网络里面的所有机器都能收到。
但是也不总是这样的情况,因此,其他情况往往很难理解,还容易犯错。
5、举例:一个容易犯错的CIDR
16.158.165.91/22这个CIDR。求一下这个网络的第一个地址。子网掩码和广播地址?
你要是上来就写16.158.165.1,那就打错特错了。
/22不是8的倍数,不好办,只能先变成二进制,16.158的部分不动,他占了前16位。中间的165,变成二进制为10100101,除了前面16位,还剩6位,所以这8位中前6位是网络号,16.158.<101001>,而<01>.91是机器号。
第一个地址是16.158.<101001><00>.1,即16.158.164.1.子网掩码是255.255.<111111><00>.0,即255.255.252.0。广播地址为16.158.<101001><11>.255,即16.158.167.255。
在IP地址后面有个scope,对于eth0这张网卡来讲,是globle,说明这张网卡是可以对外的,可以接收来自各个地方的包,对于lo来讲,是host,说明这张卡仅仅可以供本机相互通信。
lo全称是lookback,又称环回接口,往往会被分配到127.0.0.1这个地址,这个地址用于本机通信,经过内核处理后直接返回,不会在任何网络中出现。