通过本地网络从主机访问 LXC

通过本地网络从主机访问 LXC

嘿!我搜索了很多,但似乎这不是常见问题。非常感谢评论!

# Set variables
HOST=192.168.0.254
LXC=192.168.0.105

我正在处理 LXC(NGINX、MySQL),但无法通过本地网络(浏览器)从我的主机访问 NGINX 网站:

ERR_ADDRESS_UNREACHABLE

没有从 $HOST 到其 $LXC 容器的 ping 通:

3 packets transmitted, 0 received, 100% packet loss, time 2040ms

另一方面,可以从 $LXC 访问 $HOST:

3 packets transmitted, 3 received, 0% packet loss, time 2045ms

主持人有lxdbr0桥接设备,LXC 容器通过该设备连接到本地网络。不确定容器是否通过此设备连接到本地网络。一个 LXC 上的网络接口配置示例 -/etc/sysconfig/网络脚本/ifcfg-eth0

DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes
HOSTNAME=LXC_NAME
NM_CONTROLLED=no
TYPE=Ethernet
MTU=
DHCP_HOSTNAME=`hostname`

答案1

使用虚拟化时常见的陷阱:您是否为 LXC 主机使用了类似 VirtualBox 的东西?那么您必须允许主机的网络接口使用混杂模式。否则来自 LXC 容器的租户流量将被拒绝。

请更具体说明 $HOST 和 $LXC。$HOST 是 LXC 主机的 IP 还是带有浏览器的 PC?$LXC 是 LXC 主机的 IP 还是 LXC 容器的 IP?

答案2

我设法通过重新配置 LXD 来解决这个问题,这样我的容器就可以连接到 lxdbr0,而不是直接连接到我的主机的本地网络(路由器)。

相关内容