DHCP 서버에서 IP를 얻지만 데비안에서는 DNS 서버를 정적으로 설정하십시오.

DHCP 서버에서 IP를 얻지만 데비안에서는 DNS 서버를 정적으로 설정하십시오.

나는 DHCP 서버로부터 IP를 얻는 데비안 시스템을 가지고 있고 그 시스템에서 실행되는 자체 바인드9 서버를 갖고 있습니다 localhost. 시스템이 DHCP 할당 DNS 서버와 일치하도록 파일을 업데이트하기 nameserver 127.0.0.1때문에 부팅할 때마다 작성해야 합니다 . 내 네트워크의 DHCP 서버에서 업데이트된 DNS 서버 정보를 가져오는 것을 /etc/resolv.conf방지하기 위해 resolv.conf다음을 작성해 보았습니다 /etc/network/interfaces.

iface eth0 inet dhcp
    dns-nameservers 127.0.0.1

그러나 이는 시스템에 고정 IP가 있는 경우에만 작동합니다.

/etc/resolv.conf내 시스템에 고정 IP를 제공하지 않고 DHCP 서버가 할당한 DNS 서버에 의해 재정의되는 것을 방지하려면 어떻게 해야 합니까 ?

저는 dhclient를 사용합니다.

답변1

을 사용하고 있다고 확신하는 경우 다음을 dhclient수행할 수 있습니다.

1. dhclient설정 변경(권장)

파일을 편집하고 다음 줄을 /etc/dhcp/dhclient.conf검색하여 삭제합니다 .domain-name-servers,

request subnet-mask, broadcast-address, time-offset, routers,
    domain-name, domain-name-servers, domain-search, host-name,
    dhcp6.name-servers, dhcp6.domain-search, dhcp6.fqdn, dhcp6.sntp-servers,
    netbios-name-servers, netbios-scope, interface-mtu,
    rfc3442-classless-static-routes, ntp-servers;

2. /etc/resolv.conf덮어쓰기 방지

파일을 다시 덮어쓰지 않도록 다음 명령을 root또는 를 사용하여 실행하십시오.sudo

chattr +i /etc/resolv.conf

이것은 다소 중복된 질문입니다.데비안에서 정적 DNS를 설정할 수 없습니다. 하지만 댓글을 달 수 없어서 이 답변을 추가했습니다.

답변2

다음을 추가할 수 있습니다.

supersede domain-name-servers 127.0.0.1;

/etc/dhcp/dhclient.conf에

답변3

패키지를 제거 resolvconf하면 자신의 패키지를 /etc/resolv.conf덮어쓰지 않습니다.

답변4

네트워크 파일 /etc/network/interfaces.conf를 편집하고 PEERDNS="no"를 추가합니다. 이것은 Fedora에서 작동합니다. 바라건대 이것이 데비안에서 작동할 것입니다. chattr을 사용할 수도 있습니다. 누구도 파일을 수정할 수 없도록 합니다.

관련 정보