Ricerca nel sito web

networkctl: interroga lo stato dei collegamenti di rete in Linux


Networkctl è un'utilità della riga di comando per visualizzare un riepilogo dei dispositivi di rete e il loro stato di connessione. Ti consente di interrogare e controllare il sottosistema di rete Linux. È uno dei nuovi comandi nella nuova versione di systemd presente in Ubuntu 18.04. Visualizza lo stato dei collegamenti di rete come visto da systemd-networkd.

Leggi anche: Una guida per amministratori di sistema Linux alla gestione della rete, alla risoluzione dei problemi e al debug

Nota: prima di eseguire networkctl, assicurati che systemd-networkd sia in esecuzione, altrimenti otterrai un output incompleto indicato dal seguente errore.

WARNING: systemd-networkd is not running, output will be incomplete.

Puoi controllare lo stato di systemd-networkd eseguendo il seguente comando systemctl.

sudo systemctl status systemd-networkd

 systemd-networkd.service - Network Service
   Loaded: loaded (/lib/systemd/system/systemd-networkd.service; disabled; vendor preset: enabled)
   Active: active (running) since Tue 2018-07-31 11:38:52 IST; 1s ago
     Docs: man:systemd-networkd.service(8)
 Main PID: 13682 (systemd-network)
   Status: "Processing requests..."
   CGroup: /system.slice/systemd-networkd.service
           └─13682 /lib/systemd/systemd-networkd

Jul 31 11:38:52 TecMint systemd[1]: Starting Network Service...
Jul 31 11:38:52 TecMint systemd-networkd[13682]: vmnet8: Gained IPv6LL
Jul 31 11:38:52 TecMint systemd-networkd[13682]: vmnet1: Gained IPv6LL
Jul 31 11:38:52 TecMint systemd-networkd[13682]: enp1s0: Gained IPv6LL
Jul 31 11:38:52 TecMint systemd-networkd[13682]: Enumeration completed
Jul 31 11:38:52 TecMint systemd[1]: Started Network Service.

Se systemd-networkd non è in esecuzione, puoi avviarlo e abilitarlo all'avvio all'avvio utilizzando i seguenti comandi.

sudo systemctl start systemd-networkd
sudo systemctlenable systemd-networkd

Per ottenere le informazioni sullo stato dei collegamenti di rete, esegui il seguente comando networkctl senza alcun argomento.

networkctl

IDX LINK             TYPE               OPERATIONAL SETUP     
  1 lo               loopback           carrier     unmanaged 
  2 enp1s0           ether              routable    unmanaged 
  3 wlp2s0           wlan               off         unmanaged 
  4 vmnet1           ether              routable    unmanaged 
  5 vmnet8           ether              routable    unmanaged 

5 links listed.

Per visualizzare tutti i collegamenti di rete e il loro stato, utilizza il flag -a.

networkctl -a

IDX LINK             TYPE               OPERATIONAL SETUP     
  1 lo               loopback           carrier     unmanaged 
  2 enp1s0           ether              routable    unmanaged 
  3 wlp2s0           wlan               off         unmanaged 
  4 vmnet1           ether              routable    unmanaged 
  5 vmnet8           ether              routable    unmanaged 

5 links listed.

Per ottenere un elenco dei collegamenti esistenti e il loro stato, utilizza il comando list (equivalente all'uso del flag -a) come mostrato.

networkctl list

IDX LINK             TYPE               OPERATIONAL SETUP     
  1 lo               loopback           carrier     unmanaged 
  2 enp1s0           ether              routable    unmanaged 
  3 wlp2s0           wlan               off         unmanaged 
  4 vmnet1           ether              routable    unmanaged 
  5 vmnet8           ether              routable    unmanaged 

5 links listed.

Per visualizzare informazioni sui collegamenti specificati, come tipo, stato, driver del modulo kernel, hardware e indirizzo IP, DNS configurato, server e altro, utilizzare il comando status. Se non specifichi alcun collegamento, i collegamenti instradabili vengono visualizzati per impostazione predefinita.

networkctl status 

        State: routable
       Address: 192.168.0.103 on enp1s0
                172.16.236.1 on vmnet1
                192.168.167.1 on vmnet8
                fe80::8f0c:7825:8057:5eec on enp1s0
                fe80::250:56ff:fec0:1 on vmnet1
                fe80::250:56ff:fec0:8 on vmnet8
       Gateway: 192.168.0.1 (TP-LINK TECHNOLOGIES CO.,LTD.) on enp1s0

O

networkctl status enp1s0

 2: enp1s0
       Link File: /lib/systemd/network/99-default.link
    Network File: n/a
            Type: ether
           State: routable (unmanaged)
            Path: pci-0000:01:00.0
          Driver: r8169
          Vendor: Realtek Semiconductor Co., Ltd.
           Model: RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
      HW Address: 28:d2:44:eb:bd:98 (LCFC(HeFei) Electronics Technology Co., Ltd.)
         Address: 192.168.0.103
                  fe80::8f0c:7825:8057:5eec
         Gateway: 192.168.0.1 (TP-LINK TECHNOLOGIES CO.,LTD.)

Per mostrare lo stato LLDP (Link Layer Discovery Protocol), utilizza il comando lldp.

networkctl lldp

Per impostazione predefinita, l'output di networkctl viene reindirizzato a un cercapersone, puoi evitare ciò aggiungendo il flag –no-pager.

networkctl --no-pager

Puoi anche stampare l'output senza intestazioni di colonna e piè di pagina utilizzando l'opzione --no-legend.

networkctl --no-legend

Per visualizzare il suo messaggio di aiuto, usa il flag -h o controlla la sua pagina man per maggiori informazioni.

networkctl -h
OR
man networkctl 

Troverai utili anche le seguenti guide di rete Linux:

  1. nload: monitora l'utilizzo della larghezza di banda della rete Linux in tempo reale
  2. 10 comandi “IP” utili per configurare le interfacce di rete
  3. 15 comandi "ifconfig" utili per configurare l'interfaccia di rete in Linux
  4. 12 comandi Tcpdump: uno strumento di sniffer di rete

È tutto! In questo articolo, abbiamo spiegato come utilizzare il comando networkctl per visualizzare un riepilogo dei dispositivi di rete collegati a un sistema Linux. Utilizza il modulo di feedback qui sotto per condividere i tuoi pensieri o porre domande.