Сервер 18.04 запрашивает один раз на загрузочном IP-адресе, но никогда больше после этого, если отключен

Сервер 18.04 запрашивает один раз на загрузочном IP-адресе, но никогда больше после этого, если отключен

Я настроил 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

Интерфейс enp1s0 должен использоваться сервером Ubuntu для доступа к локальной сети и должен автоматически получать адрес.

Интерфейсы enp2s0 и enp3s0 должны быть в сети, но сервер Ubuntu не должен иметь возможности выполнять какие-либо сетевые соединения через них. Есть виртуальная машина, работающая как служба с PfSense, которая использует enp2s0 как интерфейс Lan и enp3s0 как интерфейс Wan.

Моя реальная проблема: автоматическая конфигурация для enp1s0 работает только сразу после загрузки. Если я отсоединяю кабель Ethernet от 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

Связанный контент