Linux - /var/log/messages 中的 martian 源

edu*_*ike 6 networking linux log-files dmesg

我不断在 /var/log/messages 中收到这些消息:

Mar  8 23:17:25 saas1 kernel: martian source 169.254.1.1 from 169.254.95.118, on dev usb0
Mar  8 23:17:25 saas1 kernel: ll header: ff:ff:ff:ff:ff:ff:00:21:5e:de:1b:be:08:06
Run Code Online (Sandbox Code Playgroud)

每 5 秒一次又一次地出现另一份完全相同的报告。

我在 169.254.95.118 上做了一个 whois 并收到一条奇怪的消息:

http://whois.arin.net/rest/nets;q=169.254.95.118?showDetails=true&showARIN=false

This is the "link local" block. It was set
aside for this special use in the Standards 
Track document, RFC 3927 and was further
documented in the Best Current Practice
RFC 5735, which can be found at:
http://www.rfc-editor.org/rfc/rfc3927.txt
http://www.rfc-editor.org/rfc/rfc5735.txt
It is allocated for communication between hosts 
on a single link. Hosts obtain these addresses 
by auto-configuration, such as when a DHCP 
server cannot be found.
A router MUST NOT forward a packet with an IPv4 
Link-Local source or destination address, 
irrespective of the router's default route configuration 
or routes obtained from dynamic routing protocols. 
A router which receives a packet with an IPv4 
Link-Local source or destination address MUST NOT 
forward the packet. This prevents forwarding of 
packets back onto the network segment from which 
they originated, or to any other segment.
Run Code Online (Sandbox Code Playgroud)

Bar*_*Vos 9

如果网络中的主机无法通过DHCP获取网络地址,则可以伪随机分配169.254.1.0到169.254.254.255之间的地址。所以它是一个没有连接到互联网的界面。这就是ARIN告诉你的。如果有人试图向这个地址发送一些东西,它被称为火星包。

usb0插的是什么?


pep*_*uan 6

维基百科:http: //en.wikipedia.org/wiki/APIPA

如果需要,您可以关闭火星日志记录:

echo 0 > /proc/sys/net/ipv4/conf/{all,default}/log_martians
Run Code Online (Sandbox Code Playgroud)


use*_*517 5

您没有告诉我们 USB0 的 IP 地址是什么,但我猜它不在链路本地子网中,因此从链路本地到达 usb0 的数据包将是“火星”。这是一个被广泛引用的解释

这些是 Linux 不希望从它们来自的方向(即来自内部主机的数据包进入外部接口)的数据包。原因可能是 LAN 上的机器配置错误。您可以通过/usr/src/linux/Documentation/proc.txt 中记录的 /proc/sys/net/ipv4/conf/ interface /log_martians关闭记录这些数据包