1. 关闭不必要的网络服务
禁用未使用的网络服务(如FTP、Telnet、SSH等),减少后台进程对网络资源的占用。使用systemctl命令管理服务:
sudo systemctl stop 服务名 # 停止服务(如ssh)
sudo systemctl disable 服务名 # 禁止服务开机自启
2. 释放闲置网络接口与IP地址
sudo ip link set eth0 down # 关闭接口
sudo ip link set eth0 up # 需要时重新启用
sudo systemctl restart networking
/etc/network/interfaces或netplan配置)后重启服务。3. 清理与优化网络缓存
sudo sysctl -w net.ipv4.tcp_fin_timeout=30 # 缩短TIME_WAIT状态超时(默认60秒)
sudo sysctl -w net.ipv4.tcp_tw_reuse=1 # 允许复用TIME_WAIT状态的连接
# 注意:net.ipv4.tcp_tw_recycle在NAT环境下可能导致问题,建议禁用
systemd-resolved):sudo systemd-resolve --flush-caches
4. 流量控制与带宽回收
使用tc(流量控制)工具限制接口带宽,优先分配关键业务流量:
# 添加HTB队列规则(以eth0为例)
sudo tc qdisc add dev eth0 root handle 1: htb default 11
# 创建类别(限制总带宽为2Mbps,类别10为1Mbps,类别11为1Mbps)
sudo tc class add dev eth0 parent 1: classid 1:10 htb rate 1mbit ceil 2mbits
sudo tc class add dev eth0 parent 1: classid 1:20 htb rate 1mbit ceil 2mbits
# 将流量分配给类别(如src 192.168.1.100的流量分配到类别10)
sudo tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip src 192.168.1.100 flowid 1:10
或使用wondershaper简化操作:
sudo apt install wondershaper
sudo wondershaper eth0 1000 500 # 限制下载1000Kbps、上传500Kbps
5. 监控网络资源使用
实时监控流量与连接状态,识别高占用进程或连接:
sudo apt install iftop):sudo iftop -i eth0
sudo apt install nethogs):sudo nethogs eth0
sudo apt install nmon)。6. 优化TCP/IP参数
修改/etc/sysctl.conf文件,调整TCP窗口大小、拥塞控制算法等参数,提升资源利用率:
# 增大TCP缓冲区(接收/发送缓冲区)
net.core.rmem_max=16777216
net.core.wmem_max=16777216
net.ipv4.tcp_rmem=4096 87380 16777216
net.ipv4.tcp_wmem=4096 65536 16777216
# 启用CUBIC拥塞控制算法(适合高速网络)
net.ipv4.tcp_congestion_control=cubic
# 减少SYN连接超时时间(防止SYN Flood攻击)
net.ipv4.tcp_synack_retries=2
# 应用更改
sudo sysctl -p
7. 调整文件描述符限制
网络应用(如Web服务器、数据库)可能打开大量连接,增加文件描述符限制避免资源耗尽:
编辑/etc/security/limits.conf,添加以下内容(适用于所有用户):
* soft nofile 65535
* hard nofile 65535
或针对特定用户(如www-data)设置:
www-data soft nofile 65535
www-data hard nofile 65535
8. 管理网络连接与回收闲置连接
lsof命令查看当前网络连接,识别闲置连接(如长时间处于ESTABLISHED状态但无数据传输的连接):sudo lsof -i -n | grep ESTABLISHED
PID为实际进程ID):sudo kill -9 PID
9. 配置防火墙限制非必要流量
使用ufw或iptables限制非必要端口的访问,减少无效流量占用带宽:
sudo ufw allow 22/tcp # 允许SSH
sudo ufw limit 22/tcp # 限制SSH连接速率(防止暴力破解)
sudo ufw enable # 启用防火墙
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT # 允许HTTP
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT # 允许HTTPS
sudo iptables -A INPUT -j DROP # 拒绝其他所有入站流量
sudo iptables-save > /etc/iptables/rules.v4 # 保存规则