NetworkManager: Набір інструментів налаштування мережі¶
У 2004 році компанія Red Hat запустила проект NetworkManager, який має задовольнити користувачам Linux потреби поточного керування мережами, особливо керування бездротовими мережами. Сьогодні проектом керує GNOME. Домашню сторінку NetworkManager можна знайти тут.
NetworkManager — це стандартний набір інструментів налаштування мережі Linux. Він підтримує різні мережеві параметри від комп’ютера до сервера та мобільних пристроїв і ідеально інтегрований із популярними середовищами робочого столу та інструментами керування конфігурацією сервера.
Набір в основному включає два інструменти командного рядка:
Для RockyLinux 8.x ми розповіли, як налаштувати мережу у цьому документі. Ви можете використовувати vim для редагування файлу конфігурації мережевої карти в каталозі /etc/sysconfig/network-script/ або nmcli/nmtui, обидва з яких прийнятні.
Для RockyLinux 9.x, якщо ви перейдете до каталогу /etc/sysconfig/network-scripts/, там буде ** readme-ifcfg-rh.txt текст опису, який пропонує вам перейти до каталогу /etc/NetworkManager/system-connections/**.
ens160 тут стосується назви мережевої карти в системі. Ви можете здивуватися, чому назва виглядає так дивно? Це через диспетчер пристроїв udev. Він підтримує багато різних схем імен. За замовчуванням фіксовані імена призначаються відповідно до мікропрограми, топології та інформації про місцезнаходження. До його переваг можна віднести:
Назви пристроїв цілком передбачувані.
Назви пристроїв залишаються фіксованими, навіть якщо ви додаєте або видаляєте апаратне забезпечення, оскільки повторного перерахування не відбувається.
Несправне обладнання можна легко замінити.
У RHEL 9 і відповідній версії спільноти операційних систем узгоджене іменування пристроїв увімкнено за замовчуванням. Диспетчер пристроїв udev генеруватиме назви пристроїв за наступною схемою:
Схема
Опис
Приклад
1
Назви пристроїв включають мікропрограмне забезпечення або номери індексів, надані BIOS для бортових пристроїв. Якщо ця інформація недоступна або застосовна, udev використовує схему 2.
eno1
2
Назви пристроїв включають номери індексів вбудованого програмного забезпечення або наданого BIOS слота PCI Express (PCIe). Якщо ця інформація недоступна або застосовна, udev використовує схему 3.
ens1
3
Назви пристроїв включають фізичне розташування роз’єму обладнання. Якщо ця інформація недоступна або застосовна, udev використовує схему 5.
enp2s0
4
Назви пристроїв містять MAC-адресу. Red Hat Enterprise Linux не використовує цю схему за замовчуванням, але адміністратори можуть використовувати її за бажанням.
enx525400d5e0fb
5
Традиційна непередбачувана схема іменування ядра. Якщо udev не може застосувати жодну з інших схем, диспетчер пристроїв використовує цю схему.
eth0
Диспетчер пристроїв udev називає префікс мережевої карти на основі типу інтерфейсу:
en для Ethernet.
wl для бездротової локальної мережі (WLAN).
ww для бездротової глобальної мережі (WWAN).
ib, мережа InfiniBand.
sl, Інтернет-протокол послідовної лінії (slip)
Додайте кілька суфіксів до префікса, наприклад:
o on-board_index_number
s hot_plug_slot_index_number [f] функція [d] device_id
x MAC_адреса
[P] номер домену p шина s слот [f] функція [d] device_id
[P] номер домену p шина s слот [f] функція [u] Usb порт [c] інтерфейс конфігурації [i]
Ви можете скористатися man 7 systemd.net-naming-scheme, щоб отримати детальнішу інформацію.
Деякі використовують кілька мережевих карт для агрегації посилань. На початку використання технології bonding існувало сім робочих режимів (0~6), а режим зв’язку підтримував щонайбільше дві мережеві карти; Пізніше технологія teaming поступово використовується як альтернатива, існує п'ять режимів роботи, а командний режим може використовувати до восьми мережевих карт. Порівняльне посилання між bonding і teaming можна знайти за цим посиланням.
Рядки, які починаються з # і порожні рядки, вважаються коментарями;
У [ і ] є розділ, який має намір оголосити заголовок, а під ним містяться конкретні пари ключ-значення. Кожен оголошений заголовок і його пара ключ-значення утворюють синтаксичний сегмент;
Будь-який файл із суфіксом .nmconnection може використовувати NetworkManager.
Назви заголовків connection можуть містити такі загальні пари ключ-значення:
назва ключа
опис
id
Псевдонім con-name, значенням якого є рядок.
uuid
Універсальний унікальний ідентифікатор, значенням якого є рядок.
type
Тип підключення, значення якого можуть бути ethernet, bluetooth, vpn, vlan тощо. Ви можете скористатися man nmcli, щоб переглянути всі підтримувані типи.
interface-name
Ім'я мережевого інтерфейсу, до якого прив'язано це з'єднання, значенням якого є рядок.
timestamp
Позначка часу Unix, у секундах. Значення тут — це кількість секунд з 1 січня 1970 року.
autoconnect
Чи запускається автоматично під час запуску системи. Значення має boolean тип.
Назви ethernet можуть містити такі загальні пари ключ-значення:
назва ключа
опис
mac-address
MAC фізична адреса.
mtu
Maximum Transmission Unit (Максимальна одиниця передачі).
auto-negotiate
Чи вести переговори автоматично. Значення має логічний тип.
duplex
Значення можуть бути половиною (напівдуплекс), повним (повнодуплекс)
speed
Вкажіть швидкість передачі даних мережевої карти. 100 - це 100 Мбіт/с. Якщо auto-negotiate=false, клавіша speed і duplex ** необхідно встановити ключ; якщо auto-negotiate=true, використана швидкість узгоджена, а запис тут не діє (це стосується лише специфікації BASE-T 802.3) ; коли ненульове значення, дуплексний** ключ повинен мати значення.
Імена заголовків ipv4 можуть містити такі загальні пари ключ-значення:
назва ключа
опис
addresses
Призначені IP-адреси
gateway
Шлюз (наступний крок) для інтерфейсу
dns
Використовуються сервери доменних імен
method
Спосіб отримання IP. Значення має рядковий тип. Значення може бути: auto, disabled, link-local, manual, shared