2010-02-19 10:35:31 +0000 2010-02-19 10:35:31 +0000
35
35

CentOSでdhclientが作成したresolv.confに検索ドメインを追加するにはどうすればいいですか?

私のCentOS仮想マシンが起動すると、DHCPを使ってIPアドレスを取得します。また、DHCP サーバが提供する DNS 設定で resolv.conf を上書きします。DHCP サーバは検索ドメインを提供していないので、DHCP を書き込むときに dhclient が検索ドメインのリストを入れるようにしたいのですが、どうすればいいですか?dhclient がこれを行うように設定するにはどうすればいいですか?

回答 (10)

32
32
32
2012-08-27 13:16:49 +0000

どれもうまくいきませんでしたが、最後のものが一番近かったです。Red Hat 6 の場合は、上の例のように DOMAIN の代わりに SEARCH を使用して、ファイルの場所を変えます。

/etc/sysconfig/network-scripts/ifcfg-eth0

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

に変更してみたところ、すべてうまくいきました。

11
11
11
2011-03-29 14:44:49 +0000

また、/etc/dhcp3/dhclient.conf に以下のように文字列を追加することもできます

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

この方法は Debian Lenny や Squeeze でも動作することに注意してください。

7
7
7
2010-02-19 16:46:58 +0000

最終的にはなんとかなりました。/etc/dhclient-eth0.conf

append domain-name "example.com";
```に以下のような行を追加してみました。
4
4
4
2014-09-17 18:03:56 +0000

試行錯誤を減らすために、ほとんどRHEL7用のメモです。[ Deanの回答 ]DOMAIN="domain1.exmaple.com domain2.example.com"の中に/etc/sysconfig/network-scripts/ifcfg-device.confを使う(https://superuser.com/a/466912/500826)が動作します。興味深い注意点は、DHCPからの接続が取得するホストのドメインは、たとえ`DOMAIN=`から除外しても、後から`DOMAIN=`のリストに入れても、常に検索パスの前に付加されているということです。`/sbin/dhclient-script`にはこれに関連したロジックがたくさんあるようです。

私のテストでは、 Philip’s suggestion /etc/dhcp/dhclient-device.conf の使用も動作することがわかりました。例えば、supercedeもprependも期待通りには動作せず、ホストのドメインが最初になります。この方法についての余談ですが、/sbin/dhclient-script は生成された NetworkManager ファイルであり、クライアントによって使用されます。/var/lib/NetworkManager/dhclient-device.conf に読み込まれるファイルがある場合、ファイルの先頭にそれが貼り付けられ、以下にいくつかの追加オプションが追加されているのがわかります。

2
2
2
2012-01-04 15:11:33 +0000

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を設定する - サーバの障害

2
2
2
2011-06-02 15:45:35 +0000

上の/etc/dhclient-eth0.confの回答は私には効きませんでした。私は/etc/dhcp3ディレクトリを持っていないので、これもうまくいくとは思えませんでした。

/sbin/dhclient-scriptファイル(私のCentos 5.6システムでは/etc/resolv.confが作成されます)を調べた後、/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"

に以下のSEARCH行を追加しました。

# 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
``` 0x1&
2
2
2
2013-09-20 20:16:29 +0000

Fedora / Red Hat のやや不透明なスクリプトの山の中を進む人のために、少なくとも Amazon の最新の AMI では、答えは /etc/dhclient-eth0.conf です (/etc/dhcp/ にあるおとりの空のフォルダではありません)。ファイルは存在しないので、以下のように作成する必要があります。

1
1
1
2013-11-22 08:29:07 +0000

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

0
0
0
2012-08-27 15:32:39 +0000

dchp サーバの conf (isc dhcpd) に追加します:

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

ここで domain1.com,etc. は各クライアントの resolv.conf ファイルに追加したいドメインサフィックスです。

0
0
0
2015-05-26 02:13:19 +0000

私はこの答えを見たことがなく、私の場合はうまくいったので(他の人はそうではなかったが)、以下の通りにします: /etc/resolvconf/resolv.conf.d/base/etc/resolv.confと同じように編集してください。resolvconfがインストールされている必要があります。

関連する質問

6
10
5
37
3