Assegnare un indirizzo IP statico usando nmcli


14

Quindi sto cercando di dare a una VM un indirizzo IP statico, questo caso è stato particolarmente testardo.

La macchina virtuale è in esecuzione su un cluster ESXi con un proprio intervallo IP pubblico.

L'ho fatto (sorta) lavorare con un indirizzo IPv4, tranne che sarebbe stato riassegnato ad ogni avvio, ora dopo aver armeggiato con nmcli non riesco ad assegnare alcun indirizzo IPv4 ad esso.

L'interfaccia è ens32e ho cambiato ipv4.addressesin XXX.XXX.120.44/24(voglio che abbia l'indirizzo 120.44), gateway per XXX.XXX.120.1e impostarlo su manuale.

Qualcuno ha qualche idea sul perché questo non funziona? tutte le guide online sono per il servizio di rete precedente non per NetworkManager.


Quindi deve essere gestito dalla rete a tutti i costi?
phk,

1
O è disponibile DHCP? Ciò spingerebbe la complessità sul server DHCP e richiederebbe solo che il nodo utilizzi DHCP.
thrig

Spero non ti dispiaccia, ma ho cambiato il titolo per renderlo più generico.
garethTheRed,

@phk fedora 23 non ti piace abilitare la rete e quindi non puoi utilizzare il vecchio sistema di configurazione
Space Bear

Non hai nmtui?
TheLovelySausage,

Risposte:


25

Provare:

# nmcli con add con-name "static-ens32" ifname ens32 type ethernet ip4 xxx.xxx.120.44/24 gw4 xxx.xxx.120.1
# nmcli con mod "static-ens32" ipv4.dns "xxx.xxx.120.1,8.8.8.8"
# nmcli con up "static-ens32" iface ens32

Quindi, trova le altre connessioni ed eliminale. Per esempio:

# nmcli con show
NAME         UUID                 TYPE           DEVICE
ens32        ff9804db5-........   802-3-ethernet --
static-ens32 a4b59cb4a-........   802-3-ethernet ens32
# nmcli con del ens32

Al riavvio successivo, è necessario raccogliere la static-ens32connessione, poiché è l'unica disponibile.


Sto provando a farlo dal punto di partenza grezzo di una nuova installazione, che richiede una sequenza di comandi leggermente diversa. Sei disposto a mostrare come farlo da zero con una nuova installazione di CentOS 7? Ecco il link: unix.stackexchange.com/questions/349607/…
CodeMed

0

Un singolo indirizzo IPv4 è / 32. / 24 indica una rete, che in questo caso sarebbe XXX.XXX.120. [0-255]. Prova a cambiare la ipv4.addressvoce XXX.XXX.120.44/32e guarda cosa succede. Se non funziona, devo fare la stessa domanda posta nei commenti: NetworkManager è un requisito o possiamo configurare l'indirizzo usando altri mezzi?


nmclivuole l'indirizzo IP con la subnet mask nella notazione CIDR.
garethTheRed,

Ho giocato con la notazione CIDR con / 24/16 e / 32 né ha funzionato.
Space Bear,

0

La modifica di / 32 (single) in / 24 (network) ha risolto il mio problema con ipv4. Indirizzi assegnando intervallo e primo indirizzo IP.

Penso che "manuale" potrebbe essere un problema nel tuo caso. Il manuale può indicare a nm di non gestirlo affatto o di non gestire dhcp. Hai provato "condiviso" e quindi ipv4.addresses anziché ipv4.address1? Oppure, se manuale, ipv4.address1 potrebbe essere corretto invece di ipv4.addresses.

Hai cercato in / var / log / syslog? dnsmasq ha detto nel mio che 32 era troppo piccolo e nmcli ha riportato "troppo piccolo" nell'output dell'errore.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.