Direttive NMCLI per gestire la rete in RockyLinux 9 e AlmaLinux 9

In precedenza in RockyLinux 8 e AlmaLinux 8, aggiungevi i file ifcfg per configurare gli adattatori e anche per configurare le route statiche persistenti. In RockyLinux 9 e AlmaLinux 9, il modo consigliato per gestire la rete è utilizzare lo strumento da riga di comando NMCLI incorporato in Linux. Tuttavia, è ancora possibile utilizzare i file ifcfg, anche se non è consigliato. NetworkManager ora dà la priorità ai file chiave. Quando crei o gestisci profili di connessione. A questi profili verrà data la priorità sui file ifcfg. Poiché la maggior parte dei server VPS NVMe viene fornita automaticamente, si consiglia vivamente di utilizzare NMCLI per gestire la rete del server.

Nozioni di base NMCLI

Questi comandi NMCLI di Linux mostrano lo stato attuale della rete e come aggiungere profili di connessione di rete.

Comando NMCLIDescrizione
nmcli con showElenca tutte le connessioni sul server.
nmcli con show PublicElenca le impostazioni correnti per la connessione Pubblica
nmcli dev statusMostra lo stato di NetworkManager e delle connessioni.
nmcli con add con-name Public ..Aggiungere una nuova connessione denominata Pubblica.
nmcli con mod name ..Modificare il nome della connessione.
nmcli con reloadChiedere a NetworkManager di ricaricare i file di configurazione.
nmcli con up PublicAttiva una connessione denominata Pubblica
nmcli dev dis devDisattivare e disconnettere la connessione corrente sull’interfaccia di rete dev
nmcli con del nameElimina il nome della connessione e il suo file di configurazione

Esempio: NMCLI mostra adattatori e stato

nmcli dev status

In questo esempio, possiamo vedere che il nostro RockyLinux 9 VPS ha due connessioni denominate eth0 ed eth1. Entrambe queste connessioni sono attive.

DEVICE  TYPE      STATE                   CONNECTION
eth0    ethernet  connected               System eth0
eth1    ethernet  connected               System eth1
lo      loopback  connected (externally)  lo

Esempio: mostra i dettagli della connessione NMCLI

nmcli con show

In questo esempio, possiamo vedere le due connessioni. Nota come nmcli ha assegnato un UUID alle connessioni.

Configurare percorsi statici utilizzando MNCLI

In precedenza, per configurare una route statica in CentOS 7, RockyLinux 8 e AlmaLinux 8, si aggiungeva un file route-eth0 al file /etc/sysconfig/network-scripts. È ancora possibile farlo, così come è ancora possibile aggiungere file ifcfg-eth per configurare la rete. Tuttavia, come accennato in precedenza, se si fa ciò, queste connessioni avranno una priorità inferiore rispetto alle connessioni configurate tramite nmcli. Pertanto, per configurare una route statica su RockyLinux 9 e AlmaLinux 9, utilizzare nmcli.

Configurare la rotta statica per 10.210.250.5

In questo esempio, vogliamo instradare tutto il traffico per l’indirizzo IP 10.210.250.5 tramite il gateway 10.210.250.5.

nmcli connection modify eth1 +ipv4.routes "10.210.250.0/24 10.210.250.1"

Ma ricorda che puoi ancora configurare una route statica in RockyLinux 9 o AlmaLinux 9 nel vecchio modo creando un file route-eth1.

nano /etc/sysconfig/network-scripts/route-eth1
# Configure static route for 10.210.250.0/24 private network

10.210.250.0/24 dev eth1
default via 10.210.250.1 dev eth1

Utilizzo del comando nmcli

Utilizzando il comando nmcli, possiamo eseguire varie attività, come controllare le connessioni di rete, crearle, modificarle o eliminarle quando e come richiesto. Possiamo eseguire il nmclicomando:

nmcli

L’output visualizza gli indirizzi IPv4 e IPv6 di tutti gli indirizzi IP del server DNS dei dispositivi di rete disponibili.

Controllare lo stato del dispositivo di rete

Possiamo anche controllare lo stato del dispositivo di rete utilizzando il seguente comando:

nmcli dev status

In questo output, possiamo vedere due dispositivi di rete, enp0s3 e lo. Viene anche visualizzato lo stato di entrambi gli adattatori di rete. I parametri, dev status, vengono utilizzati per visualizzare lo stato del dispositivo di rete.

Elenco di tutte le connessioni

Andiamo avanti ed elenchiamo tutte le connessioni con il seguente comando:

nmcli con show

Questo output mostra una singola connessione attivata tramite il dispositivo di rete enp0s3.

Possiamo ottenere lo stesso output con il seguente output:

nmcli connection

Otteniamo lo stesso output del comando eseguito in precedenza.

Possiamo anche usare il seguente comando per ottenere lo stesso output:

nmcli connection show --active

L’output è lo stesso della connessione nmcli e dei comandi nmcli con show.

Mostra informazioni sul dispositivo

Possiamo anche mostrare le informazioni del dispositivo, come il nome della connessione di rete. Per farlo, esegui il seguente comando:

nmcli device show

L’output visualizza numerose informazioni, tra cui il nome della connessione di rete, l’indirizzo hardware, il gateway e i percorsi associati al dispositivo.

Controllare lo stato di NetworkManager

Possiamo controllare se NetworkManager è in esecuzione o meno. Per farlo, possiamo eseguire il seguente comando:

nmcli -t -f all general

L’output controlla se NetworkManager è in esecuzione o meno. Il parametro -t è utilizzato per un output breve. Il parametro -f definisce il nome del campo. Poiché abbiamo menzionato all, visualizza tutti gli output di tutti i campi.

Visualizzazione dei valori di un campo specifico

Possiamo anche restringere l’output a un campo specifico. Diciamo che vogliamo vedere se NetworkManager è in esecuzione o meno. Per farlo, dobbiamo eseguire il seguente comando:

nmcli -t -f running general

Invece di usare tutti gli argomenti, li sostituiamo con running. Nota che questa volta viene visualizzato solo un output. Vediamo ora lo stato della connessione di NetworkManager. Per farlo, dobbiamo usare il parametro state insieme a -t-f. Esegui il seguente comando:

nmcli -t -f state general

Questa volta l’output visualizza “connesso”.

Attiva la connessione di rete

Cerchiamo ora lo stato dell’interfaccia di rete. Abbiamo già utilizzato il seguente comando:

nmcli dev status

Dobbiamo conoscere il nome della connessione mostrato nell’output come Wired connection 1. È importante notare che potremmo avere nomi di connessione diversi in ambienti diversi.

Utilizzeremo il nome della connessione per attivarla con il seguente comando:

nmcli -p con up id "Wired connection 1"

La connessione è ora attivata correttamente.

Disconnettere e riattivare l’interfaccia di rete

Ora disconnetteremo l’interfaccia di rete. Per farlo, dobbiamo usare il seguente comando:

nmcli dev disconnect enp0s3

La connessione è stata interrotta correttamente.

Se ripetiamo questo comando, otterremo un errore che indica che il dispositivo non è attivo. Possiamo attivare l’interfaccia di rete in due modi diversi. O la proprietà autoconnect dell’interfaccia di rete è impostata su TRUE, oppure l’utente la attiva manualmente con il parametro connect. La attiveremo manualmente con il seguente comando:

Crea una connessione Ethernet

Creiamo ora una nuova connessione Ethernet. Aggiungeremo e assegneremo un indirizzo IP statico. Per fare ciò, dobbiamo eseguire il seguente comando:

nmcli con add con-name eth0 type ethernet ifname eth0 ipv4.method manual ipv4.address 192.168.0.10

La connessione eth0 è stata aggiunta correttamente.

Elimina la connessione di rete

Andiamo avanti ed eliminiamo questa connessione che abbiamo appena aggiunto. Per farlo, dobbiamo eseguire il seguente comando:

nmcli con del "eth1"

La connessione è stata eliminata.

Ricarica le connessioni di rete

Le connessioni di rete vengono salvate nei file. Per impostazione predefinita, questi file non sono monitorati da NetworkManager. Se modifichiamo uno qualsiasi di questi file, le modifiche non vengono applicate immediatamente. Dobbiamo ricaricare i file con il seguente comando:

nmcli con reload

I file sono ora ricaricati. Nota che se utilizziamo un account utente normale, avremo l’errore “accesso negato”. Tuttavia, possiamo usare sudo per eseguire lo stesso comando. Dopo aver eseguito il comando, non si verifica alcun errore, il che significa che il comando è stato eseguito correttamente.

Utilizzo del terminale nmcli ed esecuzione delle configurazioni

Il comando nmcli può anche funzionare come terminale di comando per eseguire comandi. Dobbiamo invocarlo con il nome della connessione. Per scopi di test, possiamo tornare indietro ed eseguire questo comando per creare una nuova connessione:

nmcli con add con-name eth0 type ethernet ifname eth0 ipv4.method manual ipv4.address 192.168.0.10

La connessione eth0 è stata aggiunta correttamente. Ora modifichiamola usando il seguente comando:

nmcli con edit eth0

Viene visualizzato il prompt nmcli. Eseguiremo vari comandi per lavorare con l’ interfaccia eth0.

Per prima cosa, visualizziamo l’indirizzo IP che avevamo assegnato all’interfaccia eth0. Eseguiamo il seguente comando al prompt nmcli:

print ipv4.address

Viene visualizzato l’output del comando. Possiamo vedere l’indirizzo IP che avevamo assegnato in precedenza.

Possiamo verificare la connessione con il comando verify.

verify

L’output visualizza Verifica connessione: OK.

Possiamo rimuovere l’indirizzo IP dall’interfaccia eth0. Per farlo, dobbiamo eseguire il seguente comando:

remove ipv4.address "192.168.0.10/24"

Non viene generato alcun output, il che significa che il comando è stato eseguito correttamente. Supponendo che non abbiamo bisogno di apportare altre modifiche, dobbiamo salvare la configurazione. Dobbiamo eseguire il seguente comando:

save

L’output mostra che l’ interfaccia eth0 è stata aggiornata con successo. Ora possiamo uscire dal prompt nmcli usando il comando quit.

Autore

Classe Novanta3, Fondatore di TrgtKLS. Appassionato in Sec IT & Tech. Expert per l'amministrazione web server e supporto in Back-&, ottimizzazione e manutenzione di esso. • Metà Free e Metà Freelancer • mail@trgtkls.org

Articoli correlati

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

close