Как настроить статический IP-адрес в Ubuntu 20

Автор Itworkroom

В статье показано, как настроить статический IP-адрес в ОС Ubuntu 20.

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

Настройка статического IP-адреса с помощью DHCP сервера

Самый простой назначить статические IP адреса устройствам в вашей сети, путем настройки DHCP на маршрутизаторе или севере. DHCP — это клиент-серверный протокол динамической конфигурации хоста (Dynamic Host Configuration Protocol). Под резервированием адреса на DHCP-сервере (DHCP reservation) понимается настрой­ка DHCP-сервера таким образом, чтобы он сопоставлял МАС-адрес с определенным IP-адресом в пуле адресов областей DHCP (DHCP Scope Address Pool).

Для настройки DHCP на маршрутизаторе или севере, обратитесь к документации вендора для получения дополнительной информации.

Утилита Netplan

Netplan — это утилита для конфигурации сети.  Начиная с Ubuntu 17.10 использует Netplan в качестве инструмента управления сетью по умолчанию.  Предыдущие версии Ubuntu использовали ifconfig и его файл конфигурации /etc/network/interfaces для настройки сети.

Файлы конфигурации Netplan хранятся в YAML с расширением файла .yaml.  YAML — это язык сериализации данных.  Чтобы настроить сетевой интерфейс с помощью Netplan, вам необходимо создать описание YAML для интерфейса, и Netplan сгенерирует необходимые файлы конфигурации для выбранного инструмента рендеринга.

Netplan поддерживает два средства визуализации, NetworkManager и Systemd networkd. NetworkManager в основном используется на настольных компьютерах, а Systemd networkd используется в командном режиме (без графической оболочки).

Настройка статического IP адреса в Ubuntu

В ОС Ubuntu 20 система идентифицирует сетевые интерфейсы. Сначала для настройки статического IP адреса является определение имени интерфейса Ethernet, который вы хотите настроить. Для этого используйте команду ip link, как показано ниже:

ip link

Команда выводит список всех доступных сетевых интерфейсов. В этом примере имя интерфейса ens1:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ens1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 07:01:31:6c:23:71 brd ff:ff:ff:ff:ff:ff

Файлы конфигурации Netplan хранятся в каталоге /etc/netplan. Имя конфигурационного файла может отличаться. Обычно файлы озаглавливаются: 01-netcfg.yaml, 00-cloud-init.yaml или NN_interfaceName.yaml.

Если ваш облачный экземпляр Ubuntu снабжен cloud-init, вам необходимо отключить его. Для этого создайте следующий файл:

sudo nano /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
/etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
network: {config: disabled}

Часто данные настройки требуется настроить на арендованных vps vds серверах в ЦОД.

Для назначения статического IP-адреса на сетевом интерфейсе, отредактируйте файл конфигурации YAML:

sudo nano /etc/netplan/01-netcfg.yaml
/etc/netplan/01-netcfg.yaml
network:
  version: 2
  renderer: networkd
  ethernets:
    ens1:
      dhcp4: yes

Объяснение листинга конфигурационного файла:

Файл конфигурации утилиты Netplan Yaml начинается с ключа network, который содержит в себе 2 обязательных элемента. Первый элемент — версия формата конфигурации сети. Второй это тип устройства. Второй может быть как ethernets, bonds, bridges или vlans.

В приведенной конфигурации есть строка, показывающая тип renderer (визуализатор). По умолчанию, если при установке ОС Ubuntu в режиме сервера, renderer (визуализации) настроено для использования networkd в качестве серверной части.

Под типом устройства (ethernets) можно указать 1 или несколько сетевых интерфейсов. Здесь указан один интерфейс с именем ens1, настроенный для получения IP адресации от DHCP сервера «dhcp4: yes».

Чтобы присвоить интерфейсу ens1 статический IP адрес, отредактируйте файл следующим образом:

  1. Установите DHCP на dhcp4: «no».
  2. Укажите статический IP адрес. В разделе addresses: вы можете добавить один или несколько IP-адресов IPv4 или IPv6, которые будут назначены сетевому интерфейсу.
  3. Шлюз.
  4. В nameservers установите IP адреса ДНС серверов.
/etc/netplan/01-netcfg.yaml
network:
  version: 2
  renderer: networkd
  ethernets:
    ens3:
      dhcp4: no
      addresses:
        - 192.168.1.200/24
      gateway4: 192.168.1.1
      nameservers:
          addresses: [192.168.1.1]

При редактировании файлов YAML придерживайтесь стандартам отступа кода YAML. YAML — это язык для хранения информации в формате понятном человеку.  Если синтаксис неправильный, изменения не будут применены.

Далее сохраните файл и выполните команду:

sudo netplan apply

Проверьте внесенные изменения, набрав:

ip addr show dev ens1
2: ens1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 08:00:27:6c:13:63 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.200/24 brd 192.168.1.255 scope global dynamic ens3
       valid_lft 3575sec preferred_lft 3575sec
    inet6 fe80::5156:ff:feb0:f600/64 scope link 
       valid_lft forever preferred_lft forever

Настройка статического IP адреса на ОС Ubuntu с графической оболочкой

На экране «Действия» найдите «настройки» и щелкните значок. Откроется окно настроек GNOME. В зависимости от интерфейса, который вы хотите изменить, щелкните вкладку «Сеть» или «Wi-Fi». Чтобы открыть настройки интерфейса, щелкните значок шестеренки рядом с названием интерфейса.

На вкладке «Метод IPV4» выберите «Вручную» и введите необходимый статический IP адрес, маску сети и шлюз. Далее нажмите кнопку «Применить».

Чтобы проверить изменения, откройте терминал с помощью сочетания клавиш Ctrl+Alt+T или щелкнув значок терминала и запустите:

ip addr

На выходе будет показан IP-адрес интерфейса:

___
2: wlp0s1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 50:5b:c3:d7:34:2d brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.200/24 brd 192.168.1.255 scope global dynamic noprefixroute wlp1s0
       valid_lft 38963sec preferred_lft 38963sec
    inet6 fe80::45e3:7bc:a029:664/64 scope link noprefixroute

Comments are closed.