为 DDS/ROS2 桥接以太网和 Wifi

为 DDS/ROS2 桥接以太网和 Wifi

我有一个如下图所示的设置。路由器是标准的商用家用路由器和无线 AP,计算机 B 是运行 Ubuntu 的 Raspberry Pi,它有一个以太网接口和一个 Wifi 接口。B 通过 Wifi 从路由器的 DHCP 服务器(在 /24 子网上)获取一个 IP,并在以太网接口上从其自己的 DHCP 服务器(也是 /24 子网)提供 IP。

10.0.1.2       10.0.1.1
               10.0.0.2            10.0.0.1            10.0.0.3
 -----           -----            ----------            -----
 | A | ---ETH--- | B | ---WIFI--- | ROUTER | ---WIFI--- | C |
 -----           -----            ----------            -----

此设置用于运行 ROS2/DDS(A 和 B 位于机器人内部,C 是控制计算机),但据我所知,我无法从 A 向 C 发送消息,因为它们位于不同的子网(DDS 使用 UDP 多播)。

  1. 是否可以使用 B 桥接 Wifi 子网和以太网子网?如果不行,
  2. 如何在 B 上设置路由表,以便在两个网络之间正确转发 UDP 多播消息?

相关内容