在 Linux 上,“net_ratelimit: 44 callbacks suppressed”是什么意思?

在 Linux 上,“net_ratelimit: 44 callbacks suppressed”是什么意思?

我正在尝试在基于 Debian 的路由器上调整 Snort 性能。我看到了类似以下内容的内容:

snort packet recv contents failure: No buffer space available

因此我将缓冲区增加到 8M,当这不起作用时,我尝试了 16M,按照http://fasterdata.es.net/fasterdata/host-tuning/linux/

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
# Increase TCP Buffers to 16 MB
sysctl -w net.core.rmem_default='16777216'
sysctl -w net.core.wmem_default='16777216'
sysctl -w net.core.rmem_max='16777216'
sysctl -w net.core.wmem_max='16777216'
sysctl -w net.ipv4.tcp_wmem='1048576 4194304 16777216'
sysctl -w net.ipv4.tcp_rmem='1048576 4194304 16777216'
sysctl -w net.core.netdev_max_backlog='30000'
exit 0

现在我看不到“无缓冲区空间”日志条目,但我有一个新的:

net_ratelimit: 44 callbacks suppressed

来自同一时间框架的唯一其他信息是这些火星人,也许这就是被压制的内容?

Jun  4 07:09:36 ilium ntpd_intres[3575]: host name not found: 0.us.pool.ntp.org
Jun  4 14:17:36 ilium kernel: [25743.259951] net_ratelimit: 44 callbacks suppressed
Jun  4 14:17:36 ilium kernel: [25743.259955] martian source 216.59.11.21 from 127.0.0.1, on dev eth0
Jun  4 14:17:36 ilium kernel: [25743.259956] ll header: 00:30:48:7c:f8:10:00:24:c4:49:8d:00:08:00
Jun  4 14:17:58 ilium kernel: [25765.055449] martian source 216.59.11.21 from 127.0.0.1, on dev eth0
Jun  4 14:17:58 ilium kernel: [25765.055451] ll header: 00:30:48:7c:f8:10:00:24:c4:49:8d:00:08:00
Jun  4 14:18:43 ilium kernel: [25809.998978] martian source 216.59.11.21 from 127.0.0.1, on dev eth0
Jun  4 14:18:43 ilium kernel: [25809.998980] ll header: 00:30:48:7c:f8:10:00:24:c4:49:8d:00:08:00
Jun  4 14:24:11 ilium kernel: [26138.700143] martian source 216.59.11.71 from 127.0.0.1, on dev eth0
Jun  4 14:24:11 ilium kernel: [26138.700145] ll header: 00:30:48:7c:f8:10:00:24:c4:49:8d:00:08:00
Jun  4 14:28:42 ilium kernel: [26409.130701] martian source 216.59.11.71 from 127.0.0.1, on dev eth0
Jun  4 14:28:42 ilium kernel: [26409.130703] ll header: 00:30:48:7c:f8:10:00:24:c4:49:8d:00:08:00

答案1

' net_ratelimit()' 用于限制来自内核的系统日志消息。
此“回调已抑制”消息表示它抑制了 44 条系统日志消息。
这是避免加载系统日志记录路径的尝试。

如果你有兴趣的话,这里是来源参考,
FreeBSD/Linux 内核交叉参考;sys/net/core/utils.c
它调用sys/lib/ratelimit.c--___ratelimit()

你可能想调查你的“火星源“,
但我想如果你忽略它,速率限制将处理日志
(修复未知的日志源通常是一个好主意)。

在你的情况下看起来就像你的火星包裹是,

传入或传出的数据包来源或目标地址在 127.0.0.0/8 范围内,该范围是为主机内的环回保留的。

相关内容