使用 VLAN 接口时以太网帧重复

使用 VLAN 接口时以太网帧重复

我在Linux机器上有三个进程:

  • 第一种是使用套接字,它绑定到所有网络接口。
  • 第二种是使用广播发送ethercat数据包(ethercat不使用IP层)。
  • 第三种是使用广播发送ethercat数据包(ethercat不使用IP层)。

我想要实现的目标:

  • 从第一个进程发送的数据包应该到达它的 IP 目的地(现在可以了)
  • 第二个进程发送的 Ethercat 广播应该只到达交换机的 4 号端口,而不是全部
  • 第三个进程发送的 Ethercat 广播应该只到达交换机的 5 号端口,而不是全部

交换机是可配置的,可以使用 VLAN 将交换机端口绑定到 VLAN。在 Linux 机器上,可以为每个 VLAN 创建逻辑网络设备,例如 eno1.04 和 eno1.05。因此将有设备 eno1、eno1.04 和 eno1.05。

现在的问题是:

  • 当第一个进程发送数据(不做任何更改)时,将发送多少个以太网帧?它会发送三个几乎相同的帧(除报头外)吗?一个通过 eno1(未标记),一个通过 eno1.04(标记),一个通过 eno1.05(标记)?如果是这样,是否有某种方法可以避免这种情况,而无需更改第一个程序,只需更改 Linux 机器的配置即可?
  • 当第二个程序将广播发送到 eno1.04 并且第三个程序向 eno1.05 发送广播时,第二个进程发送的广播是否只会到达端口 4 而第三个进程发送的广播是否只会到达端口 5?
  • 当 Linux 机器上接收到 lan id 4 帧时,它是否只到达接口 eno1.04?还是也到达 eno1?这可以配置吗?

提前感谢您的回答。

相关内容