为 (LXD) Linux 容器分配 ipv4 地址

为 (LXD) Linux 容器分配 ipv4 地址

我有一个运行着一堆 Linux 容器的家庭服务器,它们都通过我的路由器上的 dhcp 自动分配 IP 地址。

我希望能够手动为每个容器分配 IP 地址,但我似乎在找到如何准确执行此操作的工作示例时遇到了一些麻烦。

我设置了容器,以便它们获取以 192.168.1.xxx 开头的地址,并且可以由我网络上的其他设备(而不是专用设备)访问?默认 LXD 设置给出的地址(10.whatever)。

我的一些容器的示例(deluge 也连接到 VPN):

+------------+---------+--------------------------------+------+------------+-----------+
|    NAME    |  STATE  |              IPV4              | IPV6 |    TYPE    | SNAPSHOTS |
+------------+---------+--------------------------------+------+------------+-----------+
| deluge     | RUNNING | 192.168.1.17 (eth0)            |      | PERSISTENT | 0         |
|            |         | 10.3.83.122 (tun0)             |      |            |           |
+------------+---------+--------------------------------+------+------------+-----------+
| emby       | RUNNING | 192.168.1.19 (eth0)            |      | PERSISTENT | 0         |
+------------+---------+--------------------------------+------+------------+-----------+
| grocery    | RUNNING | 192.168.1.52 (eth0)            |      | PERSISTENT | 0         |
+------------+---------+--------------------------------+------+------------+-----------+ 

我尝试过的一个示例教程似乎不起作用这篇博文发表在媒体上。我喜欢他的方法的简单性,但不幸的是,它似乎对我的容器有 0 效果。不过他的/etc/default/lxd-bridge文件与我的略有不同。他有LXD_BRIDGE="",而我的则设置为LXD_BRIDGE="br0"

我的内容主持人 /etc/network/interfaces

# this is empty
source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto br0
iface br0 inet dhcp
        bridge_ports enp7s0

iface enp7s0 inet manual

我的默认 lxc 配置文件的内容当前分配给所有容器:

config:
  environment.http_proxy: ""
  user.network_mode: ""
description: Default LXD profile
devices:
  eth0:
    name: eth0
    nictype: bridged
    parent: br0
    type: nic
name: default
used_by: []

我的所有容器都运行最新版本的 ubuntu。

LXD版本2.0.11

相关内容