温馨提示×

centos dropped为何会出现

小樊
46
2026-10-09 02:03:02
栏目: 智能运维

在 CentOS(或一般 Linux 系统)中,“dropped” 通常出现在网络统计、系统日志或资源监控里,表示某些数据包 / 事件被丢弃。不同场景下含义不同,下面按常见情况解释。


一、网络层面:RX dropped / TX dropped

1. 网卡统计中的 dropped

ip -s link
# 或
ifconfig

例如:

RX: bytes packets errors dropped ...

常见原因:

  • 网卡 ring buffer 满(瞬时流量过大)
  • 内核收包队列满(softirq 处理不过来)
  • 非预期 MAC / VLAN / 多播过滤
  • 驱动或固件 bug
  • 开启了某些 offload 导致异常

✅ 排查:

ethtool -S eth0 | grep drop
ethtool -g eth0

2. tcpdump 中的 “dropped”

tcpdump -i eth0

显示:

X packets captured
Y packets received by filter
Z packets dropped by kernel

原因:

  • tcpdump 用户态处理太慢
  • 抓包 buffer 太小
tcpdump -B 4096 ...

二、系统 / 内核层面 dropped

1. conntrack dropped

cat /proc/net/stat/nf_conntrack

或:

dmesg | grep conntrack

nf_conntrack: table full, dropping packet

原因:

  • 连接数超过 nf_conntrack_max
  • 短连接(如 NAT、LB)过多

✅ 解决:

sysctl -w net.netfilter.nf_conntrack_max=1048576

2. 防火墙 dropped(iptables / nftables)

iptables -L -v -n

显示 DROP 计数增加

原因:

  • 明确写了 DROP 规则
  • 默认策略是 DROP

三、应用 / 服务层面

1. 日志中出现 dropped

如:

  • sshd: connection dropped
  • message dropped
  • syslog dropped

原因:

  • 连接异常中断
  • 日志速率过快被限流
  • 缓冲区满

四、CentOS -specific 注意点

  • CentOS 7:使用 network.service
  • CentOS 8 / Stream:默认 NetworkManager
  • 内核版本不同,drop 统计口径可能不同

快速定位思路

  1. 看 哪里 出现 dropped(网卡 / 防火墙 / 内核)
  2. 看 时间是否集中(流量高峰?部署?)
  3. 看 是否影响业务(丢包?延迟?)

如果你能贴出具体输出(如 ip -s link、dmesg、iptables -L -v),我可以更精准判断是哪一种 dropped。

0 踩