目前我正試圖通過我的主機的eth2主機接口從我的碼頭的應用程序發送一些多播數據。我確實在docker中使用了--net=host
選項,這是完美的工作,不幸的是,因爲我需要打開多個使用相同端口的實例,所以我不可能再使用net = host。我必須要經過我的泊塢窗的界面bridged
模式的docker0
從碼頭到主機eth的組播
我有eth0
鏈接到我的docker0
爲 10.101.131.60。
因此我做了:route add -net 225.1.1.0/28 dev eth0
將我的應用發送給225.1.1.0/28的所有多播數據包傳遞給我的eth0,eth0連接到主機作爲docker0
。
因此,我用wireshark來監聽我的應用程序是否真的把消息包扔進我的容器內的eth0
,並且當我在容器內使用wireshark時它確實發送多播。
現在我還用wireshark聽我的docker0
和數據包在那裏。現在,我如何將docker0中的所有多播數據包轉發給我的eth2?我使用了幾種iptables方法,但它們都沒有用,也許它被忽略了?
任何幫助將不勝感激......謝謝!