zarządzanie połączeniami sieciowymi w systemie Linux za pomocą nmcli i terminala

W świecie Linuksa zarządzanie połączeniami sieciowymi może czasami wydawać się skomplikowane, szczególnie poza znanymi środowiskami graficznymi. Podczas gdy graficzne interfejsy użytkownika (GUI) znacznie ułatwiają konfigurację, opanowanie narzędzi wiersza poleceń pozostaje kluczowe dla efektywnego zarządzania połączeniami sieciowymi, szczególnie na serwerach bez interfejsu graficznego lub podczas zaawansowanego rozwiązywania problemów. Narzędzie nmcli, klient wiersza poleceń popularnej usługi NetworkManager, wyróżnia się jako potężne i elastyczne narzędzie do kontrolowania interfejsów sieciowych. Ta możliwość manipulowania połączeniami Ethernet, Wi-Fi lub VPN za pośrednictwem terminala jest niezbędnym atutem dla administratorów systemów pracujących z renomowanymi dystrybucjami, takimi jak Red Hat, Debian, Fedora, OpenSUSE lub Arch Linux. Wiedza, jak korzystać z nmcli, nie tylko zapewnia wyraźną widoczność stanu interfejsów sieciowych, ale także umożliwia szybką interwencję w przypadku awarii połączenia lub konieczności wprowadzenia zmian, niezależnie od tego, czy jest to proste ponowne połączenie, czy konfiguracja statycznego adresu IP, niezbędna dla niektórych ról serwera. Zrozumienie interfejsów sieciowych i narzędzia nmcli w systemie Linux

Każde połączenie sieciowe w systemie Linux jest zarządzane przez interfejs, fizyczny lub wirtualny. Interfejsy te mają określone nazwy, które znacznie ewoluowały na przestrzeni lat. W tamtym czasie powszechne były nazwy takie jak eth0 dla Ethernetu lub wlan0 dla Wi-Fi. Od tego czasu dystrybucje takie jak Ubuntu (Canonical) i Fedora (Red Hat) przyjęły bardziej opisowe nazwy oparte na lokalizacji sprzętu, takie jak enp3s0 dla interfejsu Ethernetu i wlp2s0 dla Wi-Fi.

Narzędzie nmcli to narzędzie wiersza poleceń, które kontroluje demona NetworkManager, który jest odpowiedzialny za automatyczne i dynamiczne zarządzanie połączeniami sieciowymi w wielu dystrybucjach, takich jak Linux Mint, AlmaLinux i Linux Mint. lub nawet CentOS . Domyślnie nmcli jest instalowany z NetworkManager, co ułatwia korzystanie z niego w większości nowoczesnych systemów GNU/Linux. Za pomocą nmcli możesz wykonywać szeroki zakres operacji: Wyświetlać listę interfejsów sieciowych i ich status. Szczegółową konfigurację połączenia sieciowego. Włączać lub wyłączać interfejs. Modyfikować ustawienia, takie jak adresy IP, bramy lub DNS. Tworzyć nowe profile połączeń, czy to Ethernet, Wi-Fi, czy VPN. Ta bogata funkcjonalność sprawia, że ​​jest to niezbędne narzędzie, szczególnie dla użytkowników dystrybucji bez graficznego pulpitu, takich jak Debian lub

Slackware , gdzie króluje wiersz poleceń.Aby wyświetlić pełną listę interfejsów, wystarczy proste polecenie: nmcli -p dev status Parametr -pdodaje bardziej czytelne i ustrukturyzowane dane wyjściowe. Wyświetla nazwy interfejsów, ich typ, bieżący status (połączony, rozłączony) i aktywny profil połączenia. Ta wstępna diagnostyka jest niezbędna, gdy wystąpi problem z siecią.

Dowiedz się, jak zarządzać połączeniami sieciowymi w systemie Linux za pomocą nmcli. Poznaj podstawowe polecenia, aby szybko i wydajnie konfigurować, modyfikować i rozwiązywać problemy z interfejsami sieciowymi.

  • Jasno określ status interfejsów i ich aktywnych połączeń
  • W administracji systemu często zachodzi potrzeba ukierunkowania na konkretny interfejs przed interwencją. Aby wyświetlić tylko aktywne połączenia, unikając w ten sposób ugrzęźnięcia w długiej liście, skuteczne jest następujące polecenie:
  • nmcli -p con show –active
  • Środowiska takie jak
  • OpenSUSE

lub Arch Linux również wykorzystują to podejście, aby zapewnić szczegółowe zarządzanie profilami sieciowymi. Wyświetlane szczegóły obejmują nie tylko nazwę połączenia, ale także typ i UUID, unikalny identyfikator każdego profilu połączenia. Aby zbadać szczegóły, możesz zbadać konkretne połączenie:nmcli -p con show

gdzie

<!– wp:code {"content":"
nmcli -p dev status
„} –>

odpowiada identyfikatorowi wyświetlonemu wcześniej. Pozwala to zweryfikować: Skonfigurowane adresy IP. Używaną bramę.

Aktywne serwery DNS.

Typ metody przypisywania IP (DHCP lub statyczny).

Ta dogłębna analiza stanowi punkt wyjścia przed wprowadzeniem jakichkolwiek zmian, zapewniając pełne zrozumienie bieżącej konfiguracji sieci.

<!– wp:code {"content":"
nmcli -p con show --active
„} –>
https://www.youtube.com/watch?v=X6_9aS5-cT8

Opanowanie poleceń nmcli w celu włączania, wyłączania i rozwiązywania problemów z połączeniami Gdy łączność sieciowa jest problematyczna, kluczowe jest szybkie działanie poprzez wyłączenie i ponowne włączenie interfejsu, co jest często określane jako „cykliczne” lub „resetowanie” połączenia. Ta technika jest niezbędna we wszystkich systemach z systemem NetworkManager, od Red Hat Enterprise Linux do Linux Mint. Aby wyłączyć interfejs sieciowy, użyj: nmcli -p con down To polecenie skutecznie rozłącza interfejs bez usuwania go, dzięki czemu operacja jest całkowicie odwracalna. Po wyłączeniu interfejsu zalecane jest polecenie sprawdzające jego status: nmcli -p dev status

Zobaczysz wtedy, że połączenie docelowe jest wyświetlane jako „rozłączone” lub po prostu brakuje go wśród aktywnych połączeń.

<!– wp:code {"content":"
nmcli -p con show 
„} –>
Aby je ponownie aktywować, w grę wchodzi polecenie odwrotne:

nmcli -p con up Ponowne uruchomienie połączenia w ten sposób często wystarcza, aby rozwiązać tymczasowe problemy z połączeniem. Zaleca się jednak sprawdzenie połączenia z usługą sieciową, na przykład za pomocą prostego polecenia ping: ping -c 4 8.8.8.8

  • Google DNS jest często używany jako punkt odniesienia, gwarantując szybką odpowiedź, jeśli warunki sieciowe są dobre. Te proste kroki są często używane przez administratorów systemów do rozwiązywania problemów z interfejsami sieciowymi.
  • Zidentyfikuj dotknięty interfejs.
  • Zatrzymaj bieżące połączenie.
  • Uruchom ponownie połączenie.

Przetestuj łączność sieciową.

Całą tę procedurę można również zautomatyzować za pomocą skryptu powłoki, co jest znaczącą zaletą dla środowisk serwerowych lub osadzonych, takich jak te, w których działa AlmaLinux lub CentOS.

Dowiedz się, jak używać nmcli do zarządzania połączeniami sieciowymi w systemie Linux. Dowiedz się, jak łatwo konfigurować, monitorować i rozwiązywać problemy z połączeniami za pomocą tego potężnego narzędzia wiersza poleceń.

Wykrywaj i naprawiaj typowe problemy z połączeniem za pomocą nmcli Typowe błędy są związane z konfliktami IP, nieprawidłowymi ustawieniami DNS lub uśpionymi interfejsami. Nmcli udostępnia narzędzia do sprawdzania konfiguracji, a także do resetowania uszkodzonych profili. Jeśli masz problem z uwierzytelnianiem WPA na połączeniu Wi-Fi, może być przydatne usunięcie, a następnie ponowne utworzenie profilu: Rozłącz profil: nmcli con down Usuń profil:

nmcli con delete

<!– wp:code {"content":"
nmcli -p con down 
„} –>
Utwórz nowe połączenie:

nmcli dev wifi connect password

<!– wp:code {"content":"
nmcli -p dev status
„} –>
Ta metoda pozwala uniknąć żmudnych przeszukiwań plików konfiguracyjnych i ma zastosowanie również do połączeń VPN lub Ethernet z uszkodzonymi lub nieaktualnymi profilami.

Konfigurowanie statycznego adresu IP za pomocą nmcli dla serwera Linux

<!– wp:code {"content":"
nmcli -p con up 
„} –>
W kontekście serwera, niezależnie od tego, czy działa Debian, Ubuntu LTS (Canonical), AlmaLinux czy CentOS, posiadanie statycznego adresu IP jest często konieczne. Ta konfiguracja umożliwia innym maszynom w sieci skuteczne zlokalizowanie serwera, co jest podstawowym warunkiem wstępnym do hostowania usług internetowych, baz danych lub aplikacji sieciowych.

Oto proces krok po kroku z użyciem nmcli:

<!– wp:code {"content":"
ping -c 4 8.8.8.8
„} –>
Zidentyfikuj nazwę połączenia:

za pomocą polecenia

  • nmcli -p con show
  • .
  • Zmodyfikuj profil połączenia:
  • Zastosuj statyczny adres IPv4, określ bramę i serwer DNS, a następnie ustaw metodę na „manual”:

nmcli connection modify „CONNECTION_NAME” ipv4.addresses X.X.X.X/24 ipv4.gateway Y.Y.Y.Y ipv4.dns Z.Z.Z.Zipv4.method manual

Ważne jest, aby dostosować te ustawienia zgodnie z lokalnym planem adresowania sieci. Na przykład adres

192.168.1.100

, brama

192.168.1.1

  • i DNS identyczny z bramą działają w wielu sieciach domowych lub firmowych. Po zastosowaniu modyfikacji należy wyłączyć i ponownie włączyć połączenie, aby uwzględnić zmiany:
  • nmcli conex down „CONNECTION_NAME” nmcli conex up "CONNECTION_NAME"
  • Następnie sprawdź nową konfigurację: nmcli -p con show "CONNECTION_NAME" | grep ipv4.addresses

Na koniec prosty test sieciowy weryfikuje połączenie:

ping 8.8.8.8 -c 4

Jeśli polecenia zakończą się powodzeniem, a pingi zostaną zwrócone natychmiast, statyczna konfiguracja IP jest funkcjonalna. To podejście jest szeroko stosowane na różnych platformach GNU/Linux omówionych tutaj, w tym pochodnych Red Hat i dystrybucjach społecznościowych, takich jak Slackware.

Dowiedz się, jak zarządzać połączeniami sieciowymi w systemie Linux za pomocą nmcli. Dowiedz się, jak konfigurować, modyfikować i rozwiązywać problemy z połączeniami sieciowymi za pomocą tego potężnego i elastycznego narzędzia wiersza poleceń. Automatyzacja zarządzania siecią za pomocą skryptów powłoki za pomocą nmcliPowtarzanie poleceń nmcli w środowiskach wielokomputerowych często motywuje automatyzację za pomocą skryptów. Administratorzy systemów i zaawansowani użytkownicy doceniają tę możliwość niezawodnego wdrażania standardowych konfiguracji sieciowych na serwerach Fedora, OpenSUSE lub Arch Linux. Prosty skrypt powłoki bash może: Identyfikować dostępne interfejsy. Tymczasowo rozłączać połączenie. Zastosowywać określone ustawienia sieciowe (statyczny adres IP, DNS). Restartować połączenie i sprawdzać jego status. Oto podstawowy przykład skryptu:#!/bin/bash

CONN=”Połączenie Ethernet 1″

  1. nmcli con down „$CONN” nmcli con modify „$CONN” ipv4.addresses 192.168.1.100/24 ​​​​ipv4.gateway 192.168.1.1 ipv4.dns 192.168.1.1 ipv4.method manual nmcli con up "$CONN"nmcli -p dev status
  2. Ten skrypt można rozszerzyć o sprawdzanie błędów, rejestrowanie lub alerty e-mail. Integrowanie nmcli z automatycznymi procedurami jest powszechną praktyką w dystrybucjach zorientowanych na przedsiębiorstwa, takich jak Red Hat i AlmaLinux, a także w społeczności dystrybucji komputerów stacjonarnych, takiej jak Linux Mint. Poznaj alternatywy i uzupełnienia dla nmcli do zarządzania siecią Chociaż nmcli stanowi potężny standard, istnieją inne narzędzia, które mogą uzupełniać lub zastępować jego funkcje w zależności od kontekstu i dystrybucji:
<!– wp:code {"content":"
nmcli connection modify "NOM_CONNEXION" nipv4.addresses X.X.X.X/24 nipv4.gateway Y.Y.Y.Y nipv4.dns Z.Z.Z.Z nipv4.method manual
„} –>
nmtui 
: Interfejs tekstowy (TUI) oparty na ncurses, bardziej przyjazny dla użytkowników, którzy wolą półgraficzny wyświetlacz w terminalu. 
ifconfig 
i 
ip

: Bardziej tradycyjne, narzędzia niskiego poziomu, często używane do szczegółowej kontroli interfejsów, ale nie zarządzające profilami i połączeniami NetworkManager. wpa_supplicant: Dedykowane do szczegółowego zarządzania bezpiecznymi połączeniami Wi-Fi, często za nmcli w przypadku połączeń bezprzewodowych. systemd-networkd : Alternatywa dla NetworkManager w niektórych minimalistycznych systemach lub serwerach, z zarządzaniem siecią za pomocą plików konfiguracyjnych.

Każde narzędzie spełnia określone potrzeby. Na przykład Debian często faworyzuje systemd-networkd lub ifupdown w instalacjach serwerowych, podczas gdy Fedora i pulpity Linux Mint zalecają nmcli ze względu na łatwość obsługi i automatyzację. Zrozumienie ich komplementarności i wybór właściwego narzędzia do właściwego kontekstu to cenna umiejętność. Na przykład nowicjusz w Linuksie szybko odkryje, że nmcli oferuje właściwą równowagę mocy, prostoty i przenośności w szerokim zakresie dystrybucji, od Arch Linux do CentOS, OpenSUSE i Slackware.

<!– wp:code {"content":"
nmcli -p con show "NOM_CONNEXION" | grep ipv4.addresses
„} –>

<!– wp:code {"content":"
ping 8.8.8.8 -c 4
„} –>

<!– wp:code {"content":"
#!/bin/bashnCONN="Ethernet connection 1"nnnmcli con down "$CONN"nnmcli con modify "$CONN" ipv4.addresses 192.168.1.100/24 ipv4.gateway 192.168.1.1 ipv4.dns 192.168.1.1 ipv4.method manualnnmcli con up "$CONN"nnnmcli -p dev status
„} –>