进出同一 IP 的内核 martian 源

the*_*ien 13 networking ip

我们kernel: martian source在几台服务器上间歇性地看到eth0 的日志条目。有趣的是,它们往返于同一个 IP。例如:

Nov  4 02:20:27 tcffmppr6db09 kernel: martian source 10.153.242.13 from 10.153.242.13, on dev eth0.3171
Run Code Online (Sandbox Code Playgroud)

这只发生在几台服务器上。大约有 60 个以相同方式配置了 eth0(显然,不同的 IP)。

我应该注意什么来追踪这个?

编辑:

这个特定接口的路由是默认路由,所以我认为这不是发送错误接口的问题。

比尔盖*_*尔盖子 21

问题

我今天遇到了同样的问题,火星数据包淹没了我的内核日志。所有 martian 数据包都来自相同的公共 IP 地址eth0到相同的公共 IP 地址eth0(删除了真实 IP 和报头)。

IPv4: martian source x.x.x.x from x.x.x.x, on dev eth0
ll header: 00000000: aa bb cc dd ee ff gg hh ii jj kk ll 08 00
Run Code Online (Sandbox Code Playgroud)

经过一番研究,我意识到原因隐藏在ll header火星包中。

理论

假设这是在以太网连接中,ll header实际上显示了以太网类型 II 帧的开始部分,其中包含目标 MAC 地址、源 MAC 地址和一个 ID,指示数据包的其余部分的类型。

以太网类型 II 帧格式[1]

如您所见,前 6 个字节是目标 MAC 地址,接下来的 6 个字节是源 MAC 地址,最后 2 个字节是代码。常用代码有:

  • 08 00:IP数据包
  • 86 dd: IPv6 数据包
  • 08 06: ARP 数据包

解释

回到我的例子。

IPv4: martian source x.x.x.x from x.x.x.x, on dev eth0
ll header: 00000000: aa bb cc dd ee ff gg hh ii jj kk ll 08 00
Run Code Online (Sandbox Code Playgroud)

这告诉我们,

  • 收到了一个具有相同源 IP 地址和目标 IP 地址的数据包。
  • 它是由 发送的GG:HH:II:JJ:KK:LL,这是一个我不知道的 MAC 地址。
  • 它的目的地是AA:BB:CC:DD:EE:FF,这是我自己的 MAC 地址。
  • 它是一个 IP 数据包 ( 08 00)。

如果一个数据包的源IP地址和目的IP地址相同,那么它必须由同一个网络接口发送,但是源和目的的MAC不同!怎么可能?

因此,很明显数据包来自火星,要么存在一些路由问题,要么配置了网络中的机器,要么有人试图欺骗 IP/MAC 地址。下一步是检查有问题的源 MAC 地址。


slm*_*slm 9

摘自Linux:记录可疑的火星数据包/不可路由的源地址

Martian 数据包只不过是一个 IP 数据包,它指定了一个源地址或目标地址,该地址为 Internet 号码分配机构 (IANA) 的特殊用途保留。

以下是此类地址块的示例:

  • 10.0.0.0/8
  • 127.0.0.0/8
  • 224.0.0.0/4
  • 240.0.0.0/4
  • ::/128
  • ::/96
  • ::1/128

要跟踪这一点,您有多种选择。您可以忽略它,您可以通过防火墙阻止它,或者您可以使用tcpdumpwireshark剖析数据包的内容,这可能会让您深入了解导致这种情况的原因。

其他说明和来源

搜索时显示的另一个短语如下:

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

我找不到这一段的原始来源,但是如果你搜索它,它会显示很多,逐字逐句!这将问题描述为一个数据包通过一个接口 (NIC) 进入系统,该接口未指定通过该接口进入系统。

最后,我也会在这个主题上引用维基百科,它也与上述内容大致相同。

Martian 数据包是一个 IP 数据包,它指定了一个源地址或目标地址,该地址由互联网号码分配机构(IANA)保留以供特殊用途。如果在公共互联网上看到,这些数据包实际上无法按照声称的方式来源或交付。1但是,某些保留地址可以使用多播或在专用网络、本地链路或环回接口上进行路由,具体取决于它们属于哪个特殊用途范围。2

Martian 数据包通常源自拒绝服务攻击中的 IP 地址欺骗,3但也可能源自网络设备故障或主机配置错误。1

参考