Gping Graph Ping
1介绍
gping能够以折线图的方式,实时展示 ping 的结果,支持 Windows、Linux 和 macOS 操作系统。并且支持多个目标同时Ping同时展示折线图方便对比。下面扩展一下ICMP及ICMP隧道。
ICMP消息结构:
ICMP消息是由一个类型字段、一个代码字段、一个校验和字段和与特定消息类型相关的数据字段组成的。类型字段和代码字段一起确定了消息的类型和子类型,而数据字段可以携带各种信息,具体取决于消息的类型和代码。以下是常规ICMP报文格式:
灵活性:
ICMP协议设计灵活,允许在数据字段中携带各种信息。这种灵活性使得可以将数据包封装在ICMP消息中,并通过网络传输,因为数据字段的内容并不受到太多的限制,只要它在特定的消息类型和代码下合法。
封装和解封装:发送端将要传输的数据包封装在一个ICMP消息中,然后将该ICMP消息封装在一个IP数据包中,以便将其发送到目标。接收端首先解封装IP数据包,然后解封装包含原始数据包的ICMP消息,最终提取出原始数据包。
隧道技术:
ICMP隧道技术利用了ICMP消息的封装和解封装能力,使得数据包可以在ICMP消息中进行传输。通常,ICMP隧道软件会将要传输的数据分割成小块,并将每个小块封装在不同的ICMP消息中,然后发送到目标。在目标端,ICMP隧道软件会解析接收到的ICMP消息,提取出原始数据,并将其还原成完整的数据包。
隐蔽性:
ICMP隧道通常不太容易被网络审查或防火墙检测到,因为ICMP消息在网络中非常常见,用于各种网络管理任务。这使得ICMP隧道成为一种潜在的隐蔽通信方法。
TTL以及其他ICMP的具体机制下次一定
2对比
传统Ping:
单目标Gping:
双目标Gping:
3
使用
$ gping --helpgping --help
4
安装
Linux
wget https://github.com/orf/gping/releases/download/gping-v1.14.0/gping-Linux-x86_64.tar.gzWindows
将可执行文件放入C:/Windows目录下
参考文献:
1. php - WordPress: How to create a rewrite rule for a file in a custom plugin - Stack Overfloworf/gping: Ping, but with a graph (github.com)