内容概述
1.什么是ping命令
2.如何使用ping命令
-2.1 对域名进行ping,检测本机是否能够解析dns
-2.2 检测主机网络状态
3.ping命令中的常用选项
内容详细
1.什么是ping命令
ping命令通常用来测试当前主机到目标主机的网络连通性
# 本机和远程主机是否能够通信
2.如何使用ping命令
-
2.1 对域名进行ping,检测主机是否能够解析dns
[root@oldboy shell007]# ping www.baidu.com
PING www.a.shifen.com (112.80.248.75) 56(84) bytes of data.
64 bytes from 112.80.248.75 (112.80.248.75): icmp_seq=1 ttl=128 time=10.0 ms
64 bytes from 112.80.248.75 (112.80.248.75): icmp_seq=2 ttl=128 time=9.52 ms
64 bytes from 112.80.248.75 (112.80.248.75): icmp_seq=3 ttl=128 time=9.59 ms
64 bytes from 112.80.248.75 (112.80.248.75): icmp_seq=4 ttl=128 time=9.60 ms
^C
--- www.a.shifen.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3048ms
rtt min/avg/max/mdev = 9.523/9.704/10.097/0.249 ms
# 可以对域名进行ping,查看是否能够通信
ping ip地址,省去了dns解析的过程
[root@oldboy shell007]# ping 192.168.174.26
PING 192.168.174.26 (192.168.174.26) 56(84) bytes of data.
64 bytes from 192.168.174.26: icmp_seq=1 ttl=64 time=0.014 ms
64 bytes from 192.168.174.26: icmp_seq=2 ttl=64 time=0.243 ms
64 bytes from 192.168.174.26: icmp_seq=3 ttl=64 time=0.113 ms
^C
--- 192.168.174.26 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2018ms
rtt min/avg/max/mdev = 0.014/0.123/0.243/0.094 ms
解读:
1.ping命令会一致刷新结果
2.ping命令给远程主机发送了56字节的数据
3.从目标机器收到了64字节的数据 icmp_seq表示收到的字节数据序列号, ttl 是数据包的存活时间,秒为单位.time表示的是两台机器收发数据的延迟时间.
1.检测本机是否能进行dns解析
# 报错: Name or service not known 未知的名称或服务
遇到如上情况,可能是机器无法上网,也可能是无法进行dng解析
排错步骤:
(1.)检查linux的dns客户端配置文件 cat /etc/resolv.conf
# Generated by NetworkManager
search 8.8.8.8
nameserver 114.114.114.114
确保文件中有dns服务器的地址
# nameserver 114.114.114.114
(2.)验证能否ping通域名
ps:检查域名是否输入正确
2.当ping远程主机时,出现以下报错,则表明我们的机器无法访问外网.
ping 一个"正确且存在的公网ip地址" 出现 "Destination Host Unrechable" 报错
说明我们的网络配置出了问题,需要正确配置ip信息,以及路由网关地址
3.ping命令中的常用选项
语法: ping 选项 域名/IP地址
-d:使用Socket的SO_DEBUG功能
-c<完成次数>:设置完成要求回应的次数
-f:极限检测
-i<间隔秒数>:指定收发信息的间隔时间
-I<网络界面>:使用指定的网络界面送出数据包
-l<前置载入>:设置在送出要求信息之前,先行发出的数据包
-n:只输出数值
-p<范本样式>:设置填满数据包的范本样式
-q:不显示指令执行过程,开头和结尾的相关信息除外
-r:忽略普通的Routing Table,直接将数据包送到远端主机上
-R:记录路由过程
-s<数据包大小>:设置数据包的大小
-t<存活数值>:设置存活数值TTL的大小
-v:详细显示指令的执行过程