二进制数和十进制数的相互转换:
如:192.168.122.123
那么当前的一组Ipv4地址是由32位二进制数组成的,然后把32位划分为了4组,每一组都用十进制数来表示。也就是说一组十进制数由8位二进制数组成,如“192”。
把192转为二进制数为11000000,而转换的方法为以192除以2,除尽余“0”,除不尽余“1”,最后从下往上倒数而上就是“11000000”
看下面的方法,把“192”转换为二进制数:
所以“192”的二进制数为“11000000”
而如何将二进制数又转换回十进制数呢,看下面的方法:
“11000000”= 1x27+1x26+0x25+0x24+0x23+0x22+0x21+0x20
=128+64+0+0+0+0+0+0
=192
*版本version ,IPv4的版本号。
*首部长度是可变长的IP包头长度,最多可以达到60个字节。因为长度可变,因此需要定义。而“首部长度”和下面的“可选项”是有对应关系的。
*优先级与服务类型,简称为“TOS”提供3层的QOS。
*总长度是指的整个数据包的大小。
*IP层 上层来的数据到IP层会被分段,这几个字段用来对数据包进行标识,使在数据到达目的端重组的时候,不会乱序。由“标识符”、“标志”、“段偏移量”三项组成。
*路由器的一个端口通过的一个数据包是1500个字节。
*TTL值叫做生存周期,经过一个路由器值减1,为0时,数据包丢弃。为了防止一个数据包在网络中无限的循环下去。默认是255。
*协议号,协议字段,用来标识封装的上层数据是UDP还是TCP,UDP协议号是17,TCP协议号是6。
*首部效验和是针对整个数据包做效验的。
*源地址也就是源IP
IP地址的作用:
--用于标识设备在网络中的具体位置。
--每个主机(计算机、网络设备、外围设备)都有独一无二的IP地址
--主机ID:
*标识每个独立的主机
*由组织分配给各设备
也就是一个IP地址分为: IP地址=网络位+主机位
而IP地址有分为三大类:
例如“192.168.1.1”就是一个“C”类地址。
0.0.0.0 代表的是所有网段也是作为保留网段的。
而作为可用的私有IP地址网段在各网段分别为:
A类:10.0.0.0 to 10.255.255.255
B类:172.16.0.0 to 172.31.255.255
C类:192.168.0.0 to 192.168.255.255
总结如下:
1. A类地址255.0.0.0/8
(1) A类地址第1个字节为网络地址,其他3个字节为主机地址。
(2) A类地址的范围:1.0.0.1—126.255.255.254
(3) A类地址中的私有地址和保留地址:
110.x.x.x是私有地址(所谓的私有地址就是在互联网上不使用,而被用在局域网络中的地址)。范围(10.0.0.0---10.255.255.255)。
2127.x.x.x是保留地址,用做循环测试用的。
2. B类地址255.255.0.0/16
(1) B类地址第1个字节和第2个字节为网络地址,其它2个字节为主机地址。
(2) B类地址范围:128.0.0.1—191.255.255.254
(3) B类地址的私有地址和保留地址
1172.16.0.0—172.31.255.255是私有地址
2169.254.x.x是保留地址,如果你的IP地址是自动获取IP地址,而你在网络上又没有找到可用的DHCP服务器,就会得到其中一个地址。
3. C类地址255.255.255.0/24
(1)C地址第1个字节、第2个字节和第3个字节为网络地址,第4个字节为主机地址。另外第1个字节的前三位固定为110。
(2)C类地址范围:192.0.0.1---223.255.255.254
(3)C类地址中的私有地址:192.168.x.x是私有地址。(192.168.0.0—192.168.255.255)
4. D类地址
(1)D类地址部分网络地址和主机地址,它的第1个字节的前四位固定为1110。
(2)D类地址范围:224.0.0.1—239.255.255.254
5. E类地址
(1)E类地址部分网络地址和主机地址,它的第1个字节的前五位固定为11110。
(2)E类地址范围:240.0.0.1—255.255.255.254
举例“256.241.201.10”这个地址不属于任何类别,因为它是不存在的IP地址。
等长子网划分:fsm
举例:192.168.10.0/26255.255.255.192
那么这样的一组地址是一个C类地址,可是后面的后缀为26,表示从主机位借了2位出来即{24+2=26},那么我们知道一个主机位由8位二进制数表示,那么从这个8位里面借出了2位。就相当于:本来应该如果是24的后缀,那么掩码就应该是255.255.255.0 ,在这里我们把这最后一个“0”看成一个二进制数表示的8位数字就是:00000000 而在这里借出来2位,就成为了“11000000”转换成十进制数就是1x128+1x64+0+0+0+0+0+0=192。所以“192.168.10.0/26”的子网掩码就应该是“255.255.255.192”。
借了2位过来构成了一个子网位。
而子网数=2的2次方,2次方就是借来的两位,那么等于4,也就是划分出来了4个子网。
那么每一个子网的主机数=2的6次方-2=62.(“2的6次方”为什么是6次方呢,因为之前借出了2个主机位,那么就还剩下6个主机位,用这剩下的6个主机位作为2的次方。每一个子网里面有64个IP,但是第一个和最后一个是不能使用的,所以要减去2个,那么可用就的就只有62个。)
那么这四个子网分别是:
网络ID 不可用 可用的地址 本网广播不可用
192.168.10.0/26 192.168.10.1-192.168.10.62 192.168.10.63
192.168.10.64/26 192.168.10.65-192.168.10.126 192.168.10.127
192.168.10.128/26 192.168.10.129-192.168.10.190 192.168.10.191
192.168.10.192/26 192.168.10.193-192.168.10.254 192.168.10.255
可变长子网划分:vfsm
192.168.10.0/24
需要每个子网的主机数100 50 25 8 5
0 0 0 0 0 0 0 0
/25 /26 /27 /28 /29 /30 借位只能借到6位最多,每个里面有2
128 64 32 16 8 4 个不能用。
用100去跟下面的数去比较,那么显然只有第一个借1位的128个主机数可以满足条件。
那么同样50的话,只能用借2位的64个主机数才可以满足条件,以此类推。
那么:
1192.168.10.0/25---------给100的使用 255.255.255.128
0+128=128
2192.168.10.128/26-----------给50的使用255.255.255.192
128+64=192
3192.168.10.192/27-------给25的使用 255.255.255.224
192+32=224
4192.168.10.224/28---------给8的使用 255.255.255.240
224+16=240
5192.168.10.240/29------给5的使用 255.255.255.248
240+8=248
6192.168.10.248/29------其他剩余的几个地址。
路由汇总:
如果都化成二进制数来看,那么前面的21位都是一样的。如图:
然后把这8个子网进行与运算,最后与出来的结果就是“172.16.168.0/21”前21位都是一样的。
与运算的方法: 与运算是按照这个规则来进行的。
举例: 第三个八位组的二进制数
172.16.16.0/24 00010000
172.16.17.0/24 00010001
172.16.18.0/24 00010010
172.16.19.0/24 00010011
-----------------------------------------------------------
进行与运算: 00010000 = 16
那么加上前面两个八位组就是8+8+6=22,也就是说前面22位是一样的。
那么最后的结果就是172.16.16.0/22 255.255.252.0 (这里是主机位少两位,而最后的255又不可用,所以是254-2=252的第三位子网掩码。
小知识:IP地址的子网掩码从24的后缀开始,向上增加的子网划分,越大越少,最大可以借到第6位,都是在255个地址之内的划分。而逆向减少后缀则越小越多,一个网段可以有21个亿左右的可用IP地址。最低可以减少到1的后缀。
超网supernet.
172.16.16.0/24 192.168.16.0/24
172.16.17.0/24 192.168.17.0/24
172.16.18.0/24 192.168.18.0/24
172.16.19.0/24 192.168.19.0/24
那么左边的这个是B类地址,而右边的这个是C类地址,可是他们与出的最终结果却是:
172.16.16.0/22 由于本身就是B类地址,22的后缀比24小故而正常。
192.168.16.0/22 由于与出来的结果,后缀小于24,而它又是C类地址,应该要大于24的后缀才正常,所以叫做超网,而有的路由器是不支持超网的。