DHCP가있는 Debian 시스템에서 Windows 2008 DNS 서버로 호스트 이름 업데이트


9

템플릿에서 시스템을 생성하고 새 호스트 이름으로 할당하는 스크립트를 사용하여 매일 데비안 (lenny) 시스템으로 XenServer를 설치했습니다.

우리 네트워크에는 DHCP 서버로 사용되는 Fortinet 60B 어플라이언스와 DNS 서버로 사용되는 Microsoft Windows 2008 DC가 있습니다. DHCP에서 임대 IP를받을 때 호스트 이름을 DNS 서버로 보내도록 VM 템플릿을 구성하고 싶습니다.

현재 Fortinet은 DC를 IP 임대와 함께 DNS 서버로 할당합니다. 'host-name "my-host-name"'줄을 /etc/dhcp3/dhclient.conf에 추가하려고했지만 DC에서 아무것도 업데이트되지 않습니다.


2
인증되지 않은 업데이트를 허용하도록 Windows DNS 서버를 설정 했습니까?
Zoredache

답변:


2

따라서 기본적으로 클라이언트가 호스트 이름을 DNS 서버로 보내길 원합니까?

이것은 Windows 클라이언트에서 훌륭하게 작동하지만 Linux 시스템의 경우 다른 방법으로 진행합니다. DHCP 서버에 IP 호스트 이름 을 요청하도록 클라이언트를 설정하십시오 . dhclient는 "host-name 요청"옵션을 사용하여 IP 주소와 함께 호스트 이름을 보내도록 DHCP 서버에 요청한 다음 VM의 호스트 이름을 설정합니다.

물론 DNS에서 DHCP 범위의 각 IP 주소에 대한 호스트 이름을 준비해야합니다.

이렇게하면 DNS 캐시 / 전파 지연 문제가 없으며 모든 IP 및 호스트 이름 (DNS 서버)이 중앙에있을 수 있습니다.

어플라이언스의 DHCP 서버가 호스트 이름 전송을 지원하는지는 잘 모르지만 대부분 Linux 클라이언트에서 가장 쉬운 방법이라고 생각합니다.

참고 : 동일한 컴퓨터가 항상 동일한 IP 주소 (예 : mac 주소 사용)를 갖도록 DHCP 서버를 구성한 경우, 항상 동일한 호스트 이름을 가져옵니다. 일부 DHCP 서버에서는 구성 파일의 IP 주소 대신 직접 호스트 이름을 사용할 수 있습니다.


호스트 이름을 인수로 사용하는 스크립트에서 호스트 이름을 설정하기 때문에 이것은 수행되지 않습니다.
Electric Monk

2

템플릿에서 VM을 생성 한 후 부팅 할 때마다 nsupdate를 실행하는 스크립트를 사용했습니다.


1

이것은 내 자신의 질문 과 다소 유사합니다 . dhclient.conf를 참조하는 답변과 최종 답변에 대한 최종 의견을 살펴보십시오.


그래서 기본적으로 dhclient.conf에 'send host-name'을 추가 했습니까? 이것은 나를 위해 작동하지 않았기 때문에
Electric Monk

그게 전부 야 매뉴얼 페이지에는 FQDN이 필요하지만 제 경우에는 Windows 및 Linux DHCP 및 DNS 시스템 모두에서 작동하는 호스트 이름을 보내는 것만으로 나타납니다. 클라이언트의 DHCP 임대가 해제되고 다시 생성 되 자마자 DHCP 서비스에 의해 머신이 DNS에 추가되었습니다.
John Gardeniers

1

Windows DC \ DNS 서버에서 도메인에 가입하지 않은 컴퓨터가 DNS 레코드를 등록하고 업데이트하는 데 필요한 두 가지 사항은 다음과 같습니다.

  1. 보안 및 비보안 동적 DNS 업데이트를 모두 허용하도록 DC \ DNS 서버를 구성하십시오.

  2. host.domain.com에서와 같이 도메인에 가입하지 않은 호스트의 FQDN을 AD \ DNS 이름과 일치하도록 구성하십시오.


1

흠. 이 정확한 구성을 시도하지 마십시오. Linux 클라이언트에서 Windows DHCP 서버로 작업했지만 DHCP 서버에서 업데이트를 수행합니다. Fortinet 상자가 같은 일인지 확실하지 않습니다.

클라이언트가 DNS 서버와 직접 통신하도록 할 수 있습니다. 같은 :

send fqdn.server-update off;
send fqdn.encoded on;
send fqdn.fqdn "hostname.example.com.";  

/etc/dhcp3/dhclient.conf에 있습니다. man dhclient.conf자세한 정보를 확인하십시오 . 적어도 설정에서 send fqdn.fqdn작동 하도록 설정 해야했습니다.

DNS 영역에 대한 안전하지 않은 업데이트도 활성화해야합니다.


1

이 노골적으로 명백한 생각하지만, 당신의 자신의 요청 지시문을 지정해야 할 수 많은 dhclient.conf있는 호스트 이름 또는 도메인 이름을 요구하지 않습니다 . 내 배포판의 기본값은 다음과 같습니다.

request subnet-mask, broadcast-address, time-offset, routers,
        domain-name, domain-name-servers, host-name,
        netbios-name-servers, netbios-scope, interface-mtu;

이것은 send host-name ...지시문 을 무효화하는 서버에서 호스트 및 도메인 이름을 모두 요청합니다 . 내 요청 및 send-host 지시문은 다음과 같습니다.

send host-name "leaf.node.domain.com";
request subnet-mask, broadcast-address, time-offset, routers,
        domain-name-servers,
        netbios-name-servers, netbios-scope, interface-mtu;
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.