CentOS仮想マシンは、起動時にDHCPを使用してIPアドレスを取得します。また、DHCPサーバーによって提供されるDNS設定でresolv.confを上書きします。DHCPサーバーは検索ドメインを提供しないため、dhclientが書き込み時に検索ドメインのリストに入れるようにします。これを行うためにdhclientを構成するにはどうすればよいですか?
CentOS仮想マシンは、起動時にDHCPを使用してIPアドレスを取得します。また、DHCPサーバーによって提供されるDNS設定でresolv.confを上書きします。DHCPサーバーは検索ドメインを提供しないため、dhclientが書き込み時に検索ドメインのリストに入れるようにします。これを行うためにdhclientを構成するにはどうすればよいですか?
回答:
それらのどれも機能しませんでしたが、最後のものが最も近くにありました。Red Hat 6の場合、上記の例のようにDOMAIN
代わりに使用SEARCH
し、ファイルの場所が異なります。
ファイルを修正しました /etc/sysconfig/network-scripts/ifcfg-eth0
そして変わった
DOMAIN=domain.com
に
DOMAIN="domain.com sub.domain.com"
そしてそれはすべて働いた。
また、次のように/etc/dhcp3/dhclient.confに文字列を追加できます
prepend domain-search "domain1.com", "domain2.com";
この方法はDebian LennyとSqueezeでも機能することに注意してください。
私は最終的にこれをうまく処理することができました。次のような行を追加しました/etc/dhclient-eth0.conf
append domain-name "example.com";
これは主に、RHEL7で試行錯誤を減らすための注意事項です。ディーンの答えの使用DOMAIN="domain1.exmaple.com domain2.example.com"
に/etc/sysconfig/network-scripts/ifcfg-device.conf
作品。おもしろい注意点は、DHCPから取得した接続が検索パスに常に追加されるホストのドメインです。それを除外しDOMAIN=
たり、後でリストに追加したりしてもDOMAIN=
。これに/sbin/dhclient-script
関連する一連のロジックがあるようです。
私のテストでは、フィリップの使用の提案/etc/dhcp/dhclient-device.conf
も機能することがわかりましたが、おそらく奇妙な振る舞いがありますが、これはおそらく/sbin/dhclient-script
物事を動かそうとする同じロジックによるものです。たとえば、期待通りに動作を優先したり追加したりすることはなく、ホストのドメインが最初になります。このメソッドに関する補足事項として、/var/lib/NetworkManager/dhclient-device.conf
生成されたNetworkManagerファイルがクライアントによって使用されます。/etc/dhcp/
読み込まれたファイルがある場合は、ファイルの上部に貼り付けられ、以下にいくつかの追加オプションが追加されます。
DOMAIN="your.domain"
私には機能しませんでした。再起動後にリセットします
上記の/etc/dhclient-eth0.conf
答えは私にはうまくいきませんでした。私は/etc/dhcp3
ディレクトリを持っていないので、それがうまくいくとは思わなかった。
/sbin/dhclient-script
(/etc/resolv.conf
Centos 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
Fedora / Red Hatのかなり不透明なスクリプトの山を通る人にとっての答えは、少なくともAmazonの最新のAMIでは、/etc/dhclient-eth0.confです(/ etc / dhcp /にあるおとり空のフォルダーではありません)。ファイルが存在しないため、作成する必要があります
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";
(option|supersede|*) domain-search ...
場合は、dhcp-options(5)
個々のドメインを引用するためのmanページの仕様に従ってください:option domain-search "example.com", "sales.example.com", "eng.example.com";
dhclientの多くの古いディストリビューションは形式を許可しました"example.com sales.example.com eng.example.com";
が、この互換性は過去数年で削除されましたバグ修正によりbugs.launchpad.net/ubuntu/+source/isc-dhcp/+bug/777785
DOMAIN
とSEARCH
github.com/mcr/isc-dhcp/blob/master/common/resolv.c#L68