Thursday, November 21, 2024

Cài đặt và sử dụng Speedtest CLI trên Linux

-

1. Tổng quan.


Speedtest CLI (Command-Line Interface) là một công cụ dòng lệnh được cung cấp bởi Ookla để kiểm tra tốc độ mạng. Nó cho phép bạn kiểm tra tốc độ tải xuống, tải lên và độ trễ của kết nối mạng từ dòng lệnh của máy tính hoặc server.

Speedtest CLI sử dụng cơ sở dữ liệu máy chủ Speedtest toàn cầu của Ookla để thực hiện các kiểm tra. Nó kết nối đến máy chủ gần nhất và thực hiện một loạt các yêu cầu mạng để đo tốc độ và độ trễ.

Bằng cách sử dụng Speedtest CLI, bạn có thể xác định tốc độ thực tế của kết nối mạng hiện tại và kiểm tra khả năng kết nối Internet của bạn. Nó hữu ích trong việc kiểm tra tốc độ Internet, xác định vấn đề về kết nối và so sánh tốc độ mạng giữa các máy chủ khác nhau.

Speedtest CLI có sẵn cho nhiều nền tảng, bao gồm Windows, macOS, Linux và các hệ điều hành dựa trên Unix. Bạn có thể tải Speedtest CLI từ trang web của Ookla hoặc cài đặt nó thông qua các công cụ quản lý gói như pip (Python Package Installer) cho Python hoặc Homebrew cho macOS.

2. Cài đặt và sử dụng.

2.1. Đối với Centos.

Vì speedtest-cli trên Centos 7 mình sẽ cài qua PIP nên nếu chưa có PIP thì bạn hãy cài PIP trước, để cài đặt pip version 3 trên CentOS 7, bạn có thể làm theo các bước sau:

Mở Terminal trên CentOS 7.

Cập nhật hệ thống bằng lệnh sau:

sudo yum update

Cài đặt các gói phụ thuộc cần thiết bằng lệnh sau:

sudo yum install epel-release

Cài đặt pip version 3 bằng lệnh sau:

sudo yum install python3-pip

Kiểm tra phiên bản của pip3 đã được cài đặt thành công bằng lệnh:

pip3 --version

Lưu ý: Trên CentOS 7, gói pip3 được cung cấp thông qua gói python3-pip. Vì vậy, khi cài đặt, bạn cần sử dụng lệnh pip3 thay vì pip để thực hiện các thao tác liên quan đến pip version 3.

Sau khi cài đặt pip3 thành công, bạn có thể sử dụng nó để cài đặt các gói Python và thực hiện các thao tác liên quan đến quản lý gói Python phiên bản 3 trên CentOS 7.

$ pip3 install speedtest-cli
WARNING: Running pip install with root privileges is generally not a good idea. Try `pip3 install --user` instead.
Collecting speedtest-cli
  Downloading https://files.pythonhosted.org/packages/9f/39/65259b7054368b370d3183762484fa2c779ddc41633894d895f9d1720f45/speedtest_cli-2.1.3-py2.py3-none-any.whl
Installing collected packages: speedtest-cli
Successfully installed speedtest-cli-2.1.3

Sử dụng lệnh speedtest-cli --list để list các server.

$ speedtest-cli --list
Retrieving speedtest.net configuration...
27601) Viettel Network (Dong Nai, Vietnam) [2718.12 km]
 8977) NeocomISP Limited (Phnom Penh, Cambodia) [2731.50 km]
38125) MegaTruenet (Phnom Penh, Cambodia) [2731.50 km]
41270) ACT Telecomunication Joint Stock Company (Ho Chi Minh, Vietnam) [2760.14 km]
 2515) FPT Telecom (Ho Chi Minh City, Vietnam) [2765.33 km]
26853) Viettel Network (Ho Chi Minh, Vietnam) [2765.33 km]
52640) SPNTelecom (Ho Chi Minh, Vietnam) [2765.33 km]
11342) VIETPN CO, LTD (Ho Chi Minh City, Viet Nam) [2765.33 km]
16749) Vietnamobile (Ho Chi Minh, Vietnam) [2765.33 km]
56841) SCTV Co., Ltd (Ho Chi Minh, Vietnam) [2765.33 km]

Sử dụng lệnh speedtest-cli --server <server_id> để kiểm tra đến một server id tương ứng.

$ speedtest-cli --server 27601
Retrieving speedtest.net configuration...
Testing from Unknown (103.110.128.7)...
Retrieving speedtest.net server list...
Retrieving information for the selected server...
Hosted by Viettel Network (Dong Nai) [2718.12 km]: 55.349 ms
Testing download speed................................................................................
Download: 303.41 Mbit/s
Testing upload speed......................................................................................................

Tham khảo https://github.com/sivel/speedtest-cli

2.2. Đối với Ubuntu.

Cài đặt công cụ curl.

sudo apt-get install curl -y

Tải file script.deb.sh và chạy nó.

curl -s https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.deb.sh | sudo bash

Cài đặt speedtest.

sudo apt-get install speedtest -y

Kiếm tra kết quả cài đặt.

$ speedtest -V
Speedtest by Ookla 1.2.0.84 (ea6b6773cf) Linux/x86_64-linux-musl 4.15.0-212-generic x86_64

The official command line client for testing the speed and performance
of your internet connection.

Xem danh sách các server.

$ speedtest -L
Closest servers:

    ID  Name                           Location             Country
==============================================================================
 41270  ACT Telecomunication Joint Stock Company Ho Chi Minh          Vietnam
 17758  VNPT-NET                       Ho Chi Minh          Vietnam
 26853  Viettel Network                Ho Chi Minh          Vietnam
  2515  FPT Telecom                    Ho Chi Minh City     Vietnam
 52640  SPNTelecom                     Ho Chi Minh          Vietnam
 11342  VIETPN CO, LTD                 Ho Chi Minh City     Viet Nam
 16749  Vietnamobile                   Ho Chi Minh          Vietnam
  3381  NetNam                         Ho Chi Minh City     Vietnam
 24232  TPCOMS                         Ho Chi Minh          Vietnam
 54812  Viettel IDC                    Ho Chi Minh          Vietnam

Chạy lệnh speedtest-cli --server <server_id> để kiểm tra tốc độ đến máy chủ có ID tương ứng:

$ speedtest -s 2515
==============================================================================

You may only use this Speedtest software and information generated
from it for personal, non-commercial use, through a command line
interface on a personal computer. Your use of this software is subject
to the End User License Agreement, Terms of Use and Privacy Policy at
these URLs:

        https://www.speedtest.net/about/eula
        https://www.speedtest.net/about/terms
        https://www.speedtest.net/about/privacy

==============================================================================

Do you accept the license? [type YES to accept]: yes
License acceptance recorded. Continuing.


   Speedtest by Ookla

      Server: FPT Telecom - Ho Chi Minh City (id: 2515)
         ISP: Viettel Group
Idle Latency:     3.91 ms   (jitter: 0.60ms, low: 3.30ms, high: 5.24ms)
    Download:   113.11 Mbps (data used: 157.2 MB)
                 55.63 ms   (jitter: 29.16ms, low: 4.21ms, high: 555.29ms)
      Upload:    74.61 Mbps (data used: 129.3 MB)
                123.99 ms   (jitter: 41.73ms, low: 12.74ms, high: 500.61ms)
 Packet Loss:     0.0%
  Result URL: https://www.speedtest.net/result/c/53ffde91-553b-4aef-92b7-7153e11986c5

Nếu bạn muốn bỏ qua bước xác nhận nhập “yes”, bạn có thể sử dụng pipe (|) để tự động gửi “yes” từ dòng lệnh. Dưới đây là cách thực hiện:

$ echo "yes" | speedtest -s 2515

   Speedtest by Ookla

      Server: FPT Telecom - Ho Chi Minh City (id: 2515)
         ISP: Viettel Group
Idle Latency:     3.85 ms   (jitter: 0.32ms, low: 3.34ms, high: 4.00ms)
    Download:   126.18 Mbps (data used: 162.3 MB)
                 39.58 ms   (jitter: 17.47ms, low: 4.70ms, high: 175.63ms)
      Upload:   125.80 Mbps (data used: 223.0 MB)
                 70.32 ms   (jitter: 22.01ms, low: 14.57ms, high: 209.07ms)
 Packet Loss:     0.0%
  Result URL: https://www.speedtest.net/result/c/1ea5facc-d274-4d4e-9776-d52bc26e4df4

3. Bảng danh sách các máy chủ Speedtest quốc tế.

Dưới đây là một bảng danh sách các máy chủ Speedtest quốc tế, bao gồm ID, Tên, Địa điểm và Quốc gia. Vui lòng lưu ý rằng danh sách này có thể thay đổi theo thời gian và bạn nên sử dụng lệnh speedtest-cli --list để lấy danh sách máy chủ mới nhất trên hệ thống của bạn.

ID      Tên                                 Địa điểm                      Quốc gia
===============================================================================
10949   Vodafone GmbH                        Frankfurt, Germany             Germany
27372   Cloudflare                           San Francisco, CA, USA        United States
3633    NTT Communications                   Tokyo, Japan                   Japan
3625    SoftLayer Technologies               Singapore                      Singapore
4945    Telenor AS                           Oslo, Norway                   Norway
4981    Fastweb SpA                          Milan, Italy                   Italy
5059    SK Broadband                         Seoul, South Korea             South Korea
5090    China Mobile Group                   Beijing, China                 China
5708    Telefonica de Argentina              Buenos Aires, Argentina        Argentina
5185    Telstra                              Sydney, Australia              Australia

Lưu ý rằng danh sách trên chỉ là một mẫu và có thể không đầy đủ. Bạn có thể sử dụng lệnh speedtest-cli --list để lấy danh sách máy chủ Speedtest quốc tế hoàn chỉnh trên hệ thống của bạn.

Tham khảo https://www.speedtest.net/apps/cli

LEAVE A REPLY

Please enter your comment!
Please enter your name here

4,956FansLike
256FollowersFollow
223SubscribersSubscribe
spot_img

Related Stories