Come aggiungere un secondo indirizzo IP / Alias sull’interfaccia di rete in CentOS 7

Questa guida vi mostrerà come aggiungere un secondo indirizzo IP  per l’interfaccia di rete esistente con CentOS 7.

I metodi sono diversi rispetto a CentOS 6, quindi non ci può essere confusione, se si sta cercando questo su un CentOS 7.

In primo luogo, stabilire se le interfacce di rete è sotto il controllo di Network Managera.

Se questo è il caso, ti consigliamo di continuare a utilizzare il Network Manager per gestire le interfacce e gli alias.

Se non è sotto controllo di Network Manager, si può tranquillamente modificare le configurazioni a mano.

Visualizzare il tuo indirizzo IP

Nella versione di CentOS6, si utilizzava ifconfig per vedere tutti gli indirizzi IP.

In CentOS 7  per vedere tutti gli indirizzi IP si utilizza l’ip tool.

$ ip a | grep 'inet '
    inet 127.0.0.1/8 scope host lo
    inet 192.168.2.15/24 brd 192.168.2.255 scope global dynamic eth0
    inet 172.16.0.3/24 brd 172.16.0.255 scope global dynamic eth1

Questa sintassi è più in linea con la maggior parte dei router/switch, in cui è possibile anche fare un grep per inet e inet6 relativo ad IPv4 e IPv6.

$ ip a | grep 'inet6 '
    inet6 ::1/128 scope host
    inet6 fe80::a00:27ff:fe19:cd16/64 scope link
    inet6 fe80::a00:27ff:fefd:6f54/64 scope link

Usare Network Manager

Controlla se la tua interfaccia a cui vuoi aggiungere un alias utilizza Network Manager.

$ grep 'NM_CONTROLLED' /etc/sysconfig/network-scripts/ifcfg-ens160
NM_CONTROLLED="yes"

In caso affermativo, puoi procedere con le configurazioni successive utilizzando lo strumento Network Manager.

Potresti essere abituato ad aggiungere un nuovo file network-scripts in /etc/sysconfig/network-scripts/, ma scoprirai che non funziona in RHEL / CentOS 7 come ti aspetteresti se viene utilizzato Network Manager . Ecco come sarebbe una configurazione in CentOS 6:

$ cat ifcfg-ens160:0
NAME="ens160:0"
ONBOOT="yes"
BOOTPROTO="static"
IPADDR="192.168.10.5"
NETMASK="255.255.255.0"

Dopo un ricaricamento della rete, l’indirizzo IP principale verrà rimosso dal server e sarà presente solo l’indirizzo IP dell’interfaccia alias. Questo non è buono. Questo è il Network Manager che interpreta erroneamente i tuoi file di configurazione, sovrasc

Il modo più semplice/pulito per aggiungere un nuovo indirizzo IP a un’interfaccia esistente in CentOS 7 è utilizzare lo strumento nmtui (interfaccia utente di testo per il controllo di NetworkManager).

$ nmtui

Una volta che nmtui è aperto, vai a “Edit a connection” e seleziona l’interfaccia su cui vuoi aggiungere un alias.

Fai clic su <Edit…> e scorri fino ad Aggiungi per aggiungere indirizzi IP aggiuntivi, spostandoti con i tasti freccia o il tasto tab.

Salva le configurazioni e verrà aggiunto l’IP aggiuntivo.

Se controlli le configurazioni di testo che sono state create in /etc/sysconfig/network-scripts/, puoi vedere come nmtui ha aggiunto l’alias.

$ cat /etc/sysconfig/network-scripts/ifcfg-ens160
...
# Alias on the interface
IPADDR1="192.168.0.5"
PREFIX1="24"

Se vuoi, puoi modificare il file di testo, ma trovo che usare nmtui sia molto più semplice.

Configurazione Manuale  Interface Alias

Usalo solo se la tua interfaccia non è controllata da Network Manager.

$ grep 'NM_CONTROLLED' /etc/sysconfig/network-scripts/ifcfg-ens160
NM_CONTROLLED="no"

Se Network Manager non viene utilizzato, puoi utilizzare gli alias vecchio stile a cui sei abituato da CentOS 5/6.

$ cat ifcfg-ens160:0
NM_CONTROLLED="no"
DEVICE="ens160:0"
ONBOOT="yes"
BOOTPROTO="static"
IPADDR="192.168.10.5"
NETMASK="255.255.255.0"

Apri la tua interfaccia alias e sei a posto.

$ ifup ens160:0

Non usarlo se Network Manager ha il controllo.

Aaggiunta di un indirizzo IP temporaneo

Vuoi aggiungere un indirizzo IP solo per un po’? Puoi aggiungerne uno utilizzando il comando ip.

Dura solo fino al riavvio del server o al riavvio del servizio di rete, dopodiché l’IP è sparito dall’interfaccia.

$ ip a add 192.168.1.5/24 dev eth0