通过镜像端口配置传入的 Linux 数据包未被“netcat”检测到

通过镜像端口配置传入的 Linux 数据包未被“netcat”检测到

我已经设置了镜像端口的交换机设置:

mirror-port 4
interface 1
   monitor
   exit

这仅意味着端口 1 上的任何内容都会镜像到端口 4。我有一台连接到交换机端口 4 的 Linux 机器。Linux 机器 NIC 的 IP 为 .201。我的 tcpdump 看到 201:14001 的 udp 数据包。在同一台 Linux 机器上,如果我运行 nc -lu 14001,则看不到任何 udp 数据包。我添加了以下规则 ufw allow 14001/udp。

请注意,我不希望 Linux 机器与外界通信(通过同一个交换机)。我的数据包在 iptables 或 Linux 内核的哪个位置被丢弃了?

我尝试了以下方法:

  • 更改rp_filter为 0
  • 验证数据包的 MAC 地址与 NIC 的 MAC 地址相同
  • 我也知道tcpdump使用原始套接字,因此它会在内核过滤掉它们之前看到 NIC 上发生的所有内容。

所以我的问题是数据包在Linux内核堆栈的哪个位置被丢弃?

相关内容