我已经设置了 Ubuntu Server 18.04。没有活动的网络管理器,因此配置在 /etc/network/interfaces 中完成。
网络中有一个活跃的 dhcp 服务器。
/etc/network/interfaces
内容:
auto enp1s0
iface enp1s0 inet dhcp
auto enp2s0
iface enp2s0 inet static
address 0.0.0.0
up sysctl -w net.ipv6.conf.enp2s0.disable_ipv6=1
auto enp3s0
iface enp3s0 inet static
address 0.0.0.0
up sysctl -w net.ipv6.conf.enp3s0.disable_ipv6=1
ubuntu 服务器应该使用接口 enp1s0 来访问 Lan,并且应该自动获取地址。
接口 enp2s0 和 enp3s0 应该处于联机状态,但 Ubuntu 服务器不应通过它们进行任何网络连接。有一个虚拟机作为 PfSense 服务运行,它使用 enp2s0 作为 Lan 接口,使用 enp3s0 作为 Wan 接口。
我的实际问题:enp1s0 的自动配置仅在启动后立即起作用。如果我从 enp1s0 拔下以太网电缆并重新连接,Ubuntu 服务器不会检测到链接事件并再次联系 dhcp。它只是保留启动后获得的配置。
我如何告诉我的服务器在每次链接后重置并重新配置界面,就像默认在桌面安装一样?
答案1
感谢@chili555,我研究了 netplan 并找到了一个可行的解决方案:
我/etc/netplan
设置了接口,希望我的服务器可以自己使用。
遗憾的是我无法在那里完成所有配置,因为我希望仅启用接口 2 和 3,但不启用任何地址。因此我将这两个接口留在 /etc/network/interfaces 文件中。
=> 现在工作设置如下:
内容/etc/netplan/01-netcfg.yaml
network:
version: 2
renderer: networkd
ethernets:
enp1s0:
dhcp4: yes
内容/etc/network/interfaces
:
auto enp2s0
iface enp2s0 inet static
address 0.0.0.0
up sysctl -w net.ipv6.conf.enp2s0.disable_ipv6=1
auto enp3s0
iface enp3s0 inet static
address 0.0.0.0
up sysctl -w net.ipv6.conf.enp3s0.disable_ipv6=1
现在我的设置按预期工作:enp1s0 完全自动管理,并且每次我进行链接时它都会发出新的 dhcp 请求。
enp2s0 和 enp3s0 都没有 ipv4/6 地址,可以从我的 pfSense 虚拟机中使用