K2P老毛子Padavan固件丢包

        昨天路由忽然扑街了,回家检查ssh上不去,ping都ping不通,上个月也发生过一次,重新上电恢复正常,检查log发现有大量报错:

net_ratelimit: 36 callbacks suppressed
nf_conntrack: table full (16384), dropping packet
nf_conntrack: table full (16384), dropping packet
nf_conntrack: table full (16384), dropping packet
nf_conntrack: table full (16384), dropping packet
nf_conntrack: table full (16384), dropping packet
nf_conntrack: table full (16384), dropping packet
nf_conntrack: table full (16384), dropping packet
nf_conntrack: table full (16384), dropping packet
nf_conntrack: table full (16384), dropping packet
nf_conntrack: table full (16384), dropping packet

想了下最近装了啥?似乎是NAS上多跑了1个PCDN,导致上下行数据包爆了....

问了下AI,是内核参数,管连接条目;

在Linux中,net.netfilter.nf_conntrack_max 参数定义了系统中允许的最大连接跟踪条目(connection tracking entries)的数量1。这个参数对于网络性能尤其重要,因为它限制了内核可以跟踪的并发连接数。如果这个值设置得太低,可能会导致连接跟踪表过快地填满,从而导致新的网络连接无法建立。

nf_conntrack_max 的默认值通常基于系统内存大小和预期的网络负载来设定。例如,对于内存大于4GB的系统,建议的 nf_conntrack_max 值可能会更高,以适应更大的并发连接数。调整这个参数可以帮助优化大量TCP并发连接的处理,特别是在高流量的网络环境中1

此外,nf_conntrack_max 的值通常与 nf_conntrack_buckets 参数的值相关联,后者定义了用于存储连接跟踪条目的哈希表的大小。理想情况下,nf_conntrack_buckets 的值应该是 nf_conntrack_max 的1/8,以确保哈希表的效率和性能1

总的来说,net.netfilter.nf_conntrack_max 参数对于维护网络连接的稳定性和性能至关重要,特别是在处理大量网络流量时。

 到这个目录检查一下各参数分别多少

[K2P /proc/sys/net/netfilter]# ls
nf_conntrack_acct                        nf_conntrack_tcp_loose
nf_conntrack_buckets                     nf_conntrack_tcp_max_retrans
nf_conntrack_checksum                    nf_conntrack_tcp_no_window_check
nf_conntrack_count                       nf_conntrack_tcp_timeout_close
nf_conntrack_events                      nf_conntrack_tcp_timeout_close_wait
nf_conntrack_events_retry_timeout        nf_conntrack_tcp_timeout_established
nf_conntrack_expect_max                  nf_conntrack_tcp_timeout_fin_wait
nf_conntrack_frag6_high_thresh           nf_conntrack_tcp_timeout_last_ack
nf_conntrack_frag6_low_thresh            nf_conntrack_tcp_timeout_max_retrans
nf_conntrack_frag6_timeout               nf_conntrack_tcp_timeout_syn_recv
nf_conntrack_generic_timeout             nf_conntrack_tcp_timeout_syn_sent
nf_conntrack_icmp_timeout                nf_conntrack_tcp_timeout_time_wait
nf_conntrack_icmpv6_timeout              nf_conntrack_tcp_timeout_unacknowledged
nf_conntrack_log_invalid                 nf_conntrack_udp_timeout
nf_conntrack_max                         nf_conntrack_udp_timeout_stream
nf_conntrack_nat_mode                    nf_log
nf_conntrack_tcp_be_liberal

默认是1xxxx好像,按上面意思,修改成nf_conntrack_buckets的8倍吧

[K2P /proc/sys/net/netfilter]# echo 131072 > /proc/sys/net/netfilter/nf_conntrack_max

观察一晚上,没有新增丢包日志

最后写到路由配置里去,位置在【高级设置】-【自定义设置】-【脚本】-【conntrack】下面

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值