W jaki sposób mój serwer DHCP rozpoznaje nazwę hosta mojego komputera, skoro nie zdefiniowałem jej w pliku dhclient.conf?

12

Próbuję rozwiązać niektóre funky problemy DNS związane z DHCP w naszej sieci (podejrzewam, że w tej chwili działa więcej niż jeden serwer DHCP) i próbując to rozgryźć, zauważyłem coś dziwnego z nowym serwerem Ustawiać.

Serwer, o którym mowa, to maszyna wirtualna Xen z systemem Ubuntu 9.10 Server. Fizyczny serwer Xen jest również w naszej sieci, a kiedy po raz pierwszy uruchomiłem maszynę wirtualną w Xen (zaimportowałem ją z lokalnej maszyny wirtualnej Virtualbox działającej na moim komputerze, gdzie działała ona w innej sieci), otrzymała Dzierżawa DHCP z naszej sieci biurowej i wszystko było dobrze.

Sprawdziłem dhclient.eth0.leasesplik, aby zobaczyć, co zostało skonfigurowane, i zobaczyłem, że stara dzierżawa DHCP z poprzedniej sieci, na której komputer był nadal, jak również nowa dzierżawa DHCP dla sieci biurowej, z którą jest obecnie połączona. Od razu zauważyłem dwie rzeczy:

  1. Stare informacje o dzierżawie DHCP z poprzedniej sieci nie mają options host-namelinii, co mam na myśli, że oryginalna wersja maszyny wirtualnej VirtualBox nie wysyłała tej opcji do serwera DHCP. Czy to oznacza, że ​​stary serwer DHCP nie obsługiwał opcji nazwy hosta DHCP? W tym czasie korzystał z wewnętrznego serwera DHCP VirualBox ...

  2. Nowe informacje dzierżawy DHCP nie mają options host-namelinii, który zawiera prawidłowe, aktualną nazwę hosta dla serwera ( „Fozzie”). Jeśli dobrze rozumiem, oznacza to, że serwer wysłał swoją nazwę hosta do serwera DHCP w naszej sieci.

Jest wiele rzeczy, których nie rozumiem w tym wszystkim.

Po pierwsze , dhclient.confw żadnym momencie nie zmieniłem serwera; używa domyślnej konfiguracji. W rzeczywistości zawiera następujący wiersz dosłownie:

send host-name "<hostname>"

Moje pierwsze pytanie brzmi: skąd, do cholery, wiedział, że należy wysłać prawdziwą nazwę hosta serwera, jeśli konfiguracja nie jest skonfigurowana tak, aby wysyłać go w pierwszej kolejności?

Po drugie , dlaczego pierwsza dzierżawa DHCP (dla starej sieci) nie obejmowała option host-name, ale druga dzierżawa DHCP (w nowej sieci) ją uwzględniła, jeśli nie dotknąłem żadnego z plików konfiguracyjnych?

Wszystko, co zrobiłem, to wyeksportować oryginalną maszynę VirtualBox jako OVF, a następnie zaimportować ją do XenServer, więc w jaki sposób magicznie skonfigurował moją nazwę hosta za pośrednictwem DHCP, jeśli nie jest skonfigurowany z rzeczywistą nazwą hosta w dhclient.conf?

Po trzecie : po uruchomieniu hostnameserwer powraca fozzie.our.domain, ale dhclient.eth0.leasesmówi, że opcja nazwy hosta została ustawiona na fozzie(brak domeny). Skąd wiedział, jak usunąć domenę?

Mike Spross
źródło

Odpowiedzi:

11

OK, po długim przeglądaniu Internetu i próbowaniu czytania manstron, w większości zorientowałem się, co się dzieje:

[H] o cholera, czy wiedział, że należy wysłać prawdziwą nazwę hosta serwera, jeśli konfiguracja nie jest skonfigurowana do wysyłania go w pierwszej kolejności?

Najwyraźniej, send host-name "<hostname>"a dokładniej <hostname>, ma szczególne znaczenie dla Ubuntu. Mówi dhcliento wysłaniu bieżącej nazwy hosta urządzenia na serwer DHCP. Zauważ, że <HOSTNAME>wielkość liter ma znaczenie (tzn. Jeśli wpiszesz , dhclient wyśle ​​dosłowny tekst <HOSTNAME>na serwer DHCP). Jak informowaliśmy tu i tutaj , działa to na Ubuntu Feisty i nowszych, będąc częścią łatki (ironicznie) naprawiającej problem z dhclientdomyślnym nie wysyłaniem nazwy hosta maszyny.

[C] czy pierwsza dzierżawa DHCP (dla starej sieci) nie zawierała opcji nazwa-hosta, ale druga dzierżawa DHCP (w nowej sieci) ją uwzględniła, jeśli nie dotknąłem żadnego z plików konfiguracyjnych?

Wydaje się, że dzieje się tak, ponieważ nie wszystkie serwery DHCP będą ponownie wyświetlać nazwę hosta klientowi. Wczoraj nadal używaliśmy opartego na Linuksie routera ClarkConnect jako naszego serwera DHCP, który powtarzał nazwę hosta z powrotem do każdego klienta. Dzisiaj wyłączyliśmy DHCP na tym serwerze i przełączyliśmy się na używanie wbudowanego serwera DHCP na naszym podstawowym kontrolerze domeny. Nasze dzierżawy DHCP od PDC również nie obejmują option host-name, ale wydaje się, że nie ma to wpływu na nic. Maszyny są aktualizowane w DNS i wszystkie mogą się znaleźć według nazwy hosta.

Kiedy uruchamiam hostname, serwer powraca fozzie.our.domain, ale dhclient.eth0.leasesmówi, że opcja nazwy hosta została ustawiona na fozzie(brak domeny). Skąd wiedział, jak usunąć domenę?

To nie do końca rozumiem zawiłości DHCP. Nasz serwer DHCP został skonfigurowany do skonfigurowania wszystkich naszych klientów w naszej domenie. Domyślam się, że serwer DHCP był wystarczająco inteligentny, aby usunąć część nazwy domeny z nazwy hosta wysłanej przez klienta.

Czy ktoś ma jakieś poprawki lub wyjaśnienia, aby dodać do tej odpowiedzi? Nadal wydaje się nieco „falisty”, więc nie zaakceptuję go takim, jaki jest.

Mike Spross
źródło