Iptables

如何在多個介面上複製多播數據包?

  • March 4, 2015

我想通過多播地址將流從 Linux 伺服器發送到多個 Linux 客戶端。客戶端直接連接到伺服器,但在不同的介面上:bnep0bnep1。此外,據我了解,我的多播數據包被路由到我的預設網關eth0

以後的路由表:

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG    0      0        0 eth0
10.0.0.0        0.0.0.0         255.255.255.0   U     0      0        0 bnep1
10.0.1.0        0.0.0.0         255.255.255.0   U     0      0        0 bnep0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0

我想我需要創建一個專用的路由規則,以便我的多播數據包不會發送到eth0,而是發送到bnep0bnep1。我的問題是:我怎麼能這樣做?我嘗試使用ip routeand iptables -t mangle ... TEE,但沒有成功。

提前致謝。

解決方案不是為了在兩個介面上複製包而實施路由規則,而是將介面合併為一個。

為此,您必須創建和使用網橋。網橋應具有唯一的 IP 地址,而“真實”介面則不會,即使它們已啟動。

# apt-get install bridge-utils
# ifconfig bnep0 up
# ifconfig bnep1 up
# brctl addbr br0
# brctl addif br0 bnep0
# brctl addif br0 bnep1
# ifconfig br0 10.0.0.1 netmask 255.255.255.0

引用自:https://serverfault.com/questions/671278