CentOS에서 dhclient가 만든 resolv.conf에 추가 검색 도메인을 추가하는 방법


35

CentOS 가상 머신 부팅시 DHCP를 사용하여 IP 주소를 얻습니다. 또한 resolv.conf를 DHCP 서버가 제공 한 DNS 설정으로 덮어 씁니다. DHCP 서버는 검색 도메인을 제공하지 않으므로 dhclient가 검색 도메인을 작성할 때 검색 도메인 목록에 넣도록하고 싶습니다. 이를 위해 dhclient를 어떻게 구성 할 수 있습니까?

답변:


32

그 중 어느 것도 효과가 없었지만 마지막 것이 가장 가깝습니다. Red Hat 6 의 경우 위의 예에서 DOMAINSEARCH같이 대신 사용 하고 파일 위치가 다릅니다.

파일을 수정했습니다 /etc/sysconfig/network-scripts/ifcfg-eth0

그리고 바뀌었다

DOMAIN=domain.com

DOMAIN="domain.com sub.domain.com"

그리고 그것은 모두 효과가있었습니다.


3
당신은 모두를 사용할 수 있어야 DOMAIN하고 SEARCH github.com/mcr/isc-dhcp/blob/master/common/resolv.c#L68
라덱 시므 코

내 resolve.conf가 dhclient가 아닌 NetworkManager에 의해 생성되었지만 DOMAIN을 설정하는이 기술은 CentOS 6.5에서도 효과적이었습니다. 생성 된 resolve.conf 파일은 내 항목을 DHCP 서버의 항목과 결합했습니다.
PolyTekPatrick 오전

11

또한 다음과 같이 /etc/dhcp3/dhclient.conf에 문자열을 추가 할 수 있습니다

prepend domain-search "domain1.com", "domain2.com";

이 방법은 Debian Lenny 및 Squeeze에서도 작동합니다.


7

나는 결국 이것을 해결했습니다. 나는 다음과 같은 줄을 추가했다./etc/dhclient-eth0.conf

append domain-name "example.com";

4

이것은 대부분 RHEL7이 시행 착오를 줄이기위한 참고 사항입니다. 작품 에서 사용하는 Dean의 대답 . 흥미로운 점은 DHCP에서 연결을 가져 오는 호스트의 도메인이 검색 경로에서 제외 되거나 나중에에 대한 목록에 있더라도 검색 경로 앞에 추가된다는 것입니다 . 이것과 관련된 많은 논리가있는 것 같습니다 .DOMAIN="domain1.exmaple.com domain2.example.com"/etc/sysconfig/network-scripts/ifcfg-device.confDOMAIN=DOMAIN=/sbin/dhclient-script

필자의 테스트에서 필립스의 사용 제안/etc/dhcp/dhclient-device.conf 도 효과 가 있음 을 발견 했지만 이상한 행동이 있지만 그와 같은 논리로 인해 /sbin/dhclient-script물건을 옮기려고합니다. 예를 들어, 예상대로 작업을 선행하거나 선행하지 않으면 호스트의 도메인이 우선합니다. 이 방법에 대한 참고로 /var/lib/NetworkManager/dhclient-device.conf생성 된 NetworkManager 파일이 클라이언트에서 사용됩니다. /etc/dhcp/읽은 파일이 있으면 파일 맨 위에 붙여넣고 아래에 추가 된 몇 가지 추가 옵션이 표시됩니다.


AWS Linux (RHEL) DOMAIN="your.domain"가 작동하지 않습니다. 재부팅 후 재설정
radtek

2

/etc/dhclient-eth0.conf위 의 답변은 저에게 효과적이지 않았습니다. 나는 /etc/dhcp3디렉토리가 없어서 그것이 효과가 있다고 생각하지 않았다.

/sbin/dhclient-script파일을 검사 한 후 ( /etc/resolv.confCentos 5.6 시스템에서 생성됨) 아래에 SEARCH 줄을 추가했습니다./etc/sysconfig/networking/devices/ifcfg-eth0:

DEVICE=eth0 
BOOTPROTO=dhcp
HWADDR=08:00:24:61:17:AC 
ONBOOT=yes
TYPE=Ethernet
SEARCH="example.com sub1.example.com sub2.example.com"

그때:

# ifdown eth0
# ifup eth0
#  cat /etc/resolv.conf
; generated by /sbin/dhclient-script
search example.com sub1.example.com sub2.example.com
nameserver 10.1.0.11

2

Fedora / Red Hat의 다소 불투명 한 스크립트 더미를 통과하는 사람은 적어도 Amazon의 최신 AMI에서 /etc/dhclient-eth0.conf (/ etc / dhcp /의 미끼 빈 폴더는 아님)입니다. 파일이 존재하지 않으므로 작성해야합니다.


2
ifcfg-eth0 / etc / sysconfig / network-scripts / ifcfg-eth0에 SEARCH를 추가하면 Amazon Fedora 버전에서도 작동합니다. 이전 버전의 Red Hat에서는 분명히 DOMAIN이었습니다. 나는 위의 것을 권장합니다.
David C Crooke 박사

2

CentOS 6에서는 다음 파일을 사용하여 선호하는 DNS 검색 도메인을 추가하고 있습니다.

# cat /etc/dhcp/dhclient-eth0.conf 
interface "eth0" {
    supersede domain-search "dns1.example.com";
}
# getenforce 
Enforcing
# ls -lZ /etc/dhcp/dhclient-eth0.conf 
-rw-r--r--. root root system_u:object_r:bin_t:s0   /etc/dhcp/dhclient-eth0.conf
#

이 파일은에서 가장 먼저 확인 된 파일입니다 /etc/sysconfig/network-scripts/ifup-eth.

if [ -s /etc/dhcp/dhclient-${DEVICE}.conf ]; then
   DHCLIENTCONF="-cf /etc/dhcp/dhclient-${DEVICE}.conf";

다음도 참조 : redhat-RHEL 6에서 DHCP 구성-서버 오류


추가 할 한 가지 참고 사항-을 사용하여 dhclient에 여러 검색 도메인을 지정하는 경우 개별 도메인 인용에 대한 매뉴얼 페이지 사양을 (option|supersede|*) domain-search ...따르십시오. dhclient의 많은 오래된 배포판에서 형식을 허용 했지만이 호환성은 지난 몇 년 동안 제거되었습니다 버그 수정으로 인해 bugs.launchpad.net/ubuntu/+source/isc-dhcp/+bug/777785dhcp-options(5)option domain-search "example.com", "sales.example.com", "eng.example.com";"example.com sales.example.com eng.example.com";
Patrick

1

Fedora 19에서 다음 줄을 추가하십시오 /etc/dhcp/dhclient.conf

# /etc/dhcp/dhclient.conf

interface "p2p1"
{
    supersede domain-name-servers 8.8.8.8, 8.8.4.4;
    append domain-name " mydomain.net example.com";
}

NetworkManager와 함께 잘 작동하십시오. 자세한 내용은 다음을 참조하십시오.# man dhclient.conf


aws linux (rhel)에서 작동하지 않습니다
radtek

0

dchp 서버 conf (isc dhcpd)에 추가하십시오.

option domain-name "domain1.com domain2.net domain3.org";

여기서 domain1.com 등은 각 클라이언트의 resolv.conf 파일에 추가 할 도메인 접미사입니다.


0

나는이 답변을 보지 못하고 나를 위해 일했지만 (다른 사람들은 그렇지 않았지만) 여기 있습니다 : /etc/resolvconf/resolv.conf.d/base당신과 같은 방식으로 편집 하십시오 /etc/resolv.conf. resolvconf설치 해야합니다 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.