让 systemd 在启动时创建 TUN/TAP 设备吗?

让 systemd 在启动时创建 TUN/TAP 设备吗?

如何systemd在 Ubuntu 服务器上使用工具集在启动时创建 TUN/TAP 设备?

我的需求是:

服务器启动 -> 照常设置网络 -> 创建 TUN/TAP 设备 -> 开始dnsmasq管理新创建的 TUN/TAP NIC 的 DHCP -> 启动一些 VPN 服务器。

systemd-networkdUbuntu Server 17.10 上似乎默认禁用该服务。如果我启用它,会出现问题(与其他网络管理冲突)吗?

答案1

在 18.04 上,networkd 似乎已启用,并且似乎与 NetworkManager 共存。

以下是如何让 systemd 创建 tap 设备。创建一个 netdev 文件并重新启动 systemd-networkd。

# /etc/systemd/network/90-tap0.netdev
[NetDev]
Name=tap0
Kind=tap

[Tap]
Group=vhost-net

有关文件格式和 Tap/Tun 部分的更多信息,请参阅 systemd.netdev(5)。vhost-net 是我用来限制对该设备的访问的一个组。您可能不需要它。

编辑 netdev 文件后,重新启动 networkd 以应用更改。您还可以检查 tap0 设备,看看它是否按您想要的方式设置:

# systemctl restart systemd-networkd
# ip link show dev tap0
# ip tuntap list

相关内容