说到IP,这两个字母大家非常熟悉,我们一般说IP地址,那么这是怎么回事呢???我们先来搞清楚这个问题:
在网际层,存在IP地址,用来唯一识别网际层中的路由器和主机,用四个字节32位表示
我们通常还会说一个叫物理地址的东西,它是什么呢???
在数据链路层中,与主机相连的网卡都有一个唯一识别标号,这个标号叫做物理地址,物理地址是厂家生产出网卡的时候就是确定的,用户不能修改,用48位表示。
有关数据链路层的协议,我的前面两篇微博说的很清楚,现在来讲网际层的IP协议:
在网际层,只是向上也就是传输层提供简单灵活的、无连接的、尽最大努力交付数据的能力。而且网际层不提供质量保证。
1、IP地址分类:
我们根据IP地址的不同,将IP地址分为不同的类:
网络类别 | 第一个可指派的网络号 | 最后一个可指派的网络号 | 每个网络中的最大主机号 |
A | 1 | 126 | 16777214 |
B | 128.1 | 191.255 | 65534 |
C | 192.0.1 | 223.255.255 | 254 |
当一台主机活路由器同时处于好几个网络中时,他就有几个IP地址,但是它的物理地址是唯一的。
2、ARP协议:
ARP协议:也就是地址解析协议,解析什么地址呢??
在网际层中,我们需要将IP地址解析为物理地址,以便于我们寻找主机,完成数据传输。
我们首先来我们在局域网内部进行数据传输,不必经过路由器,在此时我们怎样实现传输呢???
首先,假设我们从主机C1到C2传输数据,因为此时在局域网内部,不必进行路由器转发,主机C1在ARP高速缓存中查找是否存在C2的物理地址,如果存在,直接发送,不存在的话,主机C1在局域网内部广播一个ARP请求,请求的内容类似于“我的IP地址是XXXX,我的物理地址是XXXX,我想要和IP地址是XXXX的主机通信”,当除了C2的当前局域网内部的主机接收到这个信号时,忽略这个请求,只有当C2收到这个请求时,向C1主机发送ARP响应分组。并将C2的物理地址写入高速缓存中,以备后面使用。
当要通信的两台主机处于不同的网络时,我们需要路由器进行转发,基本步骤类似的,不同的是,我们需要先和路由器进行通信,通过路由器去查找目标主机的物理地址。