有人知道我可以在 Linux 控制台中使用哪个命令来检查客户的网络速度吗?我有网络 IP 和网关,我可以用 Linux 命令执行线路检查来查看上传和下载速度吗?
答案1
尝试 iperf。您需要 2 台机器。
- 服务器:
iperf -s
- 一个客户:
iperf -c IP-OF-THE-SERVER
iperf 有很多选项。请参阅其手册页以获取更多信息。
答案2
我使用 speedtest 的 cli
安装方法:
wget https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py
chmod a+rx speedtest_cli.py
sudo mv speedtest_cli.py /usr/local/bin/speedtest-cli
sudo chown root:root /usr/local/bin/speedtest-cli
然后您可以使用“speedtest-cli”命令开始测试,如果您使用:“speedtest-cli --share”,那么您将获得一个链接来分享结果。
答案3
测试下载速度通常非常容易,只需使用 curl 下载一个大文件并查看速度列。
如果你也需要上传速度,有一个名为“tespeed”的很好的 Python 脚本:
答案4
为了测试上传,您也可以将以下代码存储在任何网站上,从表单中调用它并从 curl 命令中调用它:
<?php
if ($_FILES["file"]["error"] > 0)
{
echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
}
else
{
$start = $_SERVER['REQUEST_TIME'];
$end= time();
echo "Upload: " . $_FILES["file"]["name"] . "<br>";
echo "Type: " . $_FILES["file"]["type"] . "<br>";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br>";
echo "Time:" . ($end - $start) . "<br>";
}
if ( move_uploaded_file($_FILES["file"]["tmp_name"], "/a/path/you/set/for/upload" . $_FILES["file"]["name"]) ) {
echo "Stored in: " ." /a/path/you/set/for/upload" . $_FILES["file"]["name"];
}
else {
echo "Could not save the file";
}
curl --form[电子邮件保护] --form submit=提交http://your.website.com