1. ping 命令
ping 命令只能检查 IP 的连通性或网络连接速度,无法具体到某个端口。
ping 命令使用 ICMP 协议,跟 IP 协议属于同一层次(网络层)。ping 命令在每次发数据包后都会等对方返回数据包。可以禁止 ICMP 协议,此时对方收到消息后不会回复。
端口是传输层 TCP/UDP 协议的概念,比如常用的 web 端口指的是 TCP 的 80 端口。使用网络层的 ping 命令是无法指定端口的。
ping 不通,可能是服务器确实没有开放这个端口,或是禁 ping 了。
ping 命令支持很多参数:
# ping
Usage: ping [-aAbBdDfhLnOqrRUvV] [-c count] [-i interval] [-I interface]
[-m mark] [-M pmtudisc_option] [-l preload] [-p pattern] [-Q tos]
[-s packetsize] [-S sndbuf] [-t ttl] [-T timestamp_option]
[-w deadline] [-W timeout] [hop1 ...] destination
一般使用最简单的用法:
# ping baidu.com
PING baidu.com (111.13.101.208) 56(84) bytes of data.
64 bytes from 111.13.101.208: icmp_seq=1 ttl=49 time=54.2 ms
64 bytes from 111.13.101.208: icmp_seq=2 ttl=49 time=54.2 ms
64 bytes from 111.13.101.208: icmp_seq=3 ttl=49 time=54.1 ms
64 bytes from 111.13.101.208: icmp_seq=4 ttl=49 time=54.2 ms
64 bytes from 111.13.101.208: icmp_seq=5 ttl=49 time=54.2 ms
64 bytes from 111.13.101.208: icmp_seq=6 ttl=49 time=54.2 ms
64 bytes from 111.13.101.208: icmp_seq=7 ttl=49 time=54.3 ms
^C
--- baidu.com ping statistics ---
7 packets transmitted, 7 received, 0% packet loss, time 6009ms
rtt min/avg/max/mdev = 54.196/54.238/54.305/0.130 ms
2. telnet 命令
telnet 命令使用 TCP 协议,一般用于远程登录(明文传输,不安全,已经被 SSH 替代了),也可以查看指定端口的连通性,语法如下:
telnet IP Port
3. tcping 命令
tcping 命令使用 TCP 协议(传输层),也可以看 ping 值,即使源地址禁 ping 也可以通过 tcping 来监控服务器网络状态。详细用法可以 参考这里。
tcping 可以指定监控的端口。
# tcping baidu.com 80
baidu.com port 80 open.