24 Listopada 2024 01:18:24
Nawigacja
· Strona Główna
· Forum

· Tomato by Shibby
· FreshTomato


Wątki na forum
Najnowsze dyskusje
· [S] Asus RT-AC56U
· DIR868l OFW asus vs ...
· Szukam zaproszenia n...
· [MOD] FreshTomato-AR...
· Asus RT-AC5300 ,prob...
· archer c6 v3.20
· [S] Nighthawk R7000P...
· [S]Asus RT-AC5300 - ...
· Tanie N100 na promce...
· net z telefonu wifi+...
· Tomato - bugi/proble...
· HUAWEI z światłowodem
· Asus TUF-AX3000_V2 p...
· rt-ax88upro częste ...
· [Howto] Xpenology na...
· Jaki router pod Open...
· Ruter z tomato
· Czy to jeszcze NAS?
· RT AC66U B1
· Wireguard na FreshTo...
Najpopularniejsze obecnie wątki
· DIR868l OFW asus ... [8]
· [S] Asus RT-AC56U [0]
Ankieta
Jaki procesor posiada twój router?

Broadcom MIPSEL
Broadcom MIPSEL
36% [151 głosów]

Broadcom ARM
Broadcom ARM
52% [219 głosów]

Atheros
Atheros
5% [22 głosów]

Marvell
Marvell
1% [4 głosów]

Ralink
Ralink
1% [3 głosów]

Intel/AMD/VIA
Intel/AMD/VIA
1% [5 głosów]

Żaden z powyższych
Żaden z powyższych
4% [15 głosów]

Ogółem głosów: 419
Musisz zalogować się, aby móc zagłosować.
Rozpoczęto: 02/02/2015 09:38
Twoje IP
3.145.93.227
Zobacz wątek
OpenLinksys » :: PORTAL :: » Tutoriale
 Drukuj wątek
Speedtest.net na routerze
shibby
Witajcie

Wielokrotnie na forum padało pytanie odnośnie testowania prędkości połączenia internetowego na routerze. Pojawiały się mniej lub bardziej rozbudowane skrypty, które w większości bazowały na komendzie "wget". Wadą tego rozwiązania był fakt, iż testowana była jedynie prędkość downloadu, natomiast upload nadal był niewiadomy.

Dziś trafiłem na ciekawy skrypt, który jest niczym innym jak implementacją speedtest.net w języku python. Co ważne - działa wyśmienicie na tomato i innych podobnych systemach Smile

Wymagania? Skonfigurowane optware oraz zainstalowane pakiety:
- python
-wget-ssl

Posiadacze entware lub openwrt/gargoyle muszą zainstalować analogiczne do ww. paczek składniki.

Ściągamy pakiet:

Cytat

cd /opt/bin
wget --no-check-certificate https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py
chmod +x /opt/bin/speedtest_cli.py


Program uruchamiamy komendą (zostanie wybrany najbliższy serwer):

Cytat

speedtest_cli.py


Oto przykładowy wynik wykonania skryptu:

Cytat

[root@R7000 root]$ speedtest_cli.py
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Yureco Spolka Akcyjna (176.227.xxx.xxx)...
Selecting best server based on latency...
Hosted by Yureco S.A. (Olesnica) [1.10 km]: 2.193 ms
Testing download speed........................................
Download: 90.46 Mbits/s
Testing upload speed..................................................
Upload: 28.06 Mbits/s
[root@R7000 root]$


Chcąc wskazać wybrany przez nas serwer do testów musimy najpierw zdobyć ID serwera. Posłużymy się tu parametrem "--list" (listuje wszystkie serwery wg odległości) i wygrepujemy szukany przez nas serwer. Przykładowo by znaleźć serwer Skynet z Warszawy wydajemy komendę:

Cytat

[root@R7000 root]$ speedtest_cli.py --list | grep Skynet
338) Skynet DC (Warsaw, Poland) [273.81 km]


Liczba 338 to ID tego serwera.
Przetestujmy nasze łącze do tego serwera:

Cytat

[root@R7000 root]$ speedtest_cli.py --server=338
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Yureco Spolka Akcyjna (176.227.xxx.xxx)...
Hosted by Skynet DC (Warsaw) [273.81 km]: 8.253 ms
Testing download speed........................................
Download: 90.27 Mbits/s
Testing upload speed..................................................
Upload: 28.53 Mbits/s
[root@R7000 root]$


Dodatkową opcją jest wygenerowanie linku do obrazka. Odbywa się to przez dodanie parametru "--share". Dzięki temu na końcu pomiaru otrzymamy coś na wzór:

Cytat

Share results: http://www.speedtest.net/result/3740554995.png


Wynik oczywiście można skierować do pliku. Oto przykład by wynik zapisywał się do pliku, której nazwa zawiera datę pomiaru:

Cytat

speedtest_cli.py --server 338 >> /tmp/speedtest-`date +%Y%m%d-%H%M%S`


W efekcie otrzymamy plik /tmp/speedtest-20140906-134447 z naszymi pomiarami. Jak nie trudno się domyślić data wskazuje na pomiar wykonany 06 września 2014 o godzinie 13:44:47 sekund Smile. Wystarczy teraz zmienić katalog docelowy z /tmp ja dysk lub pendrive a samą komendę można wrzucić np. do harmonogramu (uwaga: warto użyć ścieżkę bezwzględną do skryptu czyli /opt/bin/speedtest_cli.py).

Powodzenia!
Proxmox VE: i5-13400T, 64GB RAM, 2x 512GB NVMe, 3x 2TB SSD, Intel X710-DA2 SFP+
VM Router: OpenWRT 22.03.4
VM NAS: Synology SA6400
VM VPS: Debian, WWW, Home Assistant
Switch: Netgear MS510TXPP
Switch: Ubiquiti USW-Flex-mini - szt. 2
Wi-Fi: Ubiquiti U6-Lite - szt. 2
 
przemasisko
Pięknie działa Smile Dzięki za tutka.
 
rafal00004
Witam.
Moje wyniki pomiaru bezpośrednio z routera są o 1/3 słabsze niż pomiar z kompa w LAN do tych samych serwerów. Może jest to spowodowane tym, że router ma 466 mhz?
Netgear WNR3500Lv2+Tomato USB-K26RTN-121 AIO
Netgear WNR3500Lv1+Tomato USB-K26-121 Nocat-VPN
Metron.eu.org
 
przemasisko
U mnie na rt-n66u wysyciło pełne 60/6.
 
backlit
Dzięki za fajny skrypt. Jedna rzecz : Download mam ucięty w wynikach o połowę , ping większy o 15 ms względem testów na www (upload jest ok). Czemu tak nie mam pojęcia.
------------------------
Asus RT-N18U+ 1.28 -130 K26ARM USB AIO-64K
 
Maniek91PL


root@Thea:/opt/bin# cd /opt/bin
root@Thea:/opt/bin# wget --no-check-certificate https://raw.github.com/sivel/spe
edtest-cli/master/speedtest_cli.py
wget: unrecognized option `--no-check-certificate'
BusyBox v1.21.1 (2014-08-28 14:17:35 CEST) multi-call binary.

Usage: wget [-csq] [-O FILE] [-Y on/off] [-P DIR] [-U AGENT] [-T SEC] URL...

Retrieve files via HTTP or FTP

        -s      Spider mode - only check file existence
        -c      Continue retrieval of aborted transfer
        -q      Quiet
        -P DIR  Save to DIR (default .)
        -T SEC  Network read timeout is SEC seconds
        -O FILE Save to FILE ('-' for stdout)
        -U STR  Use STR for User-Agent header
        -Y      Use proxy ('on' or 'off')

root@Thea:/opt/bin#


!?
Asus RT-AC3200
Rocket M5
APC BACK-UPS RS 1200
Mini Itx ASUS Q87T+ i7-4770S
Alienware m15
Vu+ Solo2
 
kamilj
@Maniek91PL zainstalowałeś
- python
-wget-ssl
??
------------------------------------------------------------------------------
[b]RegulaminOpenlinksys.info v0.1
[url=http://openlinksys.info/forum/viewthread.p
 
Maniek91PL
tak wgrane



root@Thea:/tmp/home/root# ipkg install python
Installing python (2.5-1) to /opt/...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/mbwe-bluering/cross/stable/python_2.5-1_arm.ipk
Installing python25 (2.5.6-2) to /opt/...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/mbwe-bluering/cross/stable/python25_2.5.6-2_arm.ipk
Installing readline (6.1-2) to /opt/...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/mbwe-bluering/cross/stable/readline_6.1-2_arm.ipk
Installing ncurses (5.7-3) to /opt/...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/mbwe-bluering/cross/stable/ncurses_5.7-3_arm.ipk
Installing bzip2 (1.0.6-1) to /opt/...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/mbwe-bluering/cross/stable/bzip2_1.0.6-1_arm.ipk
Installing openssl (0.9.8v-2) to /opt/...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/mbwe-bluering/cross/stable/openssl_0.9.8v-2_arm.ipk
Installing libdb (4.2.52-3) to /opt/...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/mbwe-bluering/cross/stable/libdb_4.2.52-3_arm.ipk
Installing zlib (1.2.5-1) to /opt/...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/mbwe-bluering/cross/stable/zlib_1.2.5-1_arm.ipk
Installing sqlite (3.8.1-1) to /opt/...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/mbwe-bluering/cross/stable/sqlite_3.8.1-1_arm.ipk
Installing libstdc++ (6.0.2-6) to /opt/...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/mbwe-bluering/cross/stable/libstdc++_6.0.2-6_arm.ipk
Installing ncursesw (5.7-2) to /opt/...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/mbwe-bluering/cross/stable/ncursesw_5.7-2_arm.ipk
Configuring bzip2
update-alternatives: Linking //opt/bin/bzip2 to /opt/bin/bzip2-bzip2
Configuring libdb
Configuring libstdc++
Configuring ncurses
update-alternatives: Linking //opt/bin/clear to /opt/bin/ncurses-clear
Configuring ncursesw
Configuring openssl
Configuring python
Configuring python25
Configuring readline
Configuring sqlite
Configuring zlib
Successfully terminated.
root@Thea:/tmp/home/root# ipkg install wget-ssl
Installing wget-ssl (1.12-2) to /opt/...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/mbwe-bluering/cross/stable/wget-ssl_1.12-2_arm.ipk
Installing libidn (1.25-1) to /opt/...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/mbwe-bluering/cross/stable/libidn_1.25-1_arm.ipk
Configuring libidn
Configuring wget-ssl
Successfully terminated.
root@Thea:/tmp/home/root# cd /opt/bin
root@Thea:/opt/bin# wget --no-check-certificate https://raw.github.com/sivel/spe
edtest-cli/master/speedtest_cli.py
wget: unrecognized option `--no-check-certificate'
BusyBox v1.21.1 (2014-08-28 14:17:35 CEST) multi-call binary.

Usage: wget [-csq] [-O FILE] [-Y on/off] [-P DIR] [-U AGENT] [-T SEC] URL...

Retrieve files via HTTP or FTP

        -s      Spider mode - only check file existence
        -c      Continue retrieval of aborted transfer
        -q      Quiet
        -P DIR  Save to DIR (default .)
        -T SEC  Network read timeout is SEC seconds
        -O FILE Save to FILE ('-' for stdout)
        -U STR  Use STR for User-Agent header
        -Y      Use proxy ('on' or 'off')


Asus RT-AC3200
Rocket M5
APC BACK-UPS RS 1200
Mini Itx ASUS Q87T+ i7-4770S
Alienware m15
Vu+ Solo2
 
rafal00004
Maniek91PL wpisujesz samo wget, a trzeba w twoim przypadku wpisać tak:


wget-ssl --no-check-certificate https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py


Pozdro
Edytowany przez rafal00004 dnia 07-09-2014 02:04
Netgear WNR3500Lv2+Tomato USB-K26RTN-121 AIO
Netgear WNR3500Lv1+Tomato USB-K26-121 Nocat-VPN
Metron.eu.org
 
shibby
maniek91pl Masz coś z PATH namieszane bo wciąż odpala ci się wget z busyboxa. podaj pełną ścieżkę do nowego wgeta czyli /opt/bin/wget...
Proxmox VE: i5-13400T, 64GB RAM, 2x 512GB NVMe, 3x 2TB SSD, Intel X710-DA2 SFP+
VM Router: OpenWRT 22.03.4
VM NAS: Synology SA6400
VM VPS: Debian, WWW, Home Assistant
Switch: Netgear MS510TXPP
Switch: Ubiquiti USW-Flex-mini - szt. 2
Wi-Fi: Ubiquiti U6-Lite - szt. 2
 
Maniek91PL
nic nie mogę zrobić, bo w koło jest to samo co w temacie :
https://openlinksys.info/forum/viewthread.php?thread_id=18345&pid=136162#post_136162
* mój ostatni post

Coś nie przetestowane jest ten ostatni software na tego asusa Shock
Asus RT-AC3200
Rocket M5
APC BACK-UPS RS 1200
Mini Itx ASUS Q87T+ i7-4770S
Alienware m15
Vu+ Solo2
 
kobrawerde
Naprawdę fajny programik do sprawdzania szybkości netu w konsoli. U mnie też jest ten błąd ....ale podpowiedź @shibby i wszystko działa OK

/opt/bin/wget --no-check-certificate https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py

Netgear R7000 - FreshTomato Firmware 2023.5 K26ARM USB AIO-64K
Proxmox VE: (Topton X6C) Intel N100, 32GB RAM, 2x2TB SSD / NVMe
VM NAS: Xpenology SA6400 (TCRP: tinycore-redpill.v1.0.1.0.m-shell)
VM VPS: Debian-12.5.0-xfce , Kodi , Jellyfin
Wi-Fi: Ubiquiti U6-Lite
 
hermes-80
Pewnie po instalacji bash-a - namieszał ci w pliku /opt/etc/profile.
===============================================================
Netgear WNR3500L v1
Podziękowania dla administracji Openlinksys.info!
 
kobrawerde

Cytat

Pewnie po instalacji bash-a - namieszał ci w pliku /opt/etc/profile.

Raczej na pewno :-) ...... duuuużo kiedyś mieszałem w systemie .
A co do wyników pomiarów prędkości DL / UP to też mam wrażenie iż hamulcem poprawności jest procek. Sprawdzałem ten skrypt pod systemem OpenELEC ( HTPC ION2 ) i wyniki są troszkę wiarygodniejsze.
Netgear R7000 - FreshTomato Firmware 2023.5 K26ARM USB AIO-64K
Proxmox VE: (Topton X6C) Intel N100, 32GB RAM, 2x2TB SSD / NVMe
VM NAS: Xpenology SA6400 (TCRP: tinycore-redpill.v1.0.1.0.m-shell)
VM VPS: Debian-12.5.0-xfce , Kodi , Jellyfin
Wi-Fi: Ubiquiti U6-Lite
 
shibby
@Maniek91pl - zainstaluj paczke bash (jeżeli jeszcze nie masz), po czym przeedytuj plik /opt/etc/profile by wyglądał dokładnie tak:

Cytat

#
# Bash initialization script
#

PS1="[\u@\h \W]$ "
PATH=/opt/sbin:/opt/bin:/sbin:/bin:/usr/sbin:/usr/bin
LD_LIBRARY_PATH=/lib:/usr/lib:/usr/local/lib:/opt/lib:/opt/usr/lib

export TERMINFO=/opt/share/terminfo

export PS1 PATH LD_LIBRARY_PATH


po zapisaniu zmian przeloguj się do SSH. Ten trick po pierwsze naprawi ci ścieżki path, tak by ścieżli opt były pierwsze (tak więc przykładowo wget będzie brany z optware a nie z busyboxa) oraz "naprawi" tło i kursory w programie mc.
Proxmox VE: i5-13400T, 64GB RAM, 2x 512GB NVMe, 3x 2TB SSD, Intel X710-DA2 SFP+
VM Router: OpenWRT 22.03.4
VM NAS: Synology SA6400
VM VPS: Debian, WWW, Home Assistant
Switch: Netgear MS510TXPP
Switch: Ubiquiti USW-Flex-mini - szt. 2
Wi-Fi: Ubiquiti U6-Lite - szt. 2
 
Maniek91PL
działa Grin
Dzięki Shibby Grin
Asus RT-AC3200
Rocket M5
APC BACK-UPS RS 1200
Mini Itx ASUS Q87T+ i7-4770S
Alienware m15
Vu+ Solo2
 
shibby

Cytat

Moje wyniki pomiaru bezpośrednio z routera są o 1/3 słabsze niż pomiar z kompa w LAN do tych samych serwerów. Może jest to spowodowane tym, że router ma 466 mhz?


Zgadza się. Python jest dość zasobożernym językiem programowania dla routerka. Jeżeli mamy szybkie łącze, które podczas normalnego użytkowania potrafi dość mocno obciążyć router to uruchomienie skrypty speedtest spowoduje jego jeszcze większe dociążenie, co w efekcie znacząco wpłynie na wydajność portu WAN i uzyskane wyniki. W moim przypadku wyniki były idealne, no ale router na którym dokonywałem pomiarów był też bardzo silny.

Uwaga na koniec: sprawdziłem skrypt na routerze pod Debianem7 (2x Xeon X5450 3,0GHz - 8 rdzeni, 16GB ram, 6x 146SAS w RAID10). Łącze podpięte pod router to światło z TP 200/200Mbps. Uzyskiwane wyniki oscylowały w granicach 180/110Mbps. Speedtest wykonany z poziomy przeglądarki podawał już wynik 200/200Mbps, tak więc widać, że skrypt nie radzi sobie z szybkimi łączami.
Proxmox VE: i5-13400T, 64GB RAM, 2x 512GB NVMe, 3x 2TB SSD, Intel X710-DA2 SFP+
VM Router: OpenWRT 22.03.4
VM NAS: Synology SA6400
VM VPS: Debian, WWW, Home Assistant
Switch: Netgear MS510TXPP
Switch: Ubiquiti USW-Flex-mini - szt. 2
Wi-Fi: Ubiquiti U6-Lite - szt. 2
 
chans
Shibby - dzięki za tutek, bardzo pomocny. Mam jedno pytanie odnośnie implementacji na "innych systemach" a dokładniej na openwrt. Dodałem paczki

Cytat

"opkg install python-curl python-crypto python-sqlite3 python-openssl python-imaging-library pyopenssl unzip unrar screen
kilka jest dodatkowych do innych rzeczy.
Po odpaleniu skryptu pojawia się następujący komunikat:

Cytat


Retrieving speedtest.net configuration...
Traceback (most recent call last):
File "./speedtest_cli.py", line 692, in
main()
File "./speedtest_cli.py", line 686, in main
speedtest()
File "./speedtest_cli.py", line 509, in speedtest
config = getConfig()
File "./speedtest_cli.py", line 319, in getConfig
root = ET.fromstring(''.encode().join(configxml))
File "/usr/lib/python2.7/xml/etree/ElementTree.py", line 1300, in XML
parser = XMLParser(target=TreeBuilder())
File "/usr/lib/python2.7/xml/etree/ElementTree.py", line 1466, in __init__
"No module named expat; use SimpleXMLTreeBuilder instead"
ImportError: No module named expat; use SimpleXMLTreeBuilder instead


Co z tym zrobić?
 
Maniek91PL
chans napisz raczej na forum eko Pfft Cezary to ogarnie Smile
Asus RT-AC3200
Rocket M5
APC BACK-UPS RS 1200
Mini Itx ASUS Q87T+ i7-4770S
Alienware m15
Vu+ Solo2
 
shibby
poszujaj modułów python-expat, python-xml, python-simplexml
Proxmox VE: i5-13400T, 64GB RAM, 2x 512GB NVMe, 3x 2TB SSD, Intel X710-DA2 SFP+
VM Router: OpenWRT 22.03.4
VM NAS: Synology SA6400
VM VPS: Debian, WWW, Home Assistant
Switch: Netgear MS510TXPP
Switch: Ubiquiti USW-Flex-mini - szt. 2
Wi-Fi: Ubiquiti U6-Lite - szt. 2
 
Przejdź do forum
Zaloguj
Wprowadź adres e-mail lub nazwę użytkownika

Hasło



Nie masz jeszcze konta? Zarejestruj się.

Zapomniałeś/aś hasła?
Aktualnie online
· Gości online: 97

· Użytkowników online: 0

· Łącznie użytkowników: 24,115
· Najnowszy użytkownik: Ja
Czat
Musisz się zalogować, aby opublikować wiadomość.

Maniek91PL
06-11-2024 22:37
dzięki !Grin

maxikaaz
29-10-2024 14:27
@Maniek91PL - Administration=> Admin Access, i tam masz "Allow Wireless Access" do zaznaczenia

Maniek91PL
26-10-2024 22:07
siemka! ktoś przypomni co się ustawiało jeśli nie mogę wejść od strony wifi do tomato? od lan działa

overflow2
04-10-2024 17:34
Kupowałem Asusy n10u albo n12d1 ale nie widzę ich, chyba już nie produkują, Chodzi o coś nowego i taniego. Transfery niewielkie.

maxikaaz
04-10-2024 09:38
@overflow2 patrząc po dostępności funkcji w nowych kompilacjach, to chyba nawet WRT54G/GL jeszcze ma OpenVPN, albo jakiś odpowiednik... zależy, na jakie transfery liczysz.

overflow2
30-09-2024 20:53
Jaki aktualnie najtańszy router do tomato do openvpn?

maxikaaz
27-07-2024 15:07
@servee - na początek router do rozebrania i obejrzenia, ciężko wróżyć tak tylko po objawach

maxikaaz
27-07-2024 14:55
@servee - cały kontroler nie pada tak sobie z powodu "zbiegu okoliczności",
więc prawdopodobnie gdzieś przepięcie.

servee
25-07-2024 13:33
@maxikaaz: działało, aż pewnego pięknego dnia przestało działać. W tym dniu była też burza, ale to raczej zbieg okoliczności.

maxikaaz
25-07-2024 11:38
@servee - o ile problem jest w obrębie samych wyjść (dławiki, warystory), to naprawialne, ale jeśli w samym SoC - to nienaprawialne ze względu na koszta. A co było przyczyną?

95,491,153 unikalnych wizyt