linux ping的三个数字(56,84,64)
参考:
ping 深入剖析:https://www.cnblogs.com/aozhejin/p/15917312.html
windows默认是32字节,linux是56字节说的都是数据包大小
注意:
1. 数据包和数据报的区别
2.56.64.84三个数字
3.8字节icmp数据报头
4.20字节ip数据报头
5.报头+内容不能大于65535,所以最大值为65507(linux:65507, windows:65500)
来测试网络的状况,这时,就要指定ping包的大小了。数据包总长度84个字节
1. 指定数据包大小为1500Byte:ping -s 1500 ip
2. 指定次数为4次,数据包大小为32767Byte:ping -c 4 -s 32767 ip
3. 指定ping包大小为1500Byte:ping -l 1500 ip
4. 指定次数为6次,ping包大小为1500:ping -n 6 -l 1500 ip
-s 指定每次ping发送的数据字节数
-s 指定一个数据包发送给指定ip ,单位字节(byte), 最大发送65536(32位int最大值).
由于1024B = 1KB , 65536B = 65Byte. 所以最大只能附加65byte的包,默认64b(1byte=8bit)
提示超出包大小
[root@h6 ~]# ping -s 665000 10.129.51.11
ping: packet size too large: 665000
ping.c中处理的代码为
if (datalen > 0xFFFF - 8 - optlen - 20) {
//十六进制0xFFFF转成十进制为65535
//实际数据大小为 65535-8-20= 65507字节
if (uid || datalen > sizeof(outpack)-8) {
fprintf(stderr, "Error: packet size %d is too large. Maximum is %d\n", datalen, 0xFFFF-8-20-optlen);
exit(2);
}
/* Allow small oversize to root yet. It will cause EMSGSIZE. */
fprintf(stderr, "WARNING: packet size %d is too large. Maximum is %d\n", datalen, 0xFFFF-8-20-optlen);
//imcp报头+ip报头+内容数据不能大于65535,实际的数据字节为最大值为65507(实际数据包大小为 65535-8-20= 65507字节)
//linux:65507, windows:65500
windows
C:\Users\qic>ping www.baidu.com
正在 Ping www.baidu.com [110.242.68.3] 具有 32 字节的数据:
来自 110.242.68.3 的回复: 字节=32 时间=13ms TTL=52
来自 110.242.68.3 的回复: 字节=32 时间=38ms TTL=52
来自 110.242.68.3 的回复: 字节=32 时间=10ms TTL=52
110.242.68.3 的 Ping 统计信息:
数据包: 已发送 = 3,已接收 = 3,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 10ms,最长 = 38ms,平均 = 20ms
//windows,数据包大小是32字节/次
linux
[root@ht6 ~]# ping -c 4 -w 10 10.129.51.11
PING 10.129.55.111 (10.129.51.11) 56(84) bytes of data.
64 bytes from 10.129.51.11: icmp_seq=1 ttl=64 time=0.196 ms
64 bytes from 10.129.51.11: icmp_seq=2 ttl=64 time=0.126 ms
64 bytes from 10.129.51.11: icmp_seq=3 ttl=64 time=0.166 ms
64 bytes from 10.129.51.11: icmp_seq=4 ttl=64 time=0.140 ms
--- 10.129.51.11 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3000ms
rtt min/avg/max/mdev = 0.126/0.157/0.196/0.026 ms
//icmp_seq如果丢失则显示错误
//这里有三个数据 56,84,64这三个数据分别是
1.ping包的linux默认数据包大小为64字节(icmp头部8字节+56字节的默认数据包)
2.84字节是数据包总大小(实际的)--构成为(20字节ip数据报+8字节icmp数据报)+56数据包
3.56字节即数据大小
linux ping的三个数字(56,84,64)的更多相关文章
- linux ping 命令解析
不管在windows平台,还是在linux平台,ping都是非常常用的网络命令:ping命令通过ICMP(Internet控制消息协议)工作:ping可以用来测试本机与目标主机是否联通.联通速度如何. ...
- Linux ping 命令
ping命令用来测试与目标主机的连通性,常见用法如下: [root@localhost ~]$ ping www.baidu.com # 对目标主机域名进行连通性测试 [root@localhost ...
- c linux ping 实现
摘自:https://blog.csdn.net/weibo1230123/article/details/79891018 ping的实现和代码分析一.介绍 ping命令是用来查看网络上另一 ...
- 转载:解决linux ping: unknown host www.baidu.com
解决linux ping: unknown host www.baidu.com 转载网址:http://www.kankanews.com/ICkengine/archives/48417.shtm ...
- 解决linux ping: unknown host www.baidu.com(转)
解决方案: 如果某台Linux服务器ping不通域名, 如下提示: [root@localhost ~]# ping www.baidu.comping: unknown host www.ba ...
- linux ping命令
Linux系统的ping命令是常用的网络命令,它通常用来测试与目标主机的连通性,我们经常会说“ping一下某机器,看是不是开着”.不能打开网页时会说“你先ping网关地址192.168.1.1试试”. ...
- Red hat linux ping: unknown host www.baidu.com
"ping: unknown host www.baidu.com" 解决方案: 如果某台Linux服务器ping不通域名, 如下提示: [root@localhost ~]# p ...
- linux常用命令三
linux常用命令三 系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 ...
- linux ping加执行时间
[root@back_zabbix_100 ~]# ping 10.10.30.250 | awk '{print $0"\t" strftime("%H:%M:%S&q ...
随机推荐
- 从零开始,开发一个 Web Office 套件(11):支持中文输入法(or 其它使用输入法的语言)
这是一个系列博客,最终目的是要做一个基于 HTML Canvas 的.类似于微软 Office 的 Web Office 套件(包括:文档.表格.幻灯片--等等). 博客园:<从零开始, 开发一 ...
- 关于 Linux Polkit 权限提升漏洞(CVE-2021-4034)的修复方法
镜像下载.域名解析.时间同步请点击阿里云开源镜像站 近日,国外安全团队披露了 Polkit 中的 pkexec 组件存在的本地权限提升漏洞(CVE-2021-4034),Polkit 默认安装在各个主 ...
- ansible 二主机和组
主机清单的管理 Ansible安装好之后的主机清单配置文件有如下两种: 1.yum安装,配置文件默认路径为: /etc/ansible/hosts 2.源码包安装,主机清单配置文件路径需要从软件包里面 ...
- 【文件系统】dumpe2fs命令
dumpe2fs - dump ext2/ext3/ext4 filesystem information dumpe2fs prints the super block and blocks gro ...
- 洛谷P1049 [NOIP2001 普及组] 装箱问题
本题就是一个简单的01背包问题 1.因为每个物品只能选一次,而且要使箱子的剩余空间为最小.所以可以确定属性为 MAX 2.由于是从n个物品里面选i个物品 那么就是选出的i个物品的空间总和要尽可能的 ...
- 开发中常用的几种 Content-Type
开发中常用的几种 Content-Type application/x-www-form-urlencoded 浏览器的原生 form 表单,如果不设置,那么最终就会以 application/x-w ...
- dp:找零问题
C代表币的种类,n代表钱数 #include<iostream> using namespace std; #define C 4 void main( ) { int coin[4]={ ...
- SpringBoot bean映射yml中的属性举例
pom:导入配置文件处理器,配置文件进行绑定就会有提示 <dependency> <groupId>org.springframework.boot</groupId&g ...
- 怎么理解 Redis 事务?
1)事务是一个单独的隔离操作:事务中的所有命令都会序列化.按顺序地执行.事务在执行的过程中,不会被其他客户端发送来的命令请求所打断. 2)事务是一个原子操作:事务中的命令要么全部被执行,要么全部都不执 ...
- MySQL安装速成指南(ZIP)
MySQL初始化数据库 第一步:将MySQL ZIP压缩包进行解压 第二部:在MySQL主目录创建my.ini文件,并添加以下内容 [client] port=3306 socket=/tmp/mys ...