Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Speedtest CLI. Run speedtest on pfSense box

    Scheduled Pinned Locked Moved pfSense Packages
    167 Posts 52 Posters 137.3k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Sergei_ShablovskyS
      Sergei_Shablovsky
      last edited by Sergei_Shablovsky

      I still STRONGLY NOT RECOMMEND testing uplink speed by speedtest - nowadays MOST ISP creating special ACLs and ruleset for speedtest servers BOTH on aggregate level and on core level to “looks better than counterpart that You compare to”.

      By other words, all speedtest results would be looks really great (hi speed, low latency, low jitter..) BUT all Your REAL traffic would be not so good. ;)

      And another one important factor: most ISP make a little shaping (frequently on aggregate level than on core) to pay a little less for traffic ;) Depend on state and ISP this may be -7-15% of total uplink bandwidth. As a result You have 85-93% of bandwidth You pay for.

      But NO ONE of sysadmins told You this truth... No any conspiracy, just business.

      And I RECOMMEND TO CONFIGURE FREEBSD TCP/IP STACK TO USING QUICK ALGORITHM, because most of nowadays ISPs use QUICK on both aggregate and core level.
      (Please read posts about QUIC on this forum)

      —
      CLOSE SKY FOR UKRAINE https://youtu.be/_tU1i8VAdCo !
      Help Ukraine to resist, save civilians people’s lives !
      (Take an active part in public protests, push on Your country’s politics, congressmans, mass media, leaders of opinion.)

      1 Reply Last reply Reply Quote 0
      • P
        patrick.pesegodinski @MarcO42
        last edited by

        @marco42

        Can You send-me the tutorial to create the speedtest_cli.js?

        M 1 Reply Last reply Reply Quote 0
        • M
          MarcO42 @patrick.pesegodinski
          last edited by MarcO42

          @patrick-pesegodinski
          Hi,
          that files will be created and is only a property bag that is loaded when the widget is called.
          Cheers

          P 1 Reply Last reply Reply Quote 0
          • P
            patrick.pesegodinski @MarcO42
            last edited by

            @marco42 I don't understand your respost.

            In the .zip no is included the speedtest-cli.js

            1 Reply Last reply Reply Quote 0
            • stephenw10S
              stephenw10 Netgate Administrator
              last edited by

              speettest_cli.js is a temporary file that is created by speedtest.sh. It's not supposed to be in the file.

              1 Reply Last reply Reply Quote 2
              • C
                carbonejf
                last edited by

                Hi,
                Great script, il works well for me, but I ghave a little problem with speedtest.
                I don't check every day the speed, and sometime it "stop" to work.
                The reason is that speedtest don't send result because it s waiting that I accept the licence.
                So i must connect with putty on my pfsence, start speedtest and validate licence:

                speedtest
                ==============================================================================
                
                Ookla collects certain data through Speedtest that may be considered
                personally identifiable, such as your IP address, unique device
                identifiers or location. Ookla believes it has a legitimate interest
                to share this data with internet providers, hardware manufacturers and
                industry regulators to help them understand and create a better and
                faster internet. For further information including how the data may be
                shared, where the data may be transferred and Ookla's contact details,
                please see our Privacy Policy at:
                
                       http://www.speedtest.net/privacy
                
                ==============================================================================
                
                Do you accept the license? [type YES to accept]: YES
                License acceptance recorded. Continuing.
                
                

                Do you now a solution to stop to ask me to accept licence every month (or something like this)?

                M 1 Reply Last reply Reply Quote 0
                • M
                  MarcO42 @carbonejf
                  last edited by

                  @carbonejf did you install it?
                  Like:

                  pkg install py37-speedtest-cli-2.1.3
                  
                  C 1 Reply Last reply Reply Quote 0
                  • C
                    carbonejf @MarcO42
                    last edited by carbonejf

                    @marco42 Sorry I did it a long time ago and I don't rememberhow I install it :(
                    I installed a package yes, but maybe not this one

                    M 1 Reply Last reply Reply Quote 0
                    • M
                      MarcO42 @carbonejf
                      last edited by

                      @carbonejf Maybe you update or uninstall/reinstall to get the latest version? That could help.

                      C 1 Reply Last reply Reply Quote 0
                      • C
                        carbonejf @MarcO42
                        last edited by

                        @marco42 I don't use this version, my speedtest is: Speedtest by Ookla 1.0.0.2 (5ae238b) FreeBSD 12.3-STABLE amd64

                        M 1 Reply Last reply Reply Quote 0
                        • M
                          MarcO42 @carbonejf
                          last edited by

                          @carbonejf Ok, that one I don't know, sorry.

                          1 Reply Last reply Reply Quote 0
                          • P
                            patrick.pesegodinski @icewraithuk
                            last edited by

                            @icewraithuk how you import the "urllib2" in the pfsense?

                            I don't search for install.

                            GertjanG 1 Reply Last reply Reply Quote 0
                            • P
                              patrick.pesegodinski
                              last edited by

                              @icewraithuk said in Speedtest CLI. Run speedtest on pfSense box:

                              myAPI="<your api="" key="" goes="" here,="" in="" the="" quotes="">"
                              baseURL = 'https://api.thingspeak.com/update?api_key=%s' % myAPI
                              print baseURL</your>

                              The command "your' doens't work

                              provelsP 1 Reply Last reply Reply Quote 0
                              • provelsP
                                provels @patrick.pesegodinski
                                last edited by

                                @patrick-pesegodinski said in Speedtest CLI. Run speedtest on pfSense box:

                                myAPI="<your api="" key="" goes="" here,="" in="" the="" quotes="">"

                                myAPI="put_key_here"

                                PS - That post was the only one that user ever made, and besides it was about 6 years ago.

                                Peder

                                MAIN - pfSense+ 24.11-RELEASE - Adlink MXE-5401, i7, 16 GB RAM, 64 GB SSD. 500 GB HDD for SyslogNG
                                BACKUP - pfSense+ 23.01-RELEASE - Hyper-V Virtual Machine, Gen 1, 2 v-CPUs, 3 GB RAM, 8GB VHDX (Dynamic)

                                P 1 Reply Last reply Reply Quote 0
                                • P
                                  patrick.pesegodinski @provels
                                  last edited by

                                  @provels said in Speedtest CLI. Run speedtest on pfSense box:

                                  @patrick-pesegodinski said in Speedtest CLI. Run speedtest on pfSense box:

                                  myAPI="<your api="" key="" goes="" here,="" in="" the="" quotes="">"

                                  myAPI="put_key_here"

                                  PS - That post was the only one that user ever made, and besides it was about 6 years ago.

                                  I think the command for python 3.8 was changed. I connect with this command:

                                  import urllib.request

                                  baseURL = 'https://api.thingspeak.com/update?api_key=MY_KEY=0'

                                  1 Reply Last reply Reply Quote 0
                                  • GertjanG
                                    Gertjan @patrick.pesegodinski
                                    last edited by

                                    @patrick-pesegodinski said in Speedtest CLI. Run speedtest on pfSense box:

                                    how you import the "urllib2" in the pfsense?

                                    Here :
                                    /usr/local/lib/python3.9/urllib
                                    /usr/local/lib/python3.11/urllib

                                    It's already there.
                                    If it isn't, mention your pfSense version.
                                    Then I'll tell you to upgrade ;)

                                    Install FreeBSD packages (not from Netgate) yourself on pfSense : that's not a good idea.

                                    No "help me" PM's please. Use the forum, the community will thank you.
                                    Edit : and where are the logs ??

                                    C 1 Reply Last reply Reply Quote 0
                                    • C
                                      chrcoluk @Gertjan
                                      last edited by chrcoluk

                                      For modern pfSense, I just did this. (new download link also)

                                      fetch -o speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py
                                      chmod +x speedtest-cli

                                      Then edit first line of speedtest-cli to the following.

                                      #!/usr/bin/env python3.8
                                      

                                      Should run at this point, no need to install extra dependency packages.

                                      As Jim said, it might be slower than from a fast client device as pfSense is optimised for routing.

                                      I got about 600 down on the cli, but then immediately did a test on my PC which got 954mbit down (gigabit connection). But I think having this as an option to help diagnose issues can be useful hence I installed it.

                                      pfSense CE 2.7.2

                                      GertjanG 1 Reply Last reply Reply Quote 0
                                      • GertjanG
                                        Gertjan @chrcoluk
                                        last edited by

                                        @chrcoluk said in Speedtest CLI. Run speedtest on pfSense box:

                                        For modern pfSense

                                        Not for my 23.01 then, as it doesn't have python3.8

                                        No "help me" PM's please. Use the forum, the community will thank you.
                                        Edit : and where are the logs ??

                                        1 Reply Last reply Reply Quote 0
                                        • A
                                          asulwer
                                          last edited by

                                          with some minor changes this worked for me on version 24.03-release

                                          pkg search speedtest
                                          py311-speedtest-cli-2.1.3      Command line interface for testing internet bandwidth
                                          

                                          use this command to install

                                          pkg update ; pkg install -y py311-speedtest-cli && curl -o /usr/local/www/widgets/widgets/speedtest.widget.php https://raw.githubusercontent.com/aln-1/pfsense-speedtest-widget/master/speedtest.widget.php
                                          
                                          1 Reply Last reply Reply Quote 1
                                          • First post
                                            Last post
                                          Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.