温馨提示×

Ubuntu Stream8如何提升网络速度

小樊
42
2025-12-12 22:25:21
栏目: 智能运维

Ubuntu 20.04 LTS 网络提速实操指南

说明与前提

  • 你提到的“Ubuntu Stream8”通常指的是 Ubuntu 20.04 LTS(Focal Fossa)。以下优化以桌面版与服务器版均可适用为原则,优先做“零风险、可回退”的设置,并配合测速验证效果。

一 基线测量与定位瓶颈

  • 测速与链路质量
    • 测带宽与抖动:speedtest-cli --simple 或安装 speedtest 应用;多时段多次测试取中位数。
    • 延迟与丢包:ping -c 20 8.8.8.8mtr --report-wide --report 100 8.8.8.8
    • 内网/服务器带宽:iperf3 -s(服务端),iperf3 -c <server_ip> -P 4(客户端,4 并发)。
  • 检查 DNS 解析耗时
    • systemd-resolve --statisticsresolvectl status 查看当前 DNS 服务器与缓存命中;dig example.com +stats 观察 Query time。
  • 检查网卡与驱动
    • lspci | grep -i ethernet / lsusb 确认网卡型号;ethtool <iface> 查看 Speed/Duplex/Auto-negotiation;必要时固定速率:sudo ethtool -s <iface> speed 1000 duplex full autoneg off(请先确认链路支持)。
  • 路由与出口
    • ip route 检查默认路由;多出口/多网卡时确认业务流量走期望的 WAN/网关

二 低风险高收益的优化

  • 更新系统与驱动
    • sudo apt update && sudo apt full-upgrade -y && sudo reboot,保持内核与网卡驱动为较新版本,常能修复已知的网络栈与驱动问题。
  • DNS 优化与缓存
    • 使用本地缓存 DNS(dnsmasq):sudo apt install -y dnsmasq && echo "listen-address=127.0.0.1" | sudo tee /etc/dnsmasq.conf && echo "nameserver 127.0.0.1" | sudo tee /etc/resolv.conf,随后重启网络或系统;可显著减少重复域名解析耗时。
  • 调整 MTU 适配链路
    • 以太网常见 1500;若链路支持巨帧(如同一二层网内服务器/NAS),可尝试 9000(仅在两端一致时启用):sudo ip link set dev <iface> mtu 9000;异常时改回 1500。
  • 启用 TCP 加速特性
    • 开启窗口缩放与快速打开(适合高 RTT/高带宽链路):
      • echo "net.ipv4.tcp_window_scaling=1" | sudo tee -a /etc/sysctl.conf
      • echo "net.ipv4.tcp_fastopen=3" | sudo tee -a /etc/sysctl.conf
      • sudo sysctl -p
  • 选择性禁用 IPv6(仅在确认为 DNS/路由导致问题时)
    • 临时:echo 1 | sudo tee /proc/sys/net/ipv6/conf/all/disable_ipv6
    • 永久:在 /etc/sysctl.conf 加入 net.ipv4.tcp_fastopen=1net.ipv6.conf.all.disable_ipv6=1sudo sysctl -p;注意可能影响依赖 IPv6 的服务。

三 进阶调优与场景化建议

  • 并发下载与协议选择
    • 使用支持多连接的下载器(如 aria2c -x16 -s16),或应用层多源/多线程(如 rclone 多分片);对实时性要求高的内部服务可评估 UDPQUIC 替代方案。
  • 多路径传输
    • 若内核与网络支持 MPTCP,可启用以聚合多网卡带宽:sudo sysctl -w net.mptcp.mptcp_enabled=1,并通过 ss -ant | grep MPTCP 观察连接状态。
  • 代理与缓存
    • 如必须使用代理,确保仅对需要的流量生效,避免系统级全局代理造成额外跳转;命令行临时代理可用 export http_proxy=http://IP:PORTunset http_proxy 控制作用域。

四 一键回退与注意事项

  • 回退方法
    • DNS:sudo rm /etc/dnsmasq.conf /etc/resolv.conf && echo "nameserver 223.5.5.5" | sudo tee /etc/resolv.conf(按需替换为你的运营商 DNS)。
    • sysctl:删除或注释 /etc/sysctl.conf 中新增行后执行 sudo sysctl -p
    • MTU:sudo ip link set dev <iface> mtu 1500
    • IPv6:将 /proc/sys/net/ipv6/conf/all/disable_ipv6 设为 0 或在 /etc/sysctl.conf 移除相关行后 sudo sysctl -p
  • 注意事项
    • 修改 MTU/速率/双工 前务必确认对端设备支持;变更网络栈参数后建议重启相关服务或系统。
    • 企业/校园网可能有策略限制(如禁用巨帧、拦截异常 TCP 选项),变更后需与网络管理员确认。
    • 每次优化后使用第二部分的方法复测,保留能稳定提升且不引入副作用的配置。

0