Skonfigurowałem system Ubuntu i skonfigurowałem go poprawnie, w tym definiując eth0
w /etc/network/interfaces
. Następnie zobrazowałem ten system i sklonowałem go na nowym systemie.
Kiedy uruchomiłem system po raz pierwszy, wszystko było w porządku, ale kilka restartów później przywitał mnie limit czasu konfiguracji sieci. Kiedy się zalogowałem, okazało się, że eth0
nie jest dostępny.
Moje wstępne badania pozwoliły mi spróbować ifdown -a
i ifup -a
zrobiłem to kilka razy bez widocznego efektu.
Badania ostatecznie wskazały mi /etc/udev/rules.d/70-persistent-net.rules
, gdzie odkryłem, że adres MAC nowego systemu stworzył eth1. Dobry pomysł, ale nie to, co chciałem zrobić.
Kiedy właśnie się uruchomiłem, odkryłem, że /etc/udev/rules.d/70-persistent-net.rules
ma teraz sześć wpisów dla sześciu różnych adresów HW, co wydaje mi się dziwne, ponieważ istnieje tylko jeden interfejs.
Moje pytanie brzmi: czy moje użycie w ifup -a
jakiś sposób stworzyło nowe adresy MAC do utworzenia? Jeśli nie, czy są jakieś przemyślenia na temat tego, jak to się stało? Zmieniłem /etc/udev/rules.d/70-persistent-net.rules
nazwę obecnego adresu HW eth0
i wydaje się, że działa, ale czy mogę być pewien, że adres nie zmieni się ponownie po ponownym uruchomieniu?
źródło
Odpowiedzi:
Od czasu do czasu napotykałem dokładnie ten sam problem w CentOS, kiedy klonowałem maszyny wirtualne (VM). Problem wynika z faktu, że oryginalna maszyna wirtualna otrzymała wpis do tego pliku, aby skonfigurować urządzenie Ethernet
eth0
.Przykładowy plik .rules
Problem powoduje brzydką głowę podczas klonowania pierwszej maszyny wirtualnej, co powoduje utworzenie nowego adresu MAC, w przypadku niektórych technologii wirtualizacji, takich jak KVM. Ten nowy adres MAC jest automatycznie wykrywany, gdy sklonowana maszyna wirtualna jest uruchamiana i przeglądana przez nowe urządzenie Ethernet
/lib/udev/write_net_rules
, dlatego do powyższego pliku dodawany jest drugi wpis.Zwykle otwieram ten plik
70-persistent-net.rules
w edytorze i po prostu konsoliduję wiersze, aby nowy adres MAC został przypisany doeth0
urządzenia i uruchomił się ponownie.EDYCJA 1
OP odpowiedział na pytanie, podając następujące nowe informacje.
@Zobal - znam Flex. Ponieważ jest to VM, możesz zmienić jej MAC (w oprogramowaniu VM - VirtualBox, KVM itp.).
UWAGA: Flex to technologia licencjonowania oferowana przez Flexera . Nazywano je GlobeTrotter Software. Ta technologia pozwala na powiązanie oprogramowania z hostem fizycznym lub zarządzanie licencjami z serwera centralnego jako „tokenami”, w których klienci mogą przez pewien czas sprawdzać tokeny. Licencje są zazwyczaj powiązane z hostem, a ten host jest zazwyczaj identyfikowany przez unikalny numer, który można znaleźć za pomocą polecenia
hostid
.Na przykład:
Na co odpowiedziałem: Cóż, wtedy jedyną opcją jest zmiana adresu MAC nowego systemu na taki sam, jak adres MAC drugiego systemu. Uświadom sobie, że te 2 systemy nie mogą istnieć w tej samej sieci, w przeciwnym razie będą ze sobą sprzeczne. Również licencjonowanie Flex zazwyczaj nie korzysta z MAC, używają numeru, który można zidentyfikować za pomocą polecenia
hostid
!Bibliografia
źródło
hostid
!hostid jest tak unikalny jak adres IP twojego serwera.
W twoim przykładzie hostid to a8c0c801, czy adres IP twojego serwera to 192.168.1.200?
A8C0 C801 -> C0A8 01C8
C0: 192
A8: 168
01: 1
C8: 200
źródło