Настройка Network Manager в консоли

NetworkManager - популярный инструмент управления сетевыми подключениями в Linux, имеет удобный графический интерфейс как для Gnome, так и для KDE, но бывают ситуации когда окружение рабочего стола не запускается, и нужно поднимать сеть из консоли, или нужно настроить сеть на сервере где не установлено рабочее окружение.


В этой инструкции будет рассмотрена настройка network Manager в консоли с помощью утилиты nmcli linux. Также поговорим о том, как посмотреть информацию о сетевых интерфейсах в системе.


Собираем информацию о системе


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



 ip addr show

Примерный вывод:



1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

inet 127.0.0.1/8 brd 127.255.255.255 scope host lo

valid_lft forever preferred_lft forever

inet6 ::1/128 scope host

valid_lft forever preferred_lft forever

2: enp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000

link/ether bc:ae:c5:be:8b:b7 brd ff:ff:ff:ff:ff:ff

inet 192.168.1.2/24 brd 192.168.1.255 scope global dynamic enp2s0

valid_lft 75866sec preferred_lft 75866sec

inet6 fe80::beae:c5ff:febe:8bb7/64 scope link

valid_lft forever preferred_lft forever

3: sit0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default

link/sit 0.0.0.0 brd 0.0.0.0

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



 ip -s link show eno16777736


2: enp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000

link/ether bc:ae:c5:be:8b:b7 brd ff:ff:ff:ff:ff:ff

RX: bytes packets errors dropped overrun mcast

332140667 293632 0 0 0 0

TX: bytes packets errors dropped carrier collsns

35490533 281001 0 0 0 0

А чтобы посмотреть таблицу маршрутизации:



 ip route


default via 192.168.1.1 dev enp2s0 proto static metric 100

127.0.0.0/8 dev lo scope host

192.168.1.0/24 dev enp2s0 proto kernel scope link src 192.168.1.2

192.168.1.0/24 dev enp2s0 proto kernel scope link src 192.168.1.2 metric 202

Анализируем путь к определенному сайту:



 tracepath bloglinux.ru

Утилита Nmcli


Утилита Nmcli - многофункциональный и гибкий инструмент командной строки для настройки сети с помощью networkamanger из консоли. Сначала рассмотрим ее синтаксис:


$ nncli опции объект команда


Чаще всего в nmcli мы будем использовать такие объекты:


  • device - управление сетевыми интерфейсами;

  • connection - управление соединениями;

  • networking - управление сетью в целом;

  • general - показывает состояние всех сетевых протоколов и NetworkManager в целом;

  • radio - управление сетевыми протоколами, wifi, ethernent и т д.

Команды для каждого объекта разные, а опции нам не будут интересны. Дальше рассмотрим примеры nmcli network manager.


Запустить NetworkManager


Первым делом нужно запустить NetworkManager из консоли:



 sudo service NetworkManager start

Теперь смотрим состояние интерфейсов с помощью nmcli:



 $ nmcli general status


СОСТОЯНИЕ СВЯЗЬ WIFI-HW WIFI WWAN-HW WWAN

подключено полностью включен включен включен включен

Еще мы можем посмотреть имя хоста:



 nmcli general hostname

Включить/выключить wifi


В графическом интерфейсе это делается одной галочкой, здесь одной командой. Сначала смотрим состояние wifi:



 nmcli radio wifi

Теперь включаем:



 nmcli radio wifi on

Или отключаем:



 nmcli radio wifi off

Смотрим доступные соединения


Теперь самое интересное, управление сетью nmcli:



 nmcli connection show


ИМЯ UUID ТИП УСТРОЙСТВО

ham0 6272eb20-2c54-4fc7-afba-31e0f0db295b generic ham0

Проводное соединение 1 e4ba8abf-3608-4482-955d-aa9000f565ee 802-3-ethernet enp2s0

Смотрим информацию о подключении



 nmcli connection show "Проводное соединение 1"


connection.id: Проводное соединение 1

connection.uuid: e4ba8abf-3608-4482-955d-aa9000f565ee

connection.interface-name: --

connection.type: 802-3-ethernet

connection.autoconnect: yes

connection.autoconnect-priority: 0

connection.timestamp: 1441537783

connection.read-only: no

connection.permissions:

connection.zone: --

connection.master: --

connection.slave-type: --

connection.secondaries:

connection.gateway-ping-timeout: 0

802-3-ethernet.port: --

802-3-ethernet.speed: 0

802-3-ethernet.duplex: --

802-3-ethernet.auto-negotiate: yes

802-3-ethernet.mac-address: BC:AE:C5:BE:8B:B7

802-3-ethernet.cloned-mac-address: --

802-3-ethernet.mac-address-blacklist:

802-3-ethernet.mtu: автоматически

802-3-ethernet.s390-subchannels:

802-3-ethernet.s390-nettype: --

802-3-ethernet.s390-options:

ipv4.method: auto

Получаем состояние интерфейсов:



 nmcli device status


УСТРОЙСТВО ТИП СОСТОЯНИЕ СОЕДИНЕНИЕ

enp2s0 ethernet подключено Проводное соединение 1

lo loopback без управления --

sit0 sit без управления --

Создание DHCP соединения



 nmcli connection add con-name "dhcp" type ethernet ifname enp2s0


Connection 'dhcp' (163a6822-cd50-4d23-bb42-8b774aeab9cb) successfully added.

Здесь:


  • connection add - добавить новое соединение

  • con-name - название подключения

  • type - тип устройства, в нашем случае ethernet

  • ifname - название сетевого интерфейса


Создание соединения с статическим адресом



 nmcli connection add con-name "static" ifname enp2s0 autoconnect no type ethernet ip4 192.168.1.240 gw4 192.168.1.1


Connection 'static' (8e69d847-03d7-47c7-8623-bb112f5cc842) successfully added.

Добавляем настройки DNS



 nmcli connection modify "static" ipv4.dns 202.131.124.4

Добавляем еще один сервер DNS



 nmcli connection modify "static" +ipv4.dns 8.8.8.8

Для добавления дополнительной информации в поле используйте символ +. Например, вот так можно добавить еще один ip адрес:



 nmcli connection modify "static" +ipv4.addresses 192.168.200.1/24

Осталось обновить настройки:



 nmcli connection up static

Список сетей wifi


Такой командой можно посмотреть список доступных сетей wifi:



 nmcli device wifi list

Подключится к wifi


Команда для подключения к новой сети wifi выглядит не намного сложнее:



 nmcli device wifi connect "BSSID" password 12345 name "MyWifi"

Здесь BSSID - это имя точки доступа, а 12345 - ее пароль.


Выводы


Как видите, все очень просто и быстро. Настройка network manager в консоли выполняется в пару команд, достаточно только их запомнить или где-нибудь написать, чтобы вы могли выполнить управление сетью nmcli когда это понадобится.


Добавить комментарий

Автору будет очень приятно получить обратную связь.

Комментариев 0