网络基础之数据包及ICMP、ARP协议

1.数据包

IP数据包格式

2.ICMP协议

ICMP协议是一种面向无连接的协议,用于传输出错报告控制信息。它是一个非常重要的协议,它对于网络安全具有极其重要的意义。

它是TCP/IP协议族的一个子协议,属于网络层协议,主要用于在主机与路由器之间传递控制信息,包括报告错误、交换受限控制和状态信息等。当遇到IP数据无法访问目标、IP路由器无法按当前的传输速率转发数据包等情况时,会自动发送ICMP消息。ICMP报文在IP帧结构的首部协议类型字段(Protocol 8bit)的值=1.

我们在网络中经常会使用到ICMP协议,比如我们经常使用的用于检查网络通不通的Ping命令(Linux和Windows中均有),这个"Ping"的过程实际上就是ICMP协议工作的过程。还有其他的网络命令如跟踪路由的Tracert命令也是基于ICMP协议的。

ping命令

1.ping -c:指定次数(ping几次)
  ping -c 3 www.baidu.com
  #ping三次百度
2.ping -l:指定包的大小(1600 2000)
  ping -l 1600 www.baidu.com
  #指定包大小为1600
3.ping -w:指定等待时间(超时返回时间)
  ping -w 2 www.baidu.com
4.ping -t:长ping(Ctrl+c停止)
  windows命令,Linux中直接ping就是长ping
  ping www.baidu.com -t

ICMP协议的作用

ICMP协议:是IP协议的辅助协议,是一个“错误侦测与回馈机制”

作用:检测网络的双向联通

当出现网络不通时,第一件事就是ping

ping的通代表没有问题,但ping不通不一定有问题,因为网络环境很复杂,可能是网络波动。

  • 网络波动:偶尔丢一两个包
  • ping不通:没有一个数据到达

有的ping不通是因为有些通过其他方式,比如禁用了ICMP协议等

3.ARP协议

ARP协议工作原理

ARP协议作用:1.检测地址冲突2.将IP地址转换为MAC地址

ARP协议工作过程

PC1想发送数据给PC2, 首先查看本机的ARP缓存表,如果有,就直接发送。
如果发现要查找的MAC地址不在表中,就会发送一个ARP请求广播,用于发现目的地的MAC地址。

ARP请求消息中包括PC1的IP地址和MAC地址以及PC2的IP地址和目的MAC地址(此时为广播MAC地址FF-FF-FF-FF-FF-FF)

交换机收到广播后做泛洪处理,除PC1外所有主机收到ARP请求消息,PC2以单播方式发送ARP应答, 并在自己的ARP表中缓存PC1的IP地址和MAC地址的对应关系,而其他主机则丢弃这个ARP请求消息。

PC1在自己的ARP表中添加PC2的IP地址和MAC地址的对应关系,以单播方式与PC2通信。
通过ARP协议知道MAC地址后,进行数据帧的封装

PC1会发送数据帧给交换机
交换机收到PC1发送的数据帧,查找MAC地址表
如果有对应的MAC地址,就直接转发
没有就广播
PC2会回复自己的MAC地址给交换机,形成MAC地址表
下次就以单播的形式,进行通讯

四、冲突域和广播域

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值