- Ubuntu Network Manager: Enabling and disabling NetworkManager on Ubuntu
- Disable Network Manager and enable systemd-networkd
- Enable NetworkManager and Disable systemd networkd
- Настройка Network Manager в консоли
- Собираем информацию о системе
- Синтаксис и опции nmcli
- Настройка сети с помощью nmcli
- 1. Запустить NetworkManager
- 2. Список подключений
- 3. Управление подключениями
- 4. Создание DHCP соединения
- 5. Создание соединения с статическим адресом
- 6. Настройка подключения
- 7. Настройка Wifi
- Выводы
Ubuntu Network Manager: Enabling and disabling NetworkManager on Ubuntu
NetworkManager is a backend service that controls the network interfaces on your Ubuntu operating system. An alternative to NetworkManager is systemd-networkd. On Ubuntu desktop, network manager is the default service that manages network interfaces through the graphical user interface. Therefore, If you want to configure IP addresses via GUI, then the network-manager should be enabled.
An Alternative to Ubuntu network manager is systemd-networkd, which is the default backend service in Ubuntu server 18.04.
So if you want to disable the NetworkManager, then the networkd service should be enabled, while it is better to disable networkd service when network manager is running.
Disable Network Manager and enable systemd-networkd
First, run the following set of commands to disable the NetworkManager:
sudo systemctl stop NetworkManager sudo systemctl disable NetworkManager sudo systemctl mask NetworkManager
Next, start and enable the systemd-networkd service:
sudo systemctl unmask systemd-networkd.service sudo systemctl enable systemd-networkd.service sudo systemctl start systemd-networkd.service
Add the interface configuration to the netplan config file (in the /etc/netplan directory):
network: version: 2 renderer: networkd ethernets: enp0s3: dhcp4: yes
Apply the changes by running the following command:
In the preceding example, we configured the enp0s3 interface to lease IP addresses from the DHCP Server. If you want to set static IP addresses, Click on the following link to learn how to configure static IP address with netplan.
Enable NetworkManager and Disable systemd networkd
Starting and enabling Ubuntu Network Manager can be done with the following steps (Which is not recommended in Ubuntu server).
First, stop the systemd-networkd service:
sudo systemctl disable systemd-networkd.service sudo systemctl mask systemd-networkd.service sudo systemctl stop systemd-networkd.service
Install NetworkManager on Ubuntu:
sudo apt-get install network-manager
Open the .yaml config file inside the /etc/netplan directory and replace the existing configuration with following:
network: version: 2 renderer: NetworkManager
Generate backend specific configuration files for NetworkManager with netplan command:
Start the NetworkManager Service:
sudo systemctl unmask NetworkManager sudo systemctl enable NetworkManager sudo systemctl start NetworkManager
Now the NetworkManager is enabled, interface configurations can be done via the GUI or from the command line, using the nmcli command.
While it is possible to manage networking on Ubuntu server via network manager, it has largely been replaced with Netplan. Therefore, it is recommended to use systemd-networkd on Ubuntu Server 18.04 and later.
Настройка Network Manager в консоли
NetworkManager — популярный инструмент управления сетевыми подключениями в Linux, имеет удобный графический интерфейс как для Gnome, так и для KDE, но бывают ситуации когда окружение рабочего стола не запускается, и нужно поднимать сеть из консоли, или нужно настроить сеть на сервере где не установлено рабочее окружение.
В этой инструкции будет рассмотрена настройка Network Manager в консоли с помощью утилиты nmcli. С настройкой в графическом интерфейсе вы разберетесь без каких-либо инструкций, поэтому была выбрана именно эта тема. Также поговорим о том, как посмотреть информацию о сетевых интерфейсах в системе.
Собираем информацию о системе
Чтобы получить информацию обо всех установленных в системе сетевых интерфейсах используйте команду:
Для просмотра статистики переданных и полученных пакетов для интерфейса, например, enp24s0, наберите:
А чтобы посмотреть таблицу маршрутизации:
Синтаксис и опции nmcli
Утилита nmcli — многофункциональный и гибкий инструмент командной строки для настройки сети с помощью Network Mananger из консоли. Сначала рассмотрим ее синтаксис:
$ nncli опции объект команда
Чаще всего в nmcli мы будем использовать такие объекты:
- device — управление сетевыми интерфейсами;
- connection — управление соединениями;
- networking — управление сетью в целом;
- general — показывает состояние всех сетевых протоколов и NetworkManager в целом;
- radio — управление сетевыми протоколами, wifi, ethernent и т д.
Команды для каждого объекта разные, а опции нам не будут интересны. Дальше рассмотрим примеры nmcli network manager.
Настройка сети с помощью nmcli
1. Запустить NetworkManager
Первым делом нужно запустить NetworkManager из консоли:
sudo systemctl start NetworkManager
Теперь смотрим состояние интерфейсов с помощью nmcli:
Еще мы можем посмотреть имя хоста:
Получаем состояние интерфейсов
2. Список подключений
Теперь самое интересное, управление сетью nmcli. Смотрим список доступных подключений:
Здесь вы можете видеть одно проводное подключение для интерфейса enp24s0. С помощью следующей команды можно посмотреть информацию о нём:
nmcli connection show «Проводное соединение 2»
3. Управление подключениями
Чтобы подключится к сети с помощью нужного подключения используйте команду up:
nmcli connection up «Проводное соединение 2»
Команды можно сокращать, например:
nmcli conn up «Проводное соединение 2»
А для деактивации подключения используйте команду down:
nmcli conn down «Проводное соединение 2»
4. Создание DHCP соединения
Чтобы создать новое подключение используйте команду add. Например создадим новое подключение с именем dhcp:
nmcli connection add con-name «dhcp» type ethernet ifname enp24s0
Команде надо передать параметр type — тип устройства, в нашем случае ethernet (Проводное соединение), а также ifname — название сетевого интерфейса, в этом примере enp24s0. По умолчанию используется тип подключения DHCP, поэтому больше ничего настраивать не надо и вы можете уже активировать это подключение как описано выше.
5. Создание соединения с статическим адресом
Для статического подключения настроек больше, вам надо передать команде add ip адрес, который будет использоваться в качестве основного в параметре ip4, а также шлюз с помощью параметра gw4:
nmcli connection add con-name «static» ifname enp2s0 autoconnect no type ethernet ip4 192.168.0.210 gw4 192.168.0.1
6. Настройка подключения
Продолжим настройку нашего статического соединения. Обычно оно уже может работать, но вы можете захотеть добавить DNS сервер. Для этого используется команда modify:
nmcli conn modify «static» ipv4.dns 8.8.8.8
И ещё один DNS сервер с помощью оператора +:
nmcli conn modify «static» +ipv4.dns 8.8.4.4
Для добавления дополнительной информации в поле используйте символ +. Например, вот так можно добавить еще один ip адрес:
nmcli conn modify «static» +ipv4.addresses 192.168.0.240/24
Обратите внимание, что IP адрес должен быть из той же подсети, что и ваш шлюз иначе может ничего не работать. Теперь можете активировать подключение:
nmcli connection up static
7. Настройка Wifi
В графическом интерфейсе это делается одной галочкой, здесь одной командой. Смотрим состояние wifi:
Такой командой можно посмотреть список доступных сетей wifi:
Команда для подключения к новой сети wifi выглядит не намного сложнее. Например, давайте подключимся к сети TP-Link с паролем 12345678:
nmcli device wifi connect «TP-Link» password 12345678 name «TP-Link Wifi»
Если всё прошло хорошо, то вы получите уже привычное сообщение про создание подключения с именем TP-Link Wifi и это имя в дальнейшем можно использовать для редактирования этого подключения и управления им, как описано выше.
Выводы
Как видите, все очень просто и быстро. Настройка network manager в консоли выполняется в пару команд, достаточно только их запомнить или где-нибудь написать, чтобы вы могли выполнить управление сетью nmcli когда это понадобится.
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.