我有一个在 CentOS 7 上运行的软件应用程序,用于创建 IP TUN 网络接口。我想用静态 IP 配置它,这样每当 TUN 接口出现时它就会被配置。我做了以下 ifcfg 配置:
[vagrant@nclc-centos7-vm ~]$ cat /etc/sysconfig/network-scripts/ifcfg-rf0
BOOTPROTO=static
NM_CONTROLLED=yes
DEVICE=rf0
NAME=rf0
TYPE=tun
IPADDR=192.168.88.0
NETMASK=255.255.255.0
IPV6INIT=no
USERCTL=yes
ONBOOT=yes
HOTPLUG=yes
有了这个配置,当我运行时一切正常
sudo systemctl restart network
但如果我重新启动软件应用程序,TUN 接口就会丢失配置。如果我做
nmcli monitor
第一次重新启动网络时,会打印以下内容:
rf0: connection profile created
rf0: connected
rf0: using connection 'rf0'
rf0: connection profile changed
如果我重新启动我的应用程序,它会打印以下内容:
rf0: device removed
rf0: connection profile changed
rf0: connection profile changed
rf0: connection profile removed
rf0: device created
rf0: unavailable
rf0: disconnected
我一生都无法弄清楚如何在接口首次出现(ala 热插拔)时使用 NetworkManager/ifcfg 对其进行配置,而无需重新启动网络服务。