Linux dropped(丢包)排查可从以下方面入手:
查看网络接口统计
ip -s link show <接口名>或ethtool -S <接口名>,关注rx_dropped(接收丢包)、tx_dropped(发送丢包)字段,判断是否因网卡队列满或硬件问题导致。/proc/net/dev查看rx_dropped、tx_dropped,区分内核层或驱动层丢包。检查防火墙规则
iptables -L -v -n查看是否有大量DROP规则命中,或通过journalctl搜索IPTABLES_DROP日志。nf_conntrack是否溢出,可通过dmesg或/proc/sys/net/netfilter/nf_conntrack_count检查。分析系统日志
journalctl或查看/var/log/syslog,搜索dropped、error等关键词,定位内核或驱动报错。监控网络流量与性能
iftop、nload监控实时流量,判断是否因拥塞丢包。tcpdump抓包分析,确认丢包发生在哪一层(如IP层、传输层)。调整内核参数
net.core.netdev_max_backlog(接收队列长度)、tcp_max_syn_backlog(SYN队列长度)等参数,通过sysctl修改。排查硬件与驱动
smartctl、memtest86检测硬件故障。参考来源: