Назад к статьям

Ubuntu Server 20.04 и 18.04 - Установка статического IP

AdminGuide ·
Ubuntu Server 20.04 и 18.04 - Установка статического IP

Есть в 20й и 18й версии сервера один момент, с непривычки понятный не каждому. Теперь, для того чтобы без лишних телодвижений поменять сетевые настройки необходимо править файлик в каталоге /etc/netplan/. В Ubuntu Server 20.04 - установка статического IP, стандартное действие проделываемое практически с каждым сервером. Вы можете либо выдавать адрес серверу через DHCP, избегая необходимости лезть в настройки сети сервера. Но в случае если DHCP сервер упал, работа может встать до его повторного введения в строй. Поэтому более разумно, если у вашего сервера только один Ethernet порт, настраивать на нем статический IP адрес, не забывая при этом настраивать резервирование на DHCP сервере.

Слышали ли вы ранее о netplan? Далеко не факт. Это средство настройки сетевых интерфейсов, впервые появившееся в убунту начиная с версии 17.10. Эта утилита пришла на замену файлу /etc/network/interfaces, который ранее применялся настройки интерфейсов.

Данные которые мы будем настраивать

IP Адрес: 192.168.1.100
Маска: 24 (она же 255.255.255.0)
Шлюз: 192.168.1.1
DNS: 192.168.1.1

Узнаём имя нашего интерфейса

bash
ifconfig -a
#или
ip addr show

Контент доступен в платной версии

Эта часть материала открывается при платном доступе.

Как видим, имя нашего порта ens160. Его имя так же может варьироваться от ситуации к ситуации.

Изменяем файл настроек netplan

Файл со всеми параметрами находится в директории /etc/netplan

Ubuntu Server 18.04 LTS - ls /etc/netplan

В нашем случае, его название 50-cloud-init.yaml. У вас он может называться по другому. Netplan считывает информацию из всех файлов в папке, попадающих под маску *.yaml. То есть на каждый интерфейс у вас может быть отдельный файл для удобства. Если файла нету, необходимо его сгенерировать командой sudo netplan generate. При наличии файла, открываем его на редактирование с правами рута

bash
sudo nano /etc/netplan/*.yaml

Так выглядят стандартные настройки интерфейса, сразу после установки сервера, когда при установке выбирается dhcp

yaml
network:
    ethernets:
        ens160:
            addresses: []
            dhcp4: true
            optional: true
    version: 2

Нам необходимо привести настройки к следующему виду:

yaml
network:
    ethernets:
        ens160:
            dhcp4: no
            dhcp6: no
            addresses: [192.168.1.100/24, ]
            gateway4: 192.168.1.1
            nameservers:
                    addresses: [192.168.1.1, ]
    version: 2

Ubuntu Server 18.04 - Установка статического IP

Применяем изменения

Теперь осталось только применить изменения

bash
sudo netplan apply

Так же если вы не уверены на 100% в правильности своих настроек, сначала можно использовать sudo netplay try. Эта команда применит настройки и если всё правильно, выдаст запрос на их сохранение. Если на этот запрос не ответить в течении 2х минут, настройки вернутся к изначальному состоянию. Минус этого способа, если вы конфигурируете сервер например по сети через ssh, то смена IP адреса - приведет к разрыву соединения, и ответить на запрос о подтверждении настроек вы уже не сможете. Но вы сможете подключиться к серверу по его новым реквизитам, убедиться что всё работает, и по истечении 2х минут, когда настройки сбросятся на старые, применить их окончательно.

Данные нехитрые манипуляции позволят нам настроить статический IP адрес сервера, который будет сохранен после перезагрузки.

Полезные ссылки: