Как настроить статический IP-адрес в Ubuntu 20
В статье показано, как настроить статический 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
network: {config: disabled}
Часто данные настройки требуется настроить на арендованных vps vds серверах в ЦОД.
Для назначения статического IP-адреса на сетевом интерфейсе, отредактируйте файл конфигурации YAML:
sudo nano /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 адрес, отредактируйте файл следующим образом:
- Установите DHCP на dhcp4: «no».
- Укажите статический IP адрес. В разделе addresses: вы можете добавить один или несколько IP-адресов IPv4 или IPv6, которые будут назначены сетевому интерфейсу.
- Шлюз.
- В nameservers установите IP адреса ДНС серверов.
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