librespeed / speedtest-cli

Command line client for LibreSpeed
GNU Lesser General Public License v3.0
487 stars 60 forks source link

Windows CLI hangs on "Selecting the fastest server based on ping" #33

Closed IncPlusPlus closed 3 years ago

IncPlusPlus commented 3 years ago

When running the librespeed-cli command on Windows, it hangs on Selecting the fastest server based on ping. It then stays like that permanently until forcibly stopped.

Verbose logs

Click to expand

``` $ librespeed-cli --verbose Retrieving server list from https://librespeed.org/backend-servers/servers.php Selecting the fastest server based on ping Failed to ping target host: socket: The requested protocol has not been configured into the system, or no implementation for it exists. Will try TCP ping Error checking for server status: Get "https://speedtest5.wegozyn.eu/backend/empty.php": dial tcp: lookup speedtest5.wegozyn.eu: no such host Server Frankfurt am Main, Germany (speedtest5.wegozyn.eu) doesn't seem to be up, skipping Failed to ping target host: socket: The requested protocol has not been configured into the system, or no implementation for it exists. Will try TCP ping Failed to ping target host: socket: The requested protocol has not been configured into the system, or no implementation for it exists. Will try TCP ping Failed to ping target host: socket: The requested protocol has not been configured into the system, or no implementation for it exists. Will try TCP ping Failed to ping target host: socket: The requested protocol has not been configured into the system, or no implementation for it exists. Will try TCP ping Failed to ping target host: socket: The requested protocol has not been configured into the system, or no implementation for it exists. Will try TCP ping Failed to ping target host: socket: The requested protocol has not been configured into the system, or no implementation for it exists. Will try TCP ping Failed to ping target host: socket: The requested protocol has not been configured into the system, or no implementation for it exists. Will try TCP ping Failed to ping target host: socket: The requested protocol has not been configured into the system, or no implementation for it exists. Will try TCP ping Failed to ping target host: socket: The requested protocol has not been configured into the system, or no implementation for it exists. Will try TCP ping Failed to ping target host: socket: The requested protocol has not been configured into the system, or no implementation for it exists. Will try TCP ping Failed to ping target host: socket: The requested protocol has not been configured into the system, or no implementation for it exists. Will try TCP ping Server New York, United States (1) (BuyVM) (ny1.backend.librespeed.nixnet.services) doesn't seem to be up, skipping Failed to ping target host: socket: The requested protocol has not been configured into the system, or no implementation for it exists. Will try TCP ping Failed to ping target host: socket: The requested protocol has not been configured into the system, or no implementation for it exists. Will try TCP ping Failed to ping target host: socket: The requested protocol has not been configured into the system, or no implementation for it exists. Will try TCP ping Failed to ping target host: socket: The requested protocol has not been configured into the system, or no implementation for it exists. Will try TCP ping Failed to ping target host: socket: The requested protocol has not been configured into the system, or no implementation for it exists. Will try TCP ping Failed to ping target host: socket: The requested protocol has not been configured into the system, or no implementation for it exists. Will try TCP ping Error checking for server status: Get "https://il1.us.backend.librespeed.org/empty.php": context deadline exceeded (Client.Timeout exceeded while awaiting headers) Server Chicago, United States (HostHatch) (il1.us.backend.librespeed.org) doesn't seem to be up, skipping Failed to ping target host: socket: The requested protocol has not been configured into the system, or no implementation for it exists. Will try TCP ping Error checking for server status: Get "https://la1.us.backend.librespeed.org/empty.php": context deadline exceeded (Client.Timeout exceeded while awaiting headers) Server Los Angeles, United States (2) (HostHatch) (la1.us.backend.librespeed.org) doesn't seem to be up, skipping Failed to ping target host: socket: The requested protocol has not been configured into the system, or no implementation for it exists. Will try TCP ping ```

The cause of this is explained in go-ping/ping#17. It is also explained in the Supported Operating Systems section of the README. I'd make a PR to fix this but I know so little about Go that I can't identify where this fix would go in speedtest.go.

maddie commented 3 years ago

Can you try v1.0.9, this issue should be fixed by commit 08d21d6.

maddie commented 3 years ago

@IncPlusPlus Hi, could you help confirm if this issue has been resolved by the latest release? Thanks!

IncPlusPlus commented 3 years ago

Sorry for the delay. It's been a crazy week. The error does still show up when using the --verbose switch but it does make it past that point. It completes the ping and the rest of the speed test just fine now.