Di tanto in tanto ho riscontrato questo identico problema in CentOS quando ho clonato macchine virtuali (VM). Il problema deriva dalla VM originale che ottiene una voce inserita in questo file per configurare il dispositivo Ethernet eth0
.
File .rules di esempio
# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.
# net device () (custom name provided by external tool)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="54:52:00:ff:ff:dd", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
Il problema si risolve bruscamente quando si clona la prima macchina virtuale, questo crea un nuovo indirizzo MAC, sotto alcune tecnologie di virtualizzazione come KVM per uno. Questo nuovo indirizzo MAC viene rilevato automaticamente all'avvio della macchina virtuale clonata e visualizzato come un nuovo dispositivo Ethernet /lib/udev/write_net_rules
, quindi viene aggiunta una seconda voce al file precedente.
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="54:52:00:ff:ff:de", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
Di solito apro questo file, 70-persistent-net.rules
in un editor e semplicemente consolido le linee in modo che il nuovo indirizzo MAC sia assegnato al eth0
dispositivo e riavvio.
...
# net device () (custom name provided by external tool)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="54:52:00:ff:ff:de", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
EDIT # 1
L'OP ha dato seguito alla domanda con le seguenti nuove informazioni.
Articolo n. 1: Hmmm. Nel mio caso non funzionerà perché sto eseguendo un software con una licenza flessibile che si collega all'indirizzo MAC. Gli indirizzi in costante cambiamento rendono inutile il software.
@Zobal - Conosco Flex. Poiché si tratta di una macchina virtuale, è possibile modificare il MAC della macchina virtuale (nel software della macchina virtuale - VirtualBox, KVM, ecc.).
NOTA: Flex è una tecnologia di licenza fornita da Flexera . Si chiamavano software GlobeTrotter. Questa tecnologia consente al software di essere collegato a un host fisico o di avere le licenze gestite da un server centrale come "token" in cui i client possono controllare i token per un periodo di tempo. Le licenze sono in genere legate a un host e questo host viene generalmente identificato da un numero univoco che è possibile trovare utilizzando il comando hostid
.
Per esempio:
$ hostid
a8c0c801
Articolo n. 2: Nel mio caso non è una macchina virtuale. Ho clonato un sistema fisico su un altro sistema fisico.
A cui ho risposto: Bene, l'unica opzione è cambiare l'indirizzo MAC del nuovo sistema con lo stesso del MAC dell'altro sistema. Renditi conto che questi 2 sistemi non possono esistere sulla stessa rete, altrimenti entreranno in conflitto tra loro. Anche le licenze Flex in genere non usano il MAC, usano il numero identificabile usando il comando hostid
!
Riferimenti