2017-09-01 134 views
0

我的應用程序在docker容器內部創建了一個tap界面。 例如tap_1:ip:192.168.2.1將Docker界面從Docker容器暴露給Docker主機

我的要求是任何進入docker主機的數據包都可以直接發送到Docker容器內的tap接口。我基本上試圖避免首先發送到docker0的一跳,然後將其轉發到特定的tap接口。

我試過通過管道和橋樑網絡,但似乎他們都不能解決我的需求。

感謝您的幫助。 謝謝 Ankit

+0

我不是網絡專家,所以不是很確定。但你應該在容器內嘗試iptables來將傳入的流量路由到'192.168.2.1' –

回答

0

您需要爲正在啓動的容器設置功能。默認情況下,Docker容器不能完成他們想要的任何事情,除非您爲其分配功能。

使用功能,您幾乎可以將網絡設備映射到容器,然後執行任何您想要的操作。不知道這是否是最佳的方式,但它會讓你開始。

此外,容器網絡的工作原理略有不同,具體取決於您使用的是哪一層。

例子:

docker run --cap-add=NET_ADMIN --device /dev/net/tun:/dev/net/tun -i -t alpine /bin/ash 
相關問題