Prowadzę małą sieć domową i skonfigurowałem mój serwer DHCP, aby zapewniał nazwę domeny ze wszystkimi odpowiedziami. Mój MacBook Air (wersja 10.7.3) umieszcza podaną domenę w ścieżce wyszukiwania DNS, ale nie ustawia odpowiednio domeny lokalnej. Uwaga: rzeczywista nazwa domeny została zastąpiona my.example.com w danych wyjściowych poniżej, a adresy IP / MAC zostały usunięte. Informacje diagnostyczne poniżej. Włączyłem się System Preferences -> Network -> Wi Fi -> Advanced
bez powodzenia, poza statycznym ustawieniem nazwy hosta, co oczywiście nie działa, jeśli wędruję między sieciami. Czy ktoś jeszcze ma jakieś inne sugestie?
Domena wyszukiwania jest poprawnie ustawiona w /etc/resolv.conf:
% cat /etc/resolv.conf
#
# Mac OS X Notice
#
# This file is not used by the host name and address resolution
# or the DNS query routing mechanisms used by most processes on
# this Mac OS X system.#
# This file is automatically generated.
#
search my.example.com
nameserver <DNS IP addr>
nameserver <DNS IPv6 addr>
%
Jednak hostname -f
nie odzwierciedla domeny w FQDN:
% hostname -f
myhost.local
%
Uruchomienie tcpdump
i wymuszenie odnowienia DHCP potwierdza, że opcja 15 jest obecna zarówno w żądaniu DHCP, jak i odpowiedzi, ale najwyraźniej nie jest używana przez OS X poza ustawieniem ścieżki wyszukiwania DNS.
% sudo tcpdump -n -ien0 -vvvvv udp port 67
tcpdump: listening on en0, link-type EN10MB (Ethernet), capture size 65535 bytes
01:13:25.061622 IP (tos 0x0, ttl 255, id 26061, offset 0, flags [none], proto UDP (17), length 328)
0.0.0.0.68 > 255.255.255.255.67: [udp sum ok] BOOTP/DHCP, Request from <my MAC addr>, length 300, xid 0x463f9f78, Flags [none] (0x0000)
Client-Ethernet-Address <my MAC addr>
Vendor-rfc1048 Extensions
Magic Cookie 0x63825363
DHCP-Message Option 53, length 1: Request
Parameter-Request Option 55, length 9:
Subnet-Mask, Default-Gateway, Domain-Name-Server, Domain-Name
Option 119, LDAP, Option 252, Netbios-Name-Server
Netbios-Node
MSZ Option 57, length 2: 1500
Client-ID Option 61, length 9: "myhost"
Requested-IP Option 50, length 4: <my IP addr>
Lease-Time Option 51, length 4: 7776000
Hostname Option 12, length 8: "myhost"
END Option 255, length 0
PAD Option 0, length 0, occurs 8
01:13:25.068967 IP (tos 0x10, ttl 128, id 0, offset 0, flags [none], proto UDP (17), length 328)
<srv IP addr>.67 > <my IP addr>.68: [udp sum ok] BOOTP/DHCP, Reply, length 300, xid 0x463f9f78, Flags [none] (0x0000)
Your-IP <my IP addr>
Client-Ethernet-Address <my MAC addr>
Vendor-rfc1048 Extensions
Magic Cookie 0x63825363
DHCP-Message Option 53, length 1: ACK
Server-ID Option 54, length 4: <srv IP addr>
Lease-Time Option 51, length 4: 86400
Subnet-Mask Option 1, length 4: <subnet mask>
Default-Gateway Option 3, length 4: <my IP addr>
Domain-Name-Server Option 6, length 4: <DNS IP addr>
Domain-Name Option 15, length 13: "my.example.com"
END Option 255, length 0
PAD Option 0, length 0, occurs 11
^C
2 packets captured
1458 packets received by filter
0 packets dropped by kernel
scutil --get HostName
zwraca Nie konfiguruję mojej nazwy hosta, która zwraca „nieustawione”. Jeśli zobaczyszman scutil
, zauważysz, że nazwa komputera, nazwa lokalna (nazwa Bonjour) i nazwa hosta najwyraźniej nie są sobie równe./etc/resolv.conf
nie jest używany. Sprawdź odpowiedź otrzymaną podczas sprawdzaniaman /etc/resolv.conf
.Odpowiedzi:
Nie rozumiem, na czym dokładnie polega twój problem. Może to może ci pomóc.
Jeśli ustawisz opcję wyszukiwania, we własnej konfiguracji (sieć-> zaawansowane-> dns-> szukaj domen) lub przez serwer dhcp. Zasadniczo eliminujesz potrzebę dodawania tej części do FQDN.
Przykład:
następnie,
spróbuje rozwiązać test.foo.com
W twoim przypadku będzie to test.my.example.com
Ponadto, ustawiając swoją nazwę lokalną, możesz zmienić w:
źródło