lxd与自己的br0networking是无法到达centos的竞争者

当我运行lxd init时,我select了这个设置。

Would you like to create a new network bridge (yes/no)? no 

因为我在/ etc / network / interfaces中创build了自己的br0

 source /etc/network/interfaces.d/* auto lo iface lo inet loopback auto br0 iface br0 inet static address xx50.2 netmask 255.255.252.0 broadcast xxx255 network xxx0 gateway xx53.254 dns-nameservers 8.8.8.8 bridge_ports eth0 bridge_stp off bridge_fd 0 bridge_maxwait 0 iface eth0 inet manual 

然后,我启动lxd centos并运行

  lxc config device add first eth0 nic nictype=bridged parent=br0 lxc config device set first eth0 ipv4.address xx51.2 lxc config device set first eth0 security.mac_filtering true 

并在中更改configuration

  /var/lib/lxd/containers/second/rootfs/etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 BOOTPROTO=none ONBOOT=yes HOSTNAME=LXC_NAME NM_CONTROLLED=no TYPE=Ethernet IPADDR=xx51.2 NETMASK=255.255.255.255 GATEWAY=xx53.254 DNS1=8.8.8.8 DNS2=xxxx MTU= DHCP_HOSTNAME=xx50.2 

当我尝试ping 8.8.8.8我得到连接:networking无法访问

在/etc/resolv.conf

  nameserver 8.8.8.8 search lxd nameserver xxxx 

我做错了什么我不明白,也许我错过了一些概念?

你是否在为你的容器使用专用网卡? 您不需要在您的网桥上设置静态IP地址:

 auto br0 iface br0 inet manual bridge_ports eth0 bridge_stp off bridge_fd 0 bridge_maxwait 0 iface eth0 inet manual 

如果你在考虑你的IP地址,我倾向于不把它设置在lxcconfiguration级别

 lxc config device unset first eth0 ipv4.address 

如果您将pipe理接口与LXD容器共享给LXD主机,则可以重置网桥上的IP地址,但我build议使用单独的设备进行两个连接。

如果没有一个工作,你需要findnetworking在哪里坏了。 我在容器外面逐步采取措施,然后在容器内部进行,这涉及到在各个级别检查networking访问:

  1. 在主机上:
    • 暂时从你的configuration中删除桥(只是注释掉),并在eth0上设置静态IP地址。
      • 你能ping通eth0 ping 192.168.0.10吗? 如果是,那么eth0已经启动并正在工作。 如果不是,那么你的网卡有问题。
      • 你能ping通网关ping 192.168.0.1吗? 如果是,则2层连接正在工作。 如果不是,那么你有第2层问题。 检查你的连接,开关等(任何基于MAC的过滤)。
      • 你可以ping外网关ping 8.8.8.8 ? 如果是,那么层3连接正在工作。 如果不是,那么你很可能有一个第3层的问题。 检查路由表ip route show ,router等
    • 如果所有这些都在工作,你就知道eth0是完美的。 现在,您再次创build您的网桥,将eth0设置回手动,并将该IP地址提供给您的网桥。 重复上述3个子步骤。 如果他们全部成功,那么你知道问题不在主机上,它在容器上。
    • 从您的网桥中删除IP地址,并将其设置回手动。 继续下一步。
  2. 在容器中:
    • 你能ping通eth0 ping 192.168.0.10吗? 如果是,那么NIC正在工作,继续。 如果不是,那么网卡本身存在问题,您将无法获得任何networking连接。 检查LXD日志,内核日志,运行以太网testing等。如果是这种情况,那么问题很可能是一个configuration问题,因为你已经testing了主机上的实际eth0设备,发现它正在努力得到这么远。
    • 你能ping通网关ping 192.168.0.1吗? 如果是,那么第2层正在工作,继续。 如果不是,那么你有第2层问题。
    • 你可以ping外网关(我们已经知道你不能) ping 8.8.8.8 ? 有一个第3层的问题。 检查路由ip route show