(一)IP协议
ip报文大小:20-60Bit
TTL的作用:windows系统默认255,过一层路由-1.主要用来防止环路
Protocol:协议号,用来对接上层的接口
Q:为什么有MAC了还要有IP?
A:因为需要路由与寻址,用来定位属于哪个网络,MAC只能在1个广播域内使用。
1、IP地址分为网络为、主机位。
2、IP地址由32个二进制位组成,使用点分十进制表示。
二进制 0-1 2位
十进制 0-9 10位
十六进制 0-9,A-F 16位
A类 0开头 0.0.0.0 - 127.255.255.255
B类 10开头 128.0.0.0 - 191.255.255.255
C类 110开头 192.0.0.0-223.255.255.255
D类 1110开头 224.0.0.0 - 239.255.255.255
E类 1111开头 240.0.0.0 - 255.255.255.255
私有地址
10.0.0.0 - 10.255.255.255
172.16.0.0 - 172.31.255.255
192.168.0.0 - 192.168.255.255
二进制
128 64 32 16 8 4 2 1
子网掩码
128 192 224 240 248 252 254 255
可划分网段为 2的N次方
例子1:
192.168.1.0 二进制为 11000000.10101000.00000001.00000000
255.255.255.0 二进制为 11111111.11111111.11111111.00000000 掩码为1的位数为网络位,掩码为0的位数为主机位,掩码位数为24位,所以IP可写为192.168.1.0/24
根据IP与子网匹配,该主机位可用IP为28,2x2x2x2x2x2x2x2=256-2个特殊IP,可用IP为254个。
特殊IP分别为192.168.1.0(网络号),192.168.1.255(广播地址)这两个号的主机位为全0和全1.使用的时候系统会提示,主机位不可为全0或者全1
例子2:
172.129.138.59 二进制为 10101100.10000001.10001010.00111011
255.255.255.192 二进制为 11111111.11111111.11111111.11 000000 掩码为1的位数为网络位,掩码为0的位数为主机位,掩码位数为 26位,所以IP可写为172.129.139.59/26
根据IP与子网匹配,得出该网段可用IP为,掩码32-26=6,26, 2x2x2x2x2x2 = 64-2个特殊IP,可用IP为62个。
第一个IP为 10101100.10000001.10001010.00 000000 即172.129.138.0 但是该IP的主机位为全0,属于网络号,不属于可用IP。
最后一个IP为 10101100.10000001.10001010.00 111111 即172.129.138.63 但是该IP的主机位为全1,属于广播地址,不属于可用IP。
但经过计算,该网络的可用IP为172.129.138.1-172.129.138.62
例子3:
192.168.1.158 二进制为 11000000.10101000.00000001.10011110
255.255.255.248 二进制为 11111111.11111111.11111111.11111 000 掩码为1的位数为网络为,掩码为0的位数为主机位,掩码位数为29,所以IP可写为192.168.1.159/29
根据IP与子网匹配,该主机的可用IP为32-29 = 3。 23 = 2x2x2 = 8-2个特殊IP,可用IP为6个
第一个IP为: 11000000.10101000.00000001.10011 000 即192.168.1.152 但是该IP的主机位全0,属于网络号,不属于可用IP。
最后一个IP为: 11000000.10101000.00000001.10011 111 即192.168.1.159 但是该IP的主机位全1,属于广播地址,不属于可用IP。
经过计算,该网络的可用IP为6个:192.168.1.153,192.168.1.154 ,192.168.1.155,192.168.1.156,192.168.1.157,192.168.1.158
(二)IP报文:
IP包分片:把一个数据包分为2个。
MTU:最大传输单元,默认大小为1500字节
总结:
1、子网掩码的作用?
答:用来区分网络位和主机位。
2、IP报文中的TTL的作用是什么?
答:防止环路
3、网关的作用是什么?
答:实时不同网段之间互访
(三)数据通讯的过程
PC1
1、从高层向下封装数据,至3层时封装目标IP 2.2.2.2 ,源IP为自己的IP。
2、数据包接着来到2层进行封装,目标MAC为R1网关的MAC,源MAC为自己,TYPE为IP报文类型的0X0800,然后向下通过物理层以后将数据包发送至R1 GE0口。
R1
1、R1接收到数据包以后,检测到2层目标MAC地址为自己,于是进行解封,解封以后发现Type为IP类型,于是交给三层进行处理。
2、三层看到目标IP是2.2.2.2,不符合自己的IP,并且查到IP路由表里有去到2.2.2.2的路由,出口为GE1口,于是通过ARP向R2路由器请求GE01的MAC,并且对二层重新进行封装,目标MAC为下一条R2路由器的GE1口的MAC,源MAC为自己的MAC。然后向R2发送数据包。
R2
1、R2接受到数据包以后,检测2层目标MAC地址为自己,于是进行解封,解封以后发现Type类型为IP类型,于是交给三层进行处理。
2、三层看到目标IP为2.2.2.2,不符合自己的IP,并且查到2.2.2.2这个IP和自己同网段,出口为GE0口,于是从新进行2层封装,然后将数据包通过GE0口发送至目标PC。
PC2:
1、PC2接到数据包以后,检测二层目标MAC地址为自己,于是进行解封,解封以后发现Tpye类型为IP类型,于是交给三层进行处理。
2、三层看到目标地址也为2.2.2.2,符合自己的IP。于是进行解封,然后交给上层进行处理。
原文:https://www.cnblogs.com/noyes1985/p/11172856.html