Kecepatan koneksi internet adalah sesuatu yang selalu kami periksa di rumah dan kantor kami. Metode paling umum yang kami gunakan adalah dengan mengunjungi situs web tes kecepatan seperti speedtest.net. Di situs itu, aplikasi javascript dimuat di browser web yang memilih server terbaik (terdekat) berdasarkan waktu ping dan kemudian hasil tes kecepatan untuk server itu ditampilkan. Speedtest.net juga menggunakan flash player untuk menghasilkan hasilnya secara grafis.
Masalah menggunakan tes kecepatan berbasis web ini adalah tidak memungkinkan Anda menjadwalkan tes kecepatan secara berkala, mis. sebagai cronjob dan Anda tidak dapat menggunakannya di server tanpa kepala. Salah satu aplikasi yang dapat mengatasi masalah ini adalah “speedtest-cli”. Aplikasi ini memungkinkan Anda untuk memeriksa kecepatan internet Anda menggunakan baris perintah.
Apa itu speedtest-cli?
Speedtest-cli adalah skrip yang ditulis dalam bahasa pemrograman Python yang mengukur kecepatan internet secara dua arah. Aplikasi ini memungkinkan Anda untuk memeriksa kecepatan internet Anda pada jarak dalam km, dapat menguji terhadap server tertentu dan juga menyediakan URL sehingga Anda dapat membagikan hasil Anda di internet.
Bagaimana cara menginstal speedtest-cli di Linux?
Untuk menginstal aplikasi speedtest-cli, Anda harus menginstal Python 2.4-3.4 atau versi yang ditingkatkan di sistem Anda.
Anda dapat menginstal alat speedtest-cli menggunakan dua metode. Metode pertama mencakup penggunaan pengelola paket python-pip, metode kedua adalah mengunduh skrip Python secara manual, membuatnya dapat dieksekusi dan kemudian menjalankan aplikasi.
Metode 1:Menginstal speedtest-cli menggunakan python-pip
Langkah selanjutnya harus dijalankan sebagai pengguna root, karena saya tidak ingin menambahkan sudo untuk setiap perintah, jalankan perintah berikut di Ubuntu terlebih dahulu untuk menjadi pengguna root:
sudo su
1. Langkah pertama adalah memastikan bahwa daftar paket Anda dari semua repositori Ubuntu dan PPA adalah yang terbaru dengan menjalankan perintah berikut:
apt-get update
Contoh keluaran:
2. Langkah berikutnya adalah menginstal pengelola paket pip di sistem Anda. Seperti yang Anda lihat, perintah tersebut juga akan menginstal banyak dependensi.
apt-get install python-pip
[email protected]:/# apt-get install python-pip
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
libexpat1-dev libpython-all-dev libpython-dev libpython2.7-dev python-all python-all-dev python-asn1crypto python-cffi-backend python-crypto python-cryptography python-dbus python-dev
python-enum34 python-gi python-idna python-ipaddress python-keyring python-keyrings.alt python-pip-whl python-pkg-resources python-secretstorage python-setuptools python-six
python-wheel python-xdg python2.7-dev
Suggested packages:
python-crypto-doc python-cryptography-doc python-cryptography-vectors python-dbus-dbg python-dbus-doc python-enum34-doc python-gi-cairo gnome-keyring libkf5wallet-bin
gir1.2-gnomekeyring-1.0 python-fs python-gdata python-keyczar python-secretstorage-doc python-setuptools-doc
The following NEW packages will be installed:
libexpat1-dev libpython-all-dev libpython-dev libpython2.7-dev python-all python-all-dev python-asn1crypto python-cffi-backend python-crypto python-cryptography python-dbus python-dev
python-enum34 python-gi python-idna python-ipaddress python-keyring python-keyrings.alt python-pip python-pip-whl python-pkg-resources python-secretstorage python-setuptools python-six
python-wheel python-xdg python2.7-dev
0 upgraded, 27 newly installed, 0 to remove and 60 not upgraded.
Need to get 32.1 MB of archives.
After this operation, 53.6 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Tekan Y untuk melanjutkan
Contoh keluaran:
3. Setelah menginstal paket, Anda dapat menginstal aplikasi menggunakan perintah pip ini:
pip install speedtest-cli
Collecting speedtest-cli
Downloading https://files.pythonhosted.org/packages/61/8b/58d1de9a7fff3e91c5ab956ab4ba72b49f42d9f73d5f3e248c740dfcc816/speedtest_cli-2.1.1-py2.py3-none-any.whl
Installing collected packages: speedtest-cli
Successfully installed speedtest-cli-2.1.1
4. Jika Anda ingin mengupgrade aplikasi speedtest-cli di masa mendatang, Anda dapat menggunakan perintah ini:
pip install speedtest-cli –-upgrade
Requirement already up-to-date: speedtest-cli in /usr/local/lib/python2.7/dist-packages
Cleaning up...
Metode 2:Menginstal speedtest-cli terbaru secara manual dari GitHub
1. Pertama anda harus mendownload script python dari GitHub menggunakan perintah
cd /tmp
wget https://github.com/sivel/speedtest-cli/archive/master.zip
--2019-04-25 19:24:47-- https://github.com/sivel/speedtest-cli/archive/master.zip
Resolving github.com (github.com)... 140.82.118.4, 140.82.118.3
Connecting to github.com (github.com)|140.82.118.4|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://codeload.github.com/sivel/speedtest-cli/zip/master [following]
--2019-04-25 19:24:47-- https://codeload.github.com/sivel/speedtest-cli/zip/master
Resolving codeload.github.com (codeload.github.com)... 192.30.253.121, 192.30.253.120
Connecting to codeload.github.com (codeload.github.com)|192.30.253.121|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [application/zip]
Saving to: ‘master.zip’
master.zip [ <=> ] 27.55K 103KB/s in 0.3s
2019-04-25 19:24:48 (103 KB/s) - ‘master.zip’ saved [28215]
2. Langkah kedua adalah mengekstrak file yang telah Anda unduh (master.zip) dan mengekstraknya menggunakan perintah unzip:
unzip master.zip
Archive: master.zip
681cdf20a5fe774ba3aefedd0cd88cbff5384439
creating: speedtest-cli-master/
inflating: speedtest-cli-master/.gitignore
inflating: speedtest-cli-master/.travis.yml
inflating: speedtest-cli-master/CONTRIBUTING.md
inflating: speedtest-cli-master/LICENSE
inflating: speedtest-cli-master/MANIFEST.in
inflating: speedtest-cli-master/README.rst
extracting: speedtest-cli-master/setup.cfg
inflating: speedtest-cli-master/setup.py
inflating: speedtest-cli-master/speedtest-cli.1
inflating: speedtest-cli-master/speedtest.py
creating: speedtest-cli-master/tests/
creating: speedtest-cli-master/tests/scripts/
inflating: speedtest-cli-master/tests/scripts/source.py
inflating: speedtest-cli-master/tox.ini
3. Setelah Anda mengekstrak file, buat skrip yang diekstraksi dapat dieksekusi dengan masuk ke direktori yang diekstraksi dan menggunakan perintah chown.
cd speedtest-cli-master/
chmod 755 speedtest.py
4. Untuk menghindari mengetikkan path lengkap setiap saat, pindahkan file yang dapat dieksekusi ke /usr/local/bin dengan menggunakan perintah berikut:
sudo mv speedtest.py /usr/local/bin/speedtest-cli
Bagaimana cara menguji kecepatan koneksi internet dengan speedtest-cli?
Jalankan perintah speedtest-cli untuk menguji kecepatan unduh dan unggah koneksi internet Anda tanpa argumen apa pun:
speedtest-cli
Testing download speed........................................
Download: 916.39 Mbit/s
Testing upload speed..................................................
Upload: 489.57 Mbit/s
Jika Anda ingin memeriksa hasil kecepatan dalam byte, bukan bit, gunakan perintah ini:
speedtest-cli --bytes
Testing download speed........................................
Download: 114.15 Mbyte/s
Testing upload speed..................................................
Upload: 49.61 Mbyte/s
Jika Anda ingin berbagi hasil kecepatan dengan teman-teman Anda, maka Anda dapat mengunduh gambar hasil dengan URL yang diberikan setelah hasil.
speedtest-cli --share
Retrieving speedtest.net configuration...
Testing from Hetzner Online GmbH (..........)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by avrx (Limburg an der Lahn) [140.88 km]: 14.379 ms
Testing download speed................................................................................
Download: 309.68 Mbit/s
Testing upload speed................................................................................................
Upload: 316.33 Mbit/s
Share results: http://www.speedtest.net/result/xxxxxxxxxxx.png
Di bawah ini adalah gambar hasil tes kecepatan saya dari tes di atas.
Jika Anda ingin informasi hanya tentang ping, unduh dan unggah kemudian gunakan:
speedtest-cli --simple
Ping: 5.23 ms
Download: 877.56 Mbit/s
Upload: 162.21 Mbit/s
Anda juga dapat memeriksa daftar server berdasarkan jarak dalam km dengan menggunakan:
speedtest-cli --list
2628) Telstra (Adelaide, Australia) [17098.98 km]
4051) Vodafone Hutchison Australia (AE) (Adelaide, Australia) [17098.98 km]
...........................................................................
3254) Vodafone Hutchison Australia (PH) (Perth, Australia) [18700.26 km]
1931) IX Australia (Perth, Australia) [18700.26 km]
Dengan mencari daftar dalam hal jarak, Anda mungkin telah membuat daftar besar server. Jika Anda ingin memeriksa hasil untuk server area tertentu, Anda dapat memeriksanya dengan menyalurkan hasilnya ke perintah grep (Australia adalah contoh areanya):
speedtest-cli --list | grep –i Australia
2604) Telstra (Brisbane, Australia) [15501.92 km]
1594) 'Yes' Optus (Brisbane, Australia) [15501.92 km]
...............................................................................................
3254) Vodafone Hutchison Australia (PH) (Perth, Australia) [18700.26 km]
1931) IX Australia (Perth, Australia) [18700.26 km]
Untuk menguji kecepatan koneksi terhadap server tertentu, Anda harus menggunakan ID server yang dibuat di langkah 5 dan 6.
speedtest-cli --server [server ID]
speedtest-cli --server 2604
Di sini ID server 2604 digunakan sebagai contoh:
Hosted by Telstra (Brisbane) [15501.92 km]: 452.614 ms
Testing download speed........................................
Download: 28.79 Mbit/s
Testing upload speed..................................................
Upload: 11.71 Mbit/s
Jika Anda ingin memeriksa bantuan dan nomor versi alat speedtest-cli, gunakan perintah berikut:
speedtest-cli --version
0.3.4
speedtest-cli --help
usage: speedtest_cli [-h] [--bytes] [--share] [--simple] [--list]
[--server SERVER] [--mini MINI] [--source SOURCE]
[--timeout TIMEOUT] [--secure] [--version]
Command line interface for testing internet bandwidth using speedtest.net.
--------------------------------------------------------------------------
https://github.com/sivel/speedtest-cli
optional arguments:
-h, --help show this help message and exit
--bytes Display values in bytes instead of bits. Does not affect
the image generated by --share
--share Generate and provide a URL to the speedtest.net share
results image
--simple Suppress verbose output, only show basic information
--list Display a list of speedtest.net servers sorted by
distance
--server SERVER Specify a server ID to test against
--mini MINI URL of the Speedtest Mini server
--source SOURCE Source IP address to bind to
--timeout TIMEOUT HTTP timeout in seconds. Default 10
--secure Use HTTPS instead of HTTP when communicating with
speedtest.net operated servers
--version Show the version number and exit
Membuat log kecepatan internet dengan speedtest-cli
Speedtest-cli dapat dijalankan sebagai cronjob untuk mendapatkan log tes kecepatan internet. Buka crontab dengan perintah ini:
crontab -e
Dan tambahkan baris ini (saya akan berasumsi bahwa speedtest_cli.py diinstal di /usr/local/bin) ke crontab:
30 00 * * * /usr/local/bin/speedtest-cli >> /tmp/speedlog.txt
Simpan perubahan dan keluar dari editor crontab. Ini akan menjalankan tes kecepatan pada pukul 0:30 setiap hari dan menambahkan hasilnya ke file /tmp/speedlog.txt.
Kesimpulan
Aplikasi ini ringan, mudah digunakan, dan berjalan tanpa masalah, menjadikannya alat yang harus dimiliki oleh pengembang dan administrator sistem.