ISC DHCP 다른 클라이언트 OS를 위한 다른 DNS 서버

ISC DHCP 다른 클라이언트 OS를 위한 다른 DNS 서버

isc-dhcp네트워크의 다른 클라이언트에 다른 DNS 서버 주소를 보낼 수 있는 방식으로 구성할 수 있습니까 ?

네트워크에 Mac, Linux 및 Windows가 설치된 PC가 있다고 가정해 보겠습니다. 내 기본 DNS 서버는 bind9Linux에 있지만 DNS 역할도 하는 Windows 서버도 있습니다. 이제 isc-dhcpWindows 서버에 대한 DNS 연결을 Windows 클라이언트에 보내고 네트워크의 다른 모든 컴퓨터는 dhcp/bind9에서 DNS 설정을 가져옵니다 .

그게 가능합니까?

답변1

muru에서 얻은 답변에 따르면 다음 해결 방법을 찾았습니다.

클라이언트로부터 정보를 찾으려면 vender-class-identifier다음에서 이를 맨 위에 놓아야 합니다 dhcpd.conf.

set vendor-string = option vendor-class-identifier;

dhcp 서비스를 다시 시작하고 클라이언트에서 dhcp 서버에 대한 새 연결을 사용하면 cat /var/lib/dhcp/dhcpd.leases어떤 클래스인지 확인할 수 있습니다. 예를 들어 Windows XP에는 다음이 있습니다."MSFT 5.0"

이제 서브넷 블록 내에서 다음과 같이 클라이언트에 대한 DNS 서버를 명확히 할 수 있습니다.

# DNS for Windows XP
if substring (option vendor-class-identifier, 0, 9) = "MSFT 5.0"
{
    option domain-name-servers 192.168.0.1;
}
# DNS for all others
else
{
    option domain-name-servers 192.168.2.254, 8.8.8.8;
}

변수가 필요한지 잘 모르겠습니다 0, 9. 어쩌면 그렇지 않을 수도 있습니다.

관련 정보