上文我们介绍了OSI七层模型和TCP/IP模型,接下来我们介绍打工人,

各协议对应的TCP/IP层次
Ethernet:以太网协议,用于实现链路层的数据传输和地址封装(MAC),由DIX联盟(Digital、Intel、Xerox)开发

数据帧结构
三个字段:
Destination/目的字段:标识目的通信方的MAC地址
Source/源字段:标识发送端的MAC地址
Type/类型值:标志上层协议
MAC地址:
①所有设备的MAC地址都是 全球唯一 的;
②MAC地址是16进制表示的,长度为 48bit ,采用 冒号分16进制表示;
01010100 10101010 10101111 11110000 2^48
③MAC地址前半部分被称为“OUI代码”厂商唯一标志符,用于唯一标志一个企业/公司,例如思科、TP-LINK、华为;后半部分厂商自行分配
## 以太网协议仅仅是链路层/局域网通信中的一种标准,还有其他链路层协议,令牌网、总线网、FDDI网…
====================================================================
IP协议:Internet Protocol,互联网协议,用于实现数据的不可靠面向无连接的通信,实现三层数据封装与IP寻址。

IP协议数据包头部结构

IP协议数据包头部结构
我们要仔细研究上面两张图,一张是理论图,一张是现实的数据包
我们来解释下这些项目到底什么意思
|
版本号 |
表示IP协议版本 |
|
头部长度/总长度 |
头部长度(默认为20字节),总长度;区分IP头部和数据包,接收方根据长度字段知道从哪里解封装 |
|
DSCP/TOS |
QoS服务质量技术用于实现流量标记 |
|
标识符 |
用于标志分片的进程 |
|
标志符 |
MF更多位用于告知接收方是否还有分片,0表示没有,1表示有;DF不要分片位告知途径设备不要进行分片 |
|
分片偏移 |
用于告知接收方每个分片距离IP头部的位置,才能实现有序的重新组装 |
|
生存时间 |
TTL,最大为255,标志路径长短,防止环路 |
|
协议号 |
标志上层协议 |
|
头部校验和 |
验证数据包的完整性 |
|
源地址 |
标志发送方IP地址 |
|
目的地址 |
标志接收方IP地址 |
请各位牢记这些,提一下当路由器收到一个TTL=0的数据包时,则宣告此数据包死亡并丢弃。每经过一“跳”TTL减去一。
====================================================================
我们再了解一个最不安全的协议:ARP
它是最容易遭到攻击的协议,不胜枚举呀。。。
ARP:地址解析协议,Address Resolution Protocol,用于实现IP地址到MAC地址映射(知道IP问MAC),实现数据的封装过程。ARP协议是在Ethernet以上,属于网络层。
第1步:根据主机A上的路由表内容,IP确定用于访问主机B的转发IP地址是192.168.1.2。然后A主机在自己的本地ARP缓存中检查主机B的匹配MAC地址。
第2步:如果主机A在ARP缓存中没有找到映射,它将询问192.168.1.2的硬件地址,从而将ARP请求帧广播到本地网络上的所有主机。源主机A的IP地址和MAC地址都包括在ARP请求中。本地网络上的每台主机都接收到ARP请求并且检查是否与自己的IP地址匹配。如果主机发现请求的IP地址与自己的IP地址不匹配,它将丢弃ARP请求。
第3步:主机B确定ARP请求中的IP地址与自己的IP地址匹配,则将主机A的IP地址和MAC地址映射添加到本地ARP缓存中。
第4步:主机B将包含其MAC地址的ARP回复消息直接发送回主机A。
第5步:当主机A收到从主机B发来的ARP回复消息时,会用主机B的IP和MAC地址映射更新ARP缓存。本机缓存是有生存期的,生存期结束后,将再次重复上面的过程。主机B的MAC地址一旦确定,主机A就能向主机B发送IP通信了。

ARP工作原理
废话那么多,没有一张图来的清楚

ARP表的基本操作

ARP的包结构(请求包)

ARP的包结构(应答)
为什么说ARP是不安全的协议呢,我来看看它遭受了哪些攻击
ARP欺骗攻击/中间人攻击/毒化,这些都是恶名在外的攻击,下篇文章我们继续介绍吧