Настройка сети в AlmaLinux 8, CentOS 8 или Rocky Linux 8 с помощью команды nmcli (20 примеров)
На этой странице
- Предпосылки
- 1. Проверить статус NetworkManager
- 2. Проверить все доступные устройства
- 3. Проверить активное соединение
- 4. Отображение информации о соединении Ethernet
- 5. Изменить директиву «Автоматическое подключение»
- 6. Изменить директиву BOOTPROTO сетевого подключения
- 7. Отключить адрес IPv6 с помощью nmcli
- 8. Добавить DNS-сервер к существующему соединению
- 9. Удалить DNS-сервер из существующего подключения
- 10. Добавить/редактировать соединение в интерактивном режиме
- 11. Мониторинг активности подключения
- 12. Создайте новое соединение со статическим IP-адресом
- 13. Создайте новое соединение с DHCP
- 14. Активировать новое соединение
- 15. Деактивировать соединение
- 16. Удалить соединение
- 17. Изменить имя хоста с помощью nmcli
- 18. Изменить директиву DEFROUTE
- 19. Перезапустить Ethernet-соединение
- 20. справка по nmcli
- Заключение
nmcli — это инструмент командной строки, который можно использовать для управления NetworkManager. Этот инструмент поможет вам отображать состояние сетевых устройств, создавать, редактировать, активировать/деактивировать, удалять сетевые подключения, а также устранять неполадки в сети в вашей системе Linux. Для серверов и безголовых машин очень полезно контролировать общесистемные соединения.
В этом руководстве мы покажем вам, как использовать команду nmcli для управления сетевыми подключениями на примерах.
Предпосылки
- Сервер под управлением AlmaLinux 8, CentOS 8 или Rocky Linux 8.
- На вашем сервере установлен пароль root.
1. Проверьте статус NetworkManager
Чтобы проверить, запущен ли Network Manager, используйте следующую команду:
nmcli -t -f RUNNING general
Вы должны увидеть следующий вывод:
running
Чтобы получить общий статус, выполните следующую команду:
nmcli general
Вы должны увидеть следующий вывод:
STATE CONNECTIVITY WIFI-HW WIFI WWAN-HW WWAN connected full enabled enabled enabled enabled
2. Проверьте все доступные устройства
Вы можете отобразить все доступные устройства в вашей системе, выполнив следующую команду:
nmcli dev status
Вы должны увидеть следующий вывод:
DEVICE TYPE STATE CONNECTION eth0 ethernet connected System eth0 eth1 ethernet connected System eth1 lo loopback unmanaged --
3. Проверьте активное соединение
Чтобы вывести список всех активных подключений в вашей системе, выполните следующую команду:
nmcli con show
Вы должны получить следующий результат:
NAME UUID TYPE DEVICE System eth0 5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03 ethernet eth0 System eth1 9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04 ethernet eth1
4. Отображение информации о соединении Ethernet
Вы можете отобразить краткую информацию об Ethernet-соединении с помощью следующей команды:
nmcli con show "System eth0"
Вы должны получить следующий результат:
connection.id: System eth0 connection.uuid: 5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03 connection.stable-id: -- connection.type: 802-3-ethernet connection.interface-name: eth0 connection.autoconnect: yes connection.autoconnect-priority: 0 connection.autoconnect-retries: -1 (default) connection.multi-connect: 0 (default) connection.auth-retries: -1 connection.timestamp: 1588217245 connection.read-only: no connection.permissions: -- connection.zone: -- connection.master: -- connection.slave-type: -- connection.autoconnect-slaves: -1 (default) connection.secondaries: -- connection.gateway-ping-timeout: 0 connection.metered: unknown cat /etc/sysconfig/network-scripts/ifcfg-eth1 | grep BOOTPROTO BOOTPROTO=dhcp
5. Измените директиву «Автоматическое подключение»
По умолчанию все Ethernet-соединения будут подключаться автоматически. Вы можете отключить его с помощью следующей команды:
nmcli con mod "System eth1" connection.autoconnect no
Вы можете проверить изменения с помощью следующей команды:
cat /etc/sysconfig/network-scripts/ifcfg-eth1 | grep ONBOOT
Вы должны увидеть следующий вывод:
ONBOOT=no
6. Изменить директиву BOOTPROTO сетевого подключения
Вы можете изменить директиву BOOTPROTO подключения Ethernet со статического на DHCP, используя следующую команду:
nmcli con mod "System eth1" ipv4.method auto
Теперь вы можете проверить изменения с помощью следующей команды:
cat /etc/sysconfig/network-scripts/ifcfg-eth1 | grep BOOTPROTO
Вы должны увидеть следующий вывод:
BOOTPROTO=dhcp
Чтобы изменить статическую директиву BOOTPROTO Ethernet-соединения на DHCP на статическую, используйте следующую команду:
nmcli con mod "System eth1" ipv4.method manual ipv4.address 192.168.0.10/24 ipv4.gateway 192.168.0.1
7. Отключить адрес IPv6 с помощью nmcli
По умолчанию в CentOS 8 включено соединение IPv6 и IPv4. Вы можете отключить соединение IPv6 с помощью следующей команды:
nmcli con mod "System eth1" ipv6.method ignore
8. Добавьте DNS-сервер к существующему соединению
Чтобы добавить новый DNS-сервер к существующему соединению, выполните следующую команду:
nmcli con mod "System eth1" ipv4.dns 8.8.4.4
Вы можете проверить изменения с помощью следующей команды:
cat /etc/sysconfig/network-scripts/ifcfg-eth1 | grep DNS
Вывод:
DNS1=8.8.4.4
Вы также можете добавить новый DNS-сервер, используя параметр +ipv4.dns:
nmcli con mod "System eth1" +ipv4.dns 4.4.4.4
9. Удалить DNS-сервер из существующего подключения
Чтобы удалить единственный DNS-сервер из соединения, выполните следующую команду:
nmcli con mod "System eth1" -ipv4.dns 8.8.4.4
Чтобы удалить несколько DNS-серверов из соединения, выполните следующую команду:
nmcli con mod "System eth1" -ipv4.dns 8.8.4.4,8.8.2.2
10. Добавить/редактировать соединение в интерактивном режиме
Вы также можете создать новое соединение или отредактировать существующее соединение с помощью интерактивного редактора.
Например, отредактируйте существующее подключение, выполните следующую команду:
nmcli con edit "System eth1"
Вы должны увидеть следующий вывод:
===| nmcli interactive connection editor |=== Editing existing '802-3-ethernet' connection: 'System eth1' Type 'help' or '?' for available commands. Type 'print' to show all the connection properties. Type 'describe [. ]' for detailed property description. You may edit the following settings: connection, 802-3-ethernet (ethernet), 802-1x, dcb, sriov, ethtool, match, ipv4, ipv6, tc, proxy nmcli>
Теперь, отобразив существующий IP-адрес, выполните следующую команду:
nmcli> print ipv4.address
Вывод:
ipv4.addresses: 192.168.0.10/32
Чтобы установить новый IP-адрес, выполните следующую команду:
nmcli> set ipv4.address 192.168.0.11
Вы можете проверить и сохранить соединение с помощью следующей команды:
nmcli> verify
Вывод:
Verify connection: OK
nmcli> save
Вывод:
Connection 'System eth1' (9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04) successfully updated.
Теперь вы можете проверить сохраненное соединение с помощью следующей команды:
cat /etc/sysconfig/network-scripts/ifcfg-eth1 | grep IPADDR
Вы должны увидеть следующий вывод:
IPADDR=192.168.0.10 IPADDR1=192.168.0.11
11. Мониторинг активности подключения
Вы также можете отслеживать активность NetworkManager с помощью nmcli, например изменения состояния подключения, профилей, устройств и т. д.
После изменения соединения Ethernet выполните следующую команду для его мониторинга:
nmcli con monitor "System eth1"
12. Создайте новое соединение со статическим IP-адресом
Вы также можете создать новое статическое соединение Ethernet с помощью nmcli. Например, создайте новое соединение Ethernet с именем eth2, IP 192.168.0.12/24, шлюз 192.168.0.1, \onboot=yes\, выполнив следующую команду:
nmcli con add con-name eth2 type ethernet ifname eth2 ipv4.method manual ipv4.address 192.168.0.15/24 ipv4.gateway 192.168.0.1
Вы должны увидеть следующий вывод:
Connection 'eth2' (cefb3f7d-424c-42f8-b4e8-ed54e7dcb880) successfully added.
Теперь проверьте соединение с помощью следующей команды:
nmcli con
Вывод:
NAME UUID TYPE DEVICE System eth0 5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03 ethernet eth0 System eth1 9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04 ethernet eth1 eth2 cefb3f7d-424c-42f8-b4e8-ed54e7dcb880 ethernet eth2
13. Создайте новое соединение с DHCP
Вы также можете создать новое DHCP-соединение с помощью nmcli. Например, создайте новое Ethernet-соединение DHCP с именем eth3 с помощью следующей команды:
nmcli con add con-name eth3 type ethernet ifname eth3 ipv4.method auto
Вы должны увидеть следующий вывод:
Connection 'eth3' (ff54dbd6-255d-4935-abc8-73773bef5b55) successfully added.
14. Активируйте новое соединение
Чтобы активировать новое соединение Ethernet eth2, выполните следующую команду:
nmcli con up eth2
Вы должны увидеть следующий вывод:
Connection successfully activated
Теперь вы можете проверить активное соединение с помощью следующей команды:
nmcli con show --active
Вы должны увидеть следующий вывод:
Вывод:
NAME UUID TYPE DEVICE System eth0 5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03 ethernet eth0 System eth1 9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04 ethernet eth1 eth2 cefb3f7d-424c-42f8-b4e8-ed54e7dcb880 ethernet eth2
15. Деактивировать соединение
Чтобы деактивировать соединение eth2, выполните следующую команду:
nmcli con down eth2
16. Удалить соединение
Вы также можете удалить конкретное соединение Ethernet с помощью nmcli.
Например, чтобы удалить соединение eth2, выполните следующую команду:
nmcli con del eth2
Вы должны увидеть следующий вывод:
Connection 'eth2' (cefb3f7d-424c-42f8-b4e8-ed54e7dcb880) successfully deleted.
17. Измените имя хоста с помощью nmcli
Чтобы узнать текущее имя хоста вашей системы, выполните следующую команду:
nmcli general hostname
Вы должны увидеть следующий вывод:
centos8
Затем измените имя хоста с centos8 на Linux с помощью следующей команды:
nmcli general hostname linux
Затем проверьте имя хоста с помощью следующей команды:
nmcli general hostname
Вы должны увидеть следующий вывод:
linux
18. Измените директиву DEFROUTE
Директива DEFROUTE используется для отключения и включения шлюза по умолчанию для вашего Ethernet-соединения.
Чтобы включить директиву DEFROUTE для eth2, выполните следующую команду:
nmcli con mod "System eth2" ipv4.never-default yes
19. Перезапустите соединение Ethernet
Вы можете перезапустить или перезагрузить соединение Ethernet с помощью следующей команды:
nmcli con reload
20. помощь с помощью nmcli
Чтобы получить дополнительную информацию о команде nmcli, выполните следующую команду:
nmcli --help
Вы должны увидеть следующий вывод:
Usage: nmcli [OPTIONS] OBJECT { COMMAND | help } OPTIONS -a, --ask ask for missing parameters -c, --colors auto|yes|no whether to use colors in output -e, --escape yes|no escape columns separators in values -f, --fields <field,...>|all|common specify fields to output -g, --get-values <field,...>|all|common shortcut for -m tabular -t -f -h, --help print this help -m, --mode tabular|multiline output mode -o, --overview overview mode -p, --pretty pretty output -s, --show-secrets allow displaying passwords -t, --terse terse output -v, --version show program version -w, --waitset timeout waiting for finishing operations OBJECT g[eneral] NetworkManager's general status and operations n[etworking] overall networking control r[adio] NetworkManager radio switches c[onnection] NetworkManager's connections d[evice] devices managed by NetworkManager a[gent] NetworkManager secret agent or polkit agent m[onitor] monitor NetworkManager changes
Заключение
В приведенном выше руководстве мы узнали, как использовать nmcli для управления и контроля соединений Ethernet в клонах RHEL 8, таких как AlmaLinux, centOS или Rocky Linux. Я надеюсь, что теперь вы можете легко добавлять, редактировать или создавать новое соединение с помощью nmcli. Не стесняйтесь спрашивать меня, если у вас есть какие-либо вопросы.