Come amministratore di rete, probabilmente stai gestendo varie macchine Linux su diverse sottoreti dell’infrastruttura aziendale.
Quando la topologia di rete cambia, potrebbe essere necessario modificare l’indirizzo IP già implementato su alcune macchine.
Inoltre, se si è passati da DHCP a indirizzo IP statico, sarà anche necessario modificare l’indirizzo IP su alcuni dei vostri computer.
Fortunatamente per te, Linux ha diversi modi per cambiare il tuo indirizzo IP, sia che tu voglia che sia dinamico o statico.,
Vedrai come è possibile avere più indirizzi IP per una singola macchina e come è possibile assegnare indirizzi IP alle schede di rete virtuali.
Sommario
Prerequisiti
Prima di cambiare il tuo indirizzo IP, assicurati di dare un’occhiata al tuo indirizzo IP corrente.
Per trovare il tuo indirizzo IP corrente, puoi usare il comando “ip” con l’opzione “a” per l’indirizzo.,
$ ip a
Come si può vedere dallo screenshot, il mio host è dotato di due schede di rete :
- l’indirizzo di loopback (o localhost), che è utilizzato per verificare la connettività di rete del proprio computer;
- la “enp0s3” interfaccia : effetto principale della scheda di rete, la scheda di rete dispone di più indirizzi IP ad esso associato (IPv4 e IPv6) seguito dall’indirizzo IP assegnato.
Nella situazione attuale, il mio computer può essere raggiunto su “192.168.178.31/24” tramite il gateway “192.168.178.1/24”.,
Cambia indirizzo IP usando ifconfig
Nelle distribuzioni moderne, il comando “ifconfig” è stato completamente deprecato e ora si consiglia di usare il comando “ip”.
Tuttavia, dovresti comunque essere in grado di usare “ifconfig” per cambiare il tuo indirizzo IP.
$ which ifconfig/usr/sbin/ifconfig
Per modificare l’indirizzo IP su Linux, utilizzare il comando “ifconfig” seguito dal nome dell’interfaccia di rete e dal nuovo indirizzo IP da modificare sul computer.
Per assegnare la subnet mask, è possibile aggiungere una clausola “netmask” seguita dalla subnet mask o utilizzare direttamente la notazione CIDR.,
$ ifconfig <interface_name> <ip_address> netmask <netmask_address>
Nota : per cambiare il vostro indirizzo IP, è necessario essere un amministratore del computer (parte del gruppo sudo su Debian/Ubuntu o ruota su CentOS/RedHat)
Per esempio, gli indirizzi IP utilizzati nelle sezioni precedenti, se vogliamo cambiare il nostro indirizzo IP (per 192.168.178.,32/24), eseguiremo il seguente comando
$ ifconfig enp0s3 192.168.178.32/24$ ifconfig enp0s3 192.168.178.32 netmask 255.255.255.0
Per verificare che il tuo indirizzo IP sia stato modificato correttamente, puoi eseguire il comando “ifconfig” seguito dal nome della tua scheda di rete.
$ ifconfig <interface_name>
Da DHCP a statico
Quando si modifica manualmente l’indirizzo IP, Linux capisce automaticamente che si desidera passare dall’utilizzo di un server DHCP all’indirizzamento IP statico.,
Questa informazione è materializzata nel comando “ifconfig”: nella prima schermata, puoi vedere che il mio indirizzo IP è stato assegnato con un parametro “dinamico” chiamato anche DHCP.
Questo non è più il caso dopo aver assegnato manualmente l’indirizzo IP.
Si noti che le modifiche non vengono rese permanenti modificando le impostazioni IP con “ifconfig” : vengono modificate solo per la sessione corrente.
Cambia l’indirizzo IP in modo permanente usando ifupdown
Su Linux, cambiare il tuo indirizzo IP usando utilità di rete non significa che la tua configurazione IP verrà salvata al riavvio.,
File di rete su Debian&Ubuntu
Per cambiare il tuo indirizzo IP su Linux, dovrai aggiungere la tua configurazione di rete in “/etc/network / interfaces” o creare questo file se non esiste già.
# Content of /etc/network/interfacesiface eth0 inet staticaddress <ip_address>netmask <network_mask>gateway <gateway_ip>
Ad esempio, supponiamo che tu voglia cambiare il tuo IP in “192.168.178.32” con una subnet mask di “255.255.255.0” e un gateway predefinito di “192.168.178.1”.,
Per cambiare il vostro indirizzo IP per riflettere questi cambiamenti, si potrebbe modificare il contenuto del tuo file interfaces e aggiungere il seguente contenuto
In modo che le modifiche vengano applicate, è necessario riavviare il servizio di networking (gestito da ifupdown)
# For systemd hosts$ sudo systemctl restart networking.service# For pre-systemd hostssudo /etc/init.d/networking restart
Dopo il riavvio del servizio di networking, si dovrebbe essere in grado di vedere il vostro nuovo IP eseguendo il “ifconfig” o “ip” di comando.,
$ ifconfig$ ip address
File di rete su CentOS& Red Hat
Per cambiare il tuo indirizzo IP su Linux, dovrai aggiungere la tua configurazione di rete nella directory “/etc/sysconfig / network-scripts”.
In “/etc/sysconfig / network-scripts”, identificare l’interfaccia di rete da modificare e iniziare a modificarla.,
$ ls -l /etc/sysconfig/network-scripts$ nano <file>
al fine di impostare un IP statico su CentOS o RHEL, si desidera modificare il “BOOTPROTO” parametro “dhcp” “statica” e aggiungere le informazioni di rete come la maschera di rete o il gateway predefinito.
Nelle distribuzioni recenti come CentOS 8 o RHEL 8, è necessario utilizzare l’utilità nmcli affinché le modifiche siano efficaci.,
Tuttavia, se si sta ancora utilizzando il servizio di rete (per distribuzioni come CentOS 7 o RHEL 7), è possibile riavviare il servizio di rete per le modifiche da applicare.
$ nmcli device reapply <interface_name> (on CentOS 8)$ systemctl restart network.service (on CentOS 7/RHEL 7)
Impressionante!
Hai cambiato con successo il tuo indirizzo IP su Linux.
Assicurati di eseguire nuovamente il comando “ip” per verificare che le tue modifiche siano state applicate.
$ ip a$ ifconfig
Cambia indirizzo IP usando Network Manager
Sulle distribuzioni moderne, dotate di systemd, potresti aver incontrato il Network Manager molte volte.,
Il Network Manager è uno strumento all-in-one che espone più strumenti di utilità al fine di modificare le connessioni, dispositivi o impostazioni di connettività (anche wireless) sul vostro host.
Una di queste utility si chiama “nmcli” e questo è ciò che useremo per cambiare il nostro indirizzo IP.
Per modificare l’indirizzo IP, utilizzare “nmcli” nella sezione “dispositivo” e specificare che si desidera “modificare” il “ipv4.indirizzo ” della scheda di rete.,
$ nmcli device modify <interface_name> ipv4.address <ip_address>
Quando si utilizza il comando “modifica dispositivo nmcli”, il Gestore di rete creerà automaticamente un nuovo file di connessione nella cartella /etc/NetworkManager/system-connections.
Affinché le modifiche siano efficaci, è necessario “riapplicare” i parametri alle impostazioni di connessione correnti.,
$ nmcli device reapply <interface_name>
Congratulazioni, hai cambiato con successo il tuo IP usando Network Manager!
Tuttavia, la modifica delle impostazioni utilizzando lo strumento nmcli non renderà le modifiche persistenti su più riavvii.
Modificare l’indirizzo IP in modo permanente utilizzando Network Manager
Affinché le modifiche siano persistenti, è necessario modificare i file di connessione situati in/etc/NetworkManager / system-connections.
Per modificare l’indirizzo IP, modificare il file di configurazione di Network Manager, identificare la riga da modificare e impostare l’indirizzo IP di conseguenza.,
Salvare il file e assicurarsi di riapplicare la configurazione del dispositivo utilizzando il “nmcli” di comando con dispositivo di “riapplicare” opzioni”.
$ nmcli device reapply
Ora che le tue modifiche sono effettive, puoi controllare il tuo indirizzo IP eseguendo i comandi “ifconfig” o “ip”.
Modificare l’indirizzo IP utilizzando l’interfaccia grafica
In alcuni casi, è possibile modificare l’indirizzo IPv4 navigando attraverso le finestre grafiche.,
Nelle distribuzioni moderne, i parametri di rete possono essere gestiti dall’icona “rete” (che si chiama nm-applet) situata nell’angolo in alto a destra dello schermo.
Nelle impostazioni di rete, fare clic sulla “ruota dentata” accanto alla connessione da modificare.
Successivamente, nella sezione IPv4 delle impostazioni di connessione, è possibile impostare il metodo IP su manuale e attribuire l’indirizzo IP statico.,
Per modificare l’indirizzo IP, è sufficiente fare clic su “Applica” e riavviare i servizi di rete utilizzando nmcli.
$ nmcli networking off$ nmcli networking on
Questo è tutto! Hai appena cambiato il tuo indirizzo IP su Linux.
Come viene gestita la rete su Linux
A partire da gennaio 2020, nelle distribuzioni recenti, è possibile gestire diversi strumenti utilizzati dalla distribuzione per configurare la rete.
La maggior parte delle volte, Network Manager e ifupdown gestiscono la rete.,
$ sudo systemctl status NetworkManager$ sudo systemctl status networking
In alcune distribuzioni, “ifupdown” potrebbe non essere installato affatto e le interfacce sono gestite solo dal NetworkManager.
Tuttavia, se i due servizi esistono sul computer, sarà possibile dichiarare le interfacce nel file/etc/network / interfaces senza che NetworkManager interferisca con tali impostazioni.,
Se si desidera che il Network Manager per gestire le interfacce dichiarate nel file interfaces, sarà necessario modificare il “gestito” parametro a true NetworkManager.file di configurazione conf.
Conclusione
In questo tutorial, hai imparato come puoi cambiare correttamente il tuo indirizzo IP su Linux : usando il Network Manager o l’utilità ifupdown.,
Hai anche imparato come la rete è gestita e architettata su Linux e come dovresti configurarla per evitare conflitti di indirizzi IP.
Se sei interessato all’amministrazione del sistema Linux, abbiamo una sezione completa dedicata ad esso sul sito web, quindi assicurati di controllarlo!