更新

更新

我们拥有一台拥有生产和管理网络的主机。

使用默认设置,容器使用 lxcbr0。但是,我们找不到此接口的定义位置,也找不到它正在使用我们的哪个网络(管理或生产)。我们还想更改它以配置 DNS 服务器等。

我们知道,理论上,您可以在 /etc/network/interfaces 中设置自己的网桥,但这对我们来说不是一个选择,因为出于某些未知的原因,当我们在任何绑定接口上定义一个简单的网桥时,网络将无法启动(并且没有解决方案)。

所以我们唯一的选择是弄清楚如何操纵 lxcbr0 来完成我们想要做的事情。

需要明确的是,主机有 2 个物理接口绑定用于两个交换机之间的故障转移,每个接口都有 2 个 VLAN 用于生产网络和管理网络。我们需要知道:

  1. 如何找出 lxcbr0 实际桥接的众多接口中的哪一个
  2. 如何将其更改为使用不同的。

在此先感谢您的帮助。

更新

我找不到接口定义的原因是它没有被定义为网桥,它似乎是使用 iptables 转发规则实现的。默认规则设置不关心传入网络或源。iptables 在 /etc/init/lxc-net.conf 中设置。所以我想改变这种情况的方法是编辑这个文件(因为在 /etc/network/interfaces 中桥接一对绑定接口不起作用)。

制定的规则如下:

-A INPUT -i lxcbr0 -p tcp -m tcp --dport 53 -j ACCEPT
-A INPUT -i lxcbr0 -p udp -m udp --dport 53 -j ACCEPT
-A INPUT -i lxcbr0 -p tcp -m tcp --dport 67 -j ACCEPT
-A INPUT -i lxcbr0 -p udp -m udp --dport 67 -j ACCEPT
-A FORWARD -o lxcbr0 -j ACCEPT
-A FORWARD -i lxcbr0 -j ACCEPT

在我们的例子中,前 4 条规则没有任何作用,因为默认情况下所有数据包都被接受。显然,53 和 67 是域和 bootps(用于 DNS)

有人能解释一下这两条前向规则到底起什么作用吗?

Ubuntu 14

答案1

查看...

/etc/lxc/默认.conf

此外,flockport 上还有很多您可能会觉得有用的信息。

https://www.flockport.com/guides/

相关内容