Настройка сети в Ubuntu Server 18.04 [Netplan]

 

Содержание статьи:

1. Самые распространенные параметры в файле /etc/netplan/*.yaml

2. Настройка сети на Ubuntu Server 18.04

  2.1 Настройка динамического IP-адреса [по DHCP]

  2.2 Настройка статического IP-адреса [Указание настроек вручную]

3. Пример конфигурации для двух интерфейсов

4. Применение изменений в конфигурации сети и проверка

 

Настраивать сеть будем c помощью утилиты Netplan. [Netplan - впервые появилась в Ubuntu 17.10 для облегчения управления сетевыми настройками. Netplan хранит параметры сетевых интерфейсов в формате YAML, конфигурация в формате YAML в свою очередь поддерживается  сетевыми рендерами NetworkManager и systemd-networkd, нам предоставляется возможность выбрать, какой из рендеров использовать в качестве основного сетевого демона системы.]

 

Для того чтобы посмотреть все сетевые интерфейсы введите команду ifconfig -a.

 

ifconfig -a

 

 

Видим интерфейс "ens160" с IP-адресом - 192.168.3.16. Если у вас другое название интерфейса, то в конфигурациях не забудьте поменять его.

 

Прописывать конфигурацию интерфейсов будем в файле /etc/netplan/50-cloud-init.yaml, с помощью редактора nano, я так понимаю файл может называться по разному у разных пользователей [К примеру 01-netcfg.yaml], но сразу же после установки файл с расширением .yaml в этой папке один. Поэтому для того чтобы приступить к редактированию файла лучше воспользоваться универсальной командой.

 

sudo nano /etc/netplan/*.yaml

 

Сразу скажу что для того чтобы сохранить документ в nano надо нажать "Ctrl+o"->"Enter", а чтобы закрыть "Ctrl+x"->"Enter".

 

!!!!ВНИМАНИЕ!!! Отступы слева в конфигурациях должны быть ОБЯЗАТЕЛЬНО и поставлены они должны быть !!!!ПРОБЕЛАМИ!!!! В конфигурациях представленных в этой статье количество пробелов правильное, считайте или копируйте:)

 

Если вы поставите отступы клавишей "TAB", то на этапе проверки конфигурации на ошибки, вылезет ошибка - " Error while loading /etc/netplan/50-cloud-init.yaml, aborting. / Ошибка при загрузке ".

 

Если же вы решите написать всё в столбик без отступов, получите ошибку - " An error occured: the configuration could not be generated / Произошла ошибка: конфигурация не может быть сгенерирована ".

 

1. Самые распространенные параметры в файле /etc/netplan/*.yaml

 

Для начала разберемся какие самые распространенные параметры в этом файле могут быть.

 

-----------------------------------------------------------------------------

network:

 

       renderer: networkd - Выбор сетевого рендера. Выбран networkd

 

       ethernets: - Блок с настройками сетевых интерфейсов.

 

             ens160: - Имя первого сетевого интерфейса.

 

                   addresses: [192.168.3.13/24] - Статический IP-адрес сетевого интерфейса/Маска сети. На данный момент указан IPv4, можно также через запятую указать  IPv6(пишется в кавычках) - [192.168.3.13/24,“2001:1::1/64”]

 

                  gateway4: 192.168.3.1 - Указание основного шлюза для IPv4.

 

                  gateway6: "2001:4::1"- Указание основного шлюза для IPv6.(пишется в кавычках)

 

                 dhcp4: yes/no - или true/false - включить/выключить получение сетевых настроек по DHCP для IPv4.

 

                 dhcp6: yes/no - или true/false - включить/выключить получение сетевых настроек по DHCP для IPv6.

 

                 macaddress: 52.54.00.6d.3c.59 - указание MAC-адреса.

 

                 nameservers:  - Блок с настройками DNS.

 

                       addresses: [8.8.8.8,8.8.4.4] - IP-адреса DNS-серверов, можно несколько через запятую.

 

        ens192: - Имя второго сетевого интерфейса.

 

addresses: [10.1.0.5/24]

 

version: 2

-----------------------------------------------------------------------------------

 

2. Настройка сети на Ubuntu Server 18.04

 

  2.1 Настройка динамического IP-адреса [по DHCP]

 

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

 

Конфигурация для получения IP-адреса по DHCP:

 

------------------------

network:

    ethernets:

        ens160:

            addresses: []

            dhcp4: true

    version: 2

------------------------

 

 

2.2 Настройка статического IP-адреса [Указание настроек вручную]

 

Конфигурация для указания настроек сети вручную.

 

-----------------------------------

network:

  renderer: networkd

  ethernets:

    ens160:

      addresses: [192.168.3.13/24]

      gateway4: 192.168.3.1

      dhcp4: no

      dhcp6: no

      nameservers:

       addresses: [8.8.8.8,8.8.4.4]

  version: 2

----------------------------------

 

 

3. Пример конфигурации для двух интерфейсов

 

Конфигурация для указания настроек сети для двух интерфейсов "ens160" и "ens192".

 

---------------------------------------------------

network:

    renderer: networkd

    ethernets:

        ens160:

            addresses: []

            dhcp4: true

        ens192:

            dhcp4: no

            dhcp6: no

            addresses: [192.168.1.220/24]

            gateway4: 192.168.1.1

            nameservers:

             addresses: [8.8.8.8,8.8.4.4]

    version: 2

--------------------------------------------------

 

 

4. Применение изменений в конфигурации сети и проверка

 

Я для себя выбрал конфигурацию - "Настройка статического IP-адреса [Указание настроек вручную]"

 

Проверим конфигурацию на наличие ошибок и применим изменения.

 

sudo netplan try

 

Если ошибок нет, то вы получите сообщение: "Вы хотите сохранить эти настройки?" Нажмите ENTER.

 

 

Лично у меня настройки применились в 2/3 случаев сразу же после ввода "sudo netplan try" на всякий случай введём команду специально предназначенную для применения изменений сделанных в файле конфигурации:

 

sudo netplan apply

 

Проверим вступили ли изменения в силу:

 

ifconfig

 

 

Всё отлично IP-адрес поменялся, сеть настроена, доступ в интернет есть!

 

!!!!ВНИМАНИЕ!!!! Отступы слева в конфигурациях должны быть ОБЯЗАТЕЛЬНО и поставлены они должны быть !!!!ПРОБЕЛАМИ!!!! В конфигурациях представленных в этой статье количество пробелов правильное, считайте или копируйте:)

 

Если вы поставите отступы клавишей "TAB", то на этапе проверки конфигурации на ошибки, вылезет ошибка - "Error while loading /etc/netplan/50-cloud-init.yaml, aborting./Ошибка при загрузке".

 

Если же вы решите написать всё в столбик без отступов, получите ошибку - "An error occured: the configuration could not be generated/Произошла ошибка: конфигурация не может быть сгенерирована".