网络连接问题
DNS解析问题
系统配置限制
下载源限制
# 检查当前下载速度
speedtest-cli
# 检查网络延迟
ping -c 5 google.com
# 检查路由路径
traceroute google.com
# 检查当前带宽使用
nload # 需安装nload工具
# 测试不同DNS响应速度
dig @8.8.8.8 google.com | grep "Query time"
dig @1.1.1.1 google.com | grep "Query time"
dig @208.67.222.222 google.com | grep "Query time"
# 修改DNS设置
sudo nano /etc/resolv.conf
# 添加最快的DNS服务器,例如:
nameserver 8.8.8.8
nameserver 1.1.1.1
# 清空DNS缓存(根据发行版)
# systemd-resolved:
sudo systemd-resolve --flush-caches
# nscd:
sudo systemctl restart nscd
# 查看当前TCP窗口大小
cat /proc/sys/net/ipv4/tcp_window_scaling
# 临时优化参数(重启后失效)
sudo sysctl -w net.core.rmem_max=4194304
sudo sysctl -w net.core.wmem_max=4194304
sudo sysctl -w net.ipv4.tcp_rmem="4096 87380 4194304"
sudo sysctl -w net.ipv4.tcp_wmem="4096 16384 4194304"
sudo sysctl -w net.ipv4.tcp_congestion_control=cubic
# 永久生效 - 添加到/etc/sysctl.conf
sudo nano /etc/sysctl.conf
# 添加上述参数(去掉-w和引号)
# 安装aria2(多线程下载工具)
sudo apt install aria2 # Debian/Ubuntu
sudo yum install aria2 # CentOS/RHEL
# 使用aria2下载(16线程示例)
aria2c -x 16 -s 16 "下载URL"
# 安装axel(另一个多线程工具)
sudo apt install axel
axel -n 10 "下载URL"
wget --no-check-certificate --limit-rate=20M -c "下载URL"
# 检查网卡设置
ethtool eth0 # 替换为你的网卡名称
# 启用巨帧(如果网络支持)
sudo ethtool -K eth0 rx on tx on sg on tso on gso on gro on lro on
sudo ethtool -G eth0 rx 4096 tx 4096
# 设置MTU(需要网络支持)
sudo ifconfig eth0 mtu 9000
# 查看当前文件描述符限制
ulimit -n
# 临时增加限制
ulimit -n 65535
# 永久修改(需要编辑/etc/security/limits.conf)
* soft nofile 65535
* hard nofile 65535
如果特定服务器速度慢,可以尝试: 1. 使用镜像站点 2. 使用P2P下载工具(如torrent) 3. 使用代理或VPN切换出口节点
# 监控TCP连接
ss -s
ss -tulnp
# 检查网络丢包
sudo netstat -s | grep -i "segments retransmitted"
# 使用tcpdump抓包分析
sudo tcpdump -i eth0 -w capture.pcap
# 然后用Wireshark分析
通过以上方法综合排查和优化,通常可以显著提升Linux系统的下载速度。如果问题依旧存在,可能需要联系网络服务提供商进一步排查。