Использование nmcli

Материал из Rosalab Wiki
Перейти к: навигация, поиск

Настройка сети через nmcli

nmcli - Консольный инструмент от NetworkManager'а

Просмотр доступных интерфейсов:

nmcli
nmcli connection show
nmcli device show

Статика

Предположим, нам надо настроить все статически на нашем сетевом интерфейсе.

В NetworkManager'е мы обычно заполняем такие поля:

Nm-1.png

Чтобы все это проделать в консоли, вводим следующее (автодополнение по клавише Tab работает):

nmcli connection modify enp0s3 connection.autoconnect yes ipv4.method manual ipv4.dns 192.168.1.100 ipv4.dns-search mydomen.dom ipv4.addresses 192.168.1.200/24 ipv4.gateway 192.168.1.1

где:

  • connection modify - изменяем наше соединение на интерфейсе enp0s3
  • connection.autoconnect yes - делаем поднятие соединения при загрузке системы
  • ipv4.method manual - делаем наше соединение статическим
  • ipv4.dns - прописываем IP адрес нашего DNS сервера
  • ipv4.dns-search - прописываем домен поиска
  • ipv4.addresses - прописываем IP адрес и маску /24 нашего интерфейса
  • ipv4.gateway - прописываем IP адрес нашего шлюза

Далее надо перезапустить наш интерфейс:

nmcli connection down enp0s3
nmcli connection up enp0s3

Либо перезапускаем так:

nmcli device disconnect enp0s3
nmcli device connect enp0s3

Динамика

Предположим, нам надо настроить все динамически, на нашем сетевом интерфейсе.

В NetworkManager'е мы обычно заполняем такие поля:

Nm-3.png

Чтобы все это проделать в консоли, вводим следующее (автодополнение по клавише Tab работает):

nmcli connection modify enp0s3 ipv4.method auto ipv4.ignore-auto-dns no
  • connection modify - изменяем наше соединение на интерфейсе enp0s3
  • ipv4.ignore-auto-dns - делаем no, т.е. не игнорируем полученные по dhcp серверов DNS
  • ipv4.method auto - делаем наше соединение динамическим

Далее надо перезапустить наш интерфейс:

nmcli connection down enp0s3
nmcli connection up enp0s3

Либо перезапускаем так:

nmcli device disconnect enp0s3
nmcli device connect enp0s3

Динамика, кроме DNS

Предположим, нам надо настроить все динамически, кроме DNS, на нашем сетевом интерфейсе.

В NetworkManager'е мы обычно заполняем такие поля:

Nm-2.png

Чтобы все это проделать в консоли, вводим следующее (автодополнение по клавише Tab работает):

nmcli connection modify enp0s3 ipv4.ignore-auto-dns yes ipv4.dns 192.168.1.100

где:

  • connection modify - изменяем наше соединение на интерфейсе enp0s3
  • ipv4.ignore-auto-dns - делаем yes, т.е. игнорируем полученные по dhcp серверы DNS
  • ipv4.dns - прописываем IP адрес нашего DNS сервера

Далее надо перезапустить наш интерфейс:

nmcli connection down enp0s3
nmcli connection up enp0s3

Либо перезапускаем так:

nmcli device disconnect enp0s3
nmcli device connect enp0s3

Создание VLAN

Как известно, на одном интерфесе можно "повесить" несколько VLAN'ов. Для примера, нам нужно сделать vlan 100.

nmcli connection add type vlan con-name vlan-enp0s3.100 ifname enp0s3.100 dev enp0s3 id 100 ip4 10.10.1.10/24

У нас получится, что мы завели vlan 100 на интерфейс enp0s3 с именем vlan-enp0s3.100

Проверить, с другого сервера/клиента в этом же влане можно командой ping:

ping -I enp0s3.100 10.10.1.10

Просмотр интервейсов:

 nmcli connection
dc2 ~ # nmcli connection 
NAME             UUID                                  TYPE      DEVICE     
enp0s3           8ceb1102-f61f-3fd1-9f6f-caaa08c51327  ethernet  enp0s3     
vlan-enp0s3.100  0633a9a9-4da3-4a40-a7d8-c22f263ba54b  vlan      enp0s3.100

либо:

 ip -br a
dc2 ~ # ip -br a
lo               UNKNOWN        127.0.0.1/8 ::1/128 
enp0s3           UP             192.168.1.100/24 fe80::a00:27ff:fe2e:1f96/64 
enp0s3.100@enp0s3 UP             10.10.1.10/24 fe80::adbf:6483:4d41:aec9/64