使用 speedtest-cli 指令在終端機中測試 Linux 網路連線速度

這裡介紹如何使用 speedtest-cli 指令在終端機中測試 Linux 網路連線速度,主要適用於各種 Linux 伺服器。

一般會影響網路速度的原因有很多(例如網路的延遲與頻寬),而在網路很慢的時候,大家通常都會使用 Speedtest.netHinet 連線速率測試工具來檢測自己的 ISP 網路速度是否有問題。


像這類的網路速度檢測網頁是將測試網路的 JavaScript 程式碼載入後,再連線到離使用者最近的測試伺服,進而測量上傳與下載的速度,但是如果你現在想要測試自己 Linux 伺服器的網路狀況時,這種使用瀏覽器的方式就比較麻煩了,一來遠端的伺服器可能沒有安裝 XWindow 與瀏覽器,即便有安裝瀏覽器,使用 XWindow 遠端顯示的方式來測試,也會造成測試的結果有誤差(因為 XWindow 本身的傳輸就會佔去很大的頻寬)。

speedtest-cli 指令是一個可以在終端機中直接測試網路速度的小工具,他本身是一個用 Python 寫成的指令稿,使用 Speedtest.net 的伺服器來做網路速度測試,可以算是 Speedtest.net 的一個命令列版本,以下介紹這個工具的使用方式。

安裝 speedtest-cli

由於 speedtest-cli 有備納入 Python 官方的套件庫,所以可以使用 pip 安裝:

pip install speedtest-cli

或使用 easy_install

easy_install speedtest-cli

如果想要安裝 GibHub 上的最新版,可以使用:

pip install git+https://github.com/sivel/speedtest-cli.git

或是

git clone https://github.com/sivel/speedtest-cli.git
python speedtest-cli/setup.py install

除此之外,亦可直接從 GitHub 下載

wget -O speedtest-cli https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py
chmod +x speedtest-cli

或是

curl -o speedtest-cli https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py
chmod +x speedtest-cli

使用 speedtest-cli 測試網路速度

最簡單的使用方式就是直接執行:

speedtest-cli

輸出為:

Retrieving speedtest.net configuration…
Retrieving speedtest.net server list…
Testing from CHTD, Chunghwa Telecom Co., Ltd. (1.173.168.19)…
Selecting best server based on ping…
Hosted by kbro CO.LTD (Hsinying) [36.48 km]: 18.279 ms1
Testing download speed………………………………….
Download: 1.65 Mbit/s2
Testing upload speed…………………………………………..
Upload: 0.06 Mbit/s3

1speedtest-cli會自動選擇距離使用者最近的伺服器來進行測試。

2上傳速度。

3下載速度。

如果想要跟別人分享測試結果,可以加上 --share 參數:

speedtest-cli --share

這樣測試完成時,還會產生一張分享用的圖檔:

speedtest-result

如果想要查詢所有可用的伺服器,可以使用 --list 參數:

speedtest-cli --list

這樣就會列出所有可用的伺服器,並依照與使用者之間的距離來排序:

Retrieving speedtest.net configuration…
Retrieving speedtest.net server list…
2592) Far EasTone Telecommunications Co., Ltd (Tainan, Taiwan) [6.75 km]
2191) kbro CO.LTD (Hsinying, Taiwan) [36.48 km]
2593) Far EasTone Telecommunications Co., Ltd (Kaohsiung, Taiwan) [39.46 km]
3842) Taiwan Fixed Network (Kaohsiung, Taiwan) [39.46 km]
2594) Far EasTone Telecommunications Co., Ltd (Pingtung, Taiwan) [42.80 km]
[略]

每台伺服器都有一個 ID 號碼,在測試時可以用這個 ID 編號來指定想要使用的伺服器:

speedtest-cli --server 2592

參考資料:Xmodulo

Linux

2 Comments

  1. tony

    請問測試完之後要如何移除?

Leave a Reply