【网络】IP协议和ARP协议!!
IP协议和ARP协议
IP协议
IP协议属于网络层的协议,是一个无连接、不可靠的协议。主要的作用是在复杂的网络中寻找合适的传输路径。
IP协议的报头结构:
- 版本:IP协议的版本(IPv4、IPv6)
- 首部长度:IP协议的首部长度,四个字节最大为15,所以IP报头的最大长度为15*4 = 64字节
- 区分服务:
- 总长度:IP报文的总长度
- 标识:当IP报文经过分片之后的标号
- 标志位:第一位R保留,第二位DF标识是否可以分片,第三位MF标识是否是最后一片。
- 片偏移:在原数据中相对于首部的偏移量
- 生存时间:IP报完能够在网络中生存的时间(最大64跳)
- 协议:记录上层协议的类型
- 首部校验和:计算IP头部的校验和,保证IP头部的完整性
- 源地址和目的地址:标识自哪里来和到哪里去
IP网段划分
IP分为网络号和主机号。
网络号:为了使在连接的两个网段有不同的标识
主机号:在同一局域网内有不同标识
在使用IP地址和子网掩码做&运算的时候就可以得到本主机所在的网络号。
私有IP和共有IP
192.168.*,前16位是网络号,包含在这范围中的称为私有IP,其余的都是公网IP。
1. 一个路由器可以配置两个IP,一个是WAN口IP,一个是LAN口IP
2. 路由器LAN口连接的主机都从属于当前路由器的子网之中
3. 不同的路由器子网IP都是一样的(192.168.*.1)子网内的IP地址不能重复,但是在不同子网的IP就可以重复
4. 如果本局域网内的主机需要访问本局域网意外的主机,那么当数据交给路由器的时候,路由器会将源IP替换成路由器的IP。同时在路由器的转换表里面添加源主机IP和端口号的映射关系,以便返回信息能够准确返回到源主机。
在数据报传送到目标局域网的时候,如果需要准确的将数据传输到指定的主机,那么还需要知道目的主机的MAC地址,这时候就需要使用ARP协议来获取目的主机的MAC地址。
ARP协议
ARP协议是处于数据链路层和网络层之间的协议,只要用来将IP地址和MAC地址建立映射。
工作流程
- 查询ARP缓存表,如果能够查找到目的主机的MAC地址,则将MAC帧里面的目的地址替换成寻找到的MAC地址。
- 如果没有在缓存表里面查找到目的MAC地址,那么源主机会发送ARP请求,并将这个请求广播到本地网段(将目的MAC地址置位FF.FF.FF.FF.FF.FF)
- 在局域网内所有的主机都会收到ARP请求,但是只有当目的IP和自己的IP相对应的时候才会接受请求,并且处理请求内容,如果目的IP和自己的IP不对应,那么会自动丢弃请求报文。
- 当获取到目的主机的MAC地址之后,将目的MAC地址进行添加,将数据报发送至目的主机。