PING是一種網絡工具,用來測試數據包能否通過ICMP協議到到達目標主機,程序會按時間和成功響應的次數估算丟失數據包率。但是相較於ICMP協議,TCP則更為廣泛的被大家熟知和使用。下面我們介紹一種新型的網絡測試工具——TCPING。
TCPING是基於TCP協議的一種PING命令,用來測試數據包能否通過TCP協議到到達目標主機(其實就是抄上面的描述)。他又一大特點,就是可以監聽某個端口的狀態,在禁PING的時候,也可以檢測網絡連通率。閑話少說,開始教程:
前提條件:
操作系統:CentOS6+/Debian7+/Ubuntu12+
1、以root賬戶登陸,防止系統過於精簡,先更新系統軟件源 :
1
2
3
4
5
|
yum update -y
# CentOS系統 用這個
apt-get update -y
# Debian/Ubuntu系統 用這個
|
2、安裝依賴,這里用到的是tcptraceroute和bc
1
2
3
4
5
|
yum install -y tcptraceroute bc
# CentOS系統 用這個
apt-get install -y tcptraceroute bc
# Debian/Ubuntu系統 用這個
|
3、安裝TCPING:
注1)TCPING的軟件包,雪狼找到了兩個版本,本次教程,使用的是©2002-2005 Richard van den Berg 的版本
1)切換目錄到/usr/bin
1
2
3
|
cd /usr/bin
# 切換目錄到/usr/bin
|
2)下載TCPING可執行文件
1
2
3
|
wget -O tcping https://soft.mengclaw.com/Bash/TCP-PING
# 下載TCP-PING可執行文件,並重命名為tcping
|
3)賦予執行權限
1
2
3
|
chmod +x tcping
# 賦予tcping執行權限
|
4、測試TCPING
1
2
3
4
5
6
7
8
|
[root@localhost bin]# tcping 8.8.8.8 53
# 通過TCP-PING 8.8.8.8 端口 53
traceroute to 8.8.8.8 (8.8.8.8), 255 hops max, 60 byte packets
seq 0: tcp response from google-public-dns-a.google.com (8.8.8.8) <syn,ack> 1.723 ms
traceroute to 8.8.8.8 (8.8.8.8), 255 hops max, 60 byte packets
seq 1: tcp response from google-public-dns-a.google.com (8.8.8.8) <syn,ack> 8.850 ms
traceroute to 8.8.8.8 (8.8.8.8), 255 hops max, 60 byte packets
|
測試通過,現在就可以通過TCPING命令對指定域名/IP進行TCP協議的連通率測試。
附錄1:用法詳解:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
# 用法:tcpping [-d] [-c] [-C] [-w sec] [-q num] [-x count] ipaddress [port]
# -d 在每個響應時間前,打印時間戳
# -c 以列表形式顯示
# -C 輸出類似於fping工具中-C選項的結果
# -w 等待時間(默認 3)
# -r 每N秒重試一次(默認 1)
# -x 限定測試總時長 (默認 無限)
# 實例:測試服務器到大陸TCP是否暢通
# 在這里,我們要用到百度官網的IP:119.75.217.109 以及他的TCP端口:80
執行結果:
[root@localhost ~]# tcping 119.75.217.109 80
traceroute to 119.75.217.109 (119.75.217.109), 255 hops max, 60 byte packets
seq 0: tcp response from 119.75.217.109 (119.75.217.109) <syn,ack> 174.357 ms
traceroute to 119.75.217.109 (119.75.217.109), 255 hops max, 60 byte packets
seq 1: tcp response from 119.75.217.109 (119.75.217.109) <syn,ack> 188.953 ms
|