网络协议
一、TCP/IP五层
OSI的七层是开放式的,没有去指定某一组对应的协议,TCP/IP五层和TCP/IP协议簇相吻合
应用层
- FTP:TCP/20/21
- Telnet:TCP/23
- SSH:TCP/22
- DNS:TCP/53 UDP/53
- HTTP:TCP/80
- DHCP:UDP/67/68
- HTTPS:TCP/443 UDP/443
- SMTP:TCP/25
- POP3:TCP/110
- IMAP4:TCP/143
- RDP:TCP/3389
- SMB:TCP/445/139/137/138
传输层
- TCP协议
- UDP协议
- 应用层的所有协议都是基于传输层的某个端口号(http协议是基于传输层TCP的80端口)
网络层
- IPv4数据包格式
- 版本:标识IP协议版本,一般为4,IPv4
- 首部长度
- 服务访问质量
- 总长度
- 标识、标志、段偏移量
- **TTL:**生命周期,主要是防止一个数据包在网络中不停传输,当生命周期为0,路由器会直接丢弃数据包
- 协议:标识上层协议的类型(TCP:6, UDP:17,OSPF:89)
- 首部校验
- 源地址
- 目的地址
- 数据
- 可选项
数据链路层
- 数据帧的格式(范围:64~1518字节)
- 目的MAC:6字节
- 源MAC:6字节
- TYPE类型:2字节,标识上层(网络层)数据协议类型(0x0800:IP数据包,0x0806:ARP报文,0x0059:OSPF报文)
- 数据字段:46~1500字节
- 帧校验:4字节
- MAC地址
- 单播地址:第8位为0
- 组播地址:第八位为1
- 广播地址:FF-FF-FF-FF-FF-FF
- 填充地址:00-00-00-00-00-00 一般只会在ARP报文中封装
物理层
二、协议
1、ARP协议
-
地址解析协议:将一个IP地址解析为MAC地址(源主机发生ARP广播报文去请求目的主机的MAC地址,目的主机收到请求报文后,进行单播响应自己的MAC地址)
-
二层交换网络中,相互通信使用的是物理地址交互
-
ARP地址报文:封装在数据链路层的上层
- 硬件类型:网络接口(网卡)的类型
- 协议类型:需要解析的IP地址类型
- 硬件地址长度
- 协议地址长度
- opcode:操作码(表示报文是请求[1]还是响应[2])
- 发送方的MAC地址
- 发送方的IP地址
- 接收方的MAC地址:在ARP的广播请求报文中,此地址一般为填充地址
- 接收方的IP地址
-
容易造成ARP攻击和欺骗
- 攻击:发送虚假的MAC响应报文,使得目标主机无法访问网络
- 欺骗:发送真实的MAC响应报文,截获目标