解释来自 rsyslog 的 DHCP 相关消息

解释来自 rsyslog 的 DHCP 相关消息

/var/log/消息从 EC2 实例中可以看到很多行,例如:

<date/timestamp> ip-<IP_HERE> ec2net: [get_meta] Trying to get http://169.254.169.254/latest/meta-data/network/interfaces/macs/MAC_ADDR/local-ipv4s
<date/timestamp> ip-<IP_HERE> ec2net: [rewrite_aliases] Rewriting aliases of eth0
<date/timestamp> ip-<IP_HERE> dhclient[2187]: XMT: Solicit on eth0, interval 112321ms.
<date/timestamp> ip-<IP_HERE> dhclient[2187]: XMT: Solicit on eth0, interval 111231ms.
....
and more XMT: Solicit messages (hundreds more)

为什么会有数百条这样的恳求信息?这是什么XMT: Solicit on eth0意思?我该如何解释?

这仅仅是 DHCP 请求(或多个请求)的日志吗?我之前没见过“XMT”。

答案1

XMT Solicit 基本上是 DHCPv6 (IPv6 DHCP) 请求。如果您根本不使用 IPv6,请禁用它,因为您的实例正在尝试请求 IPv6-IP。

问题似乎是您的实例正在运行较旧版本的 dhclient,其日志级别为“正常”。通常,dhclient 应仅记录“警告”及以上的日志级别。

您还可以通过添加此代码来禁用 dclient 和 ec2net 的日志记录消息

:programname,isequal,"dhclient"  ~
:programname,isequal,"ec2net"    ~

到 /etc/rsyslog.d/ 下的新文件(例如“dhclient”)。

更多详情请见: https://en.wikipedia.org/wiki/DHCPv6#Example

答案2

您可以通过创建一个扩展名为 .conf 的文件来隐藏来自 dhclient 的所有消息/etc/rsyslog.d/,然后添加更新的 rsyslog 语法,如下所示:

echo "if $programname == "dhclient" then stop" > /etc/rsyslog.d/dhclient.conf
systemctl restart rsyslog

如果你尝试按照其他答案说的做,你会得到 Aug 9 19:53:27 home rsyslogd: warning: ~ action is deprecated, consider using the 'stop' statement instead [v8.24.0-41.amzn2.2.1 try http://www.rsyslog.com/e/2307 ]

相关内容