我正在尝试在 Ubuntu 18.04 服务器上创建一个虚拟网络接口。以下是我在之前的 Ubuntu 16.04 服务器上的操作方法:
在 中/etc/network/interfaces.d/dummy.cfg
写入:
auto dummy0 iface dummy0 inet static address 192.168.98.1 netmask 255.255.255.0
然后source /etc/network/interfaces.d/dummy.cfg
添加/etc/network/interfaces/
据我所知,Ubuntu 18.04 不再使用/etc/network/interfaces
,我们应该改用netplan
。显然netplan
不支持创建虚拟接口(!)https://bugs.launchpad.net/ubuntu/+source/nplan/+bug/1743200。
我可以使用 iproute2 工具包创建虚拟接口:
$ ip link add dummy0 type dummy $ ip addr add 192.168.98.1/24 dev dummy0 $ ip link set dummy0 up
但正如我们所料,这个接口在重启后就会消失。
如何创建这种重启后仍能保留的虚拟网络接口?
答案1
我在 18.04 服务器上遇到了同样的问题,直接使用 systemd-networkd 方式配置接口:
我创建了 2 个文件/etc/systemd/network/
:
10-dummy0.netdev
[NetDev] Name=dummy0 Kind=dummy
20-dummy0.network
[Match] Name=dummy0 [Network] Address=192.168.... Address=fe80::.....
启动时,会自动创建虚拟接口,其 IPv4 和 IPv6 地址如 所示ip addr
。还应systemctl restart systemd-networkd
创建接口。
我在 netplan 上提交了一个错误,请支持: https://bugs.launchpad.net/netplan/+bug/1774203
文档:
https://www.freedesktop.org/software/systemd/man/systemd.netdev.html# https://www.freedesktop.org/software/systemd/man/systemd.link.html# https://www.freedesktop.org/software/systemd/man/systemd.network.html#