Table of Contents
- 1. 目指すresolv.confの内容
- 2. DHCPサーバの設定
- 3. Fedora/CentOSのクライアントの設定
- 4. Debianのクライアントの設定
- 5. Ubuntuのクライアントの設定
1 目指すresolv.confの内容
192.168.11.2は内部ネットワーク(hiroom2.com)向けのDNS情報を管理し、192.168.11.1は外部ネットワークのDNS情報を管理しつつ外部ネットワーク向けのルーターとなっています。
これらの要求を満たすresolv.confは以下のようになります。
search hiroom2.comnameserver 192.168.11.2nameserver 192.168.11.1
2 DHCPサーバの設定
dhcpd.confにてIPアドレスや経路情報だけでなく、domain-nameでドメイン名を、domain-name-serversでDNSサーバのアドレスを配布します。
subnet 192.168.11.0 netmask 255.255.255.0 { option domain-name “hiroom2.com”; option domain-name-servers 192.168.11.2, 192.168.11.1; option routers 192.168.11.1;}
dhcpd.confとresolv.confの対応は以下にようにになります。
dhcpd.conf resolv.conf option domain-name serach option domain-name-servers nameserver
3 Fedora/CentOSのクライアントの設定
ifcfg-xxxにてPEERDNSをyesに設定することで、DHCPサーバから配布されたDNS情報を用いるようになります。
インストールした状態で以下の設定になっていると思います。
# cat /etc/sysconfig/network-scripts/ifcfg-eth0TYPE=”Ethernet”BOOTPROTO=”dhcp”DEFROUTE=”yes”PEERDNS=”yes”PEERROUTES=”yes”DEVICE=”eth0″ONBOOT=”yes”NAME=”eth0″
なおifup-postスクリプトにてPEERDNS、DNS1、DNS2等を判定してresolv.confを作成しています。
/etc/sysconfig/network-scripts/ifup-post
4 Debianのクライアントの設定
インストールしたままのNetworkManager.confで問題ないはずです。
$ sudo cat /etc/NetworkManager/NetworkManager.conf[main]plugins=ifupdown,keyfile[ifupdown]managed=false
5 Ubuntuのクライアントの設定
インストールしたままのNetworkManager.confだとdnsmasqを用いるようになっており、DHCPサーバから配布されたDNSサーバが反映されません。
$ cat /etc/resolv.conf# Dynamic resolv.conf(5) file for glibc resolver(3) generated by# resolvconf(8)# DO NOT EDIT THIS FILE BY HAND — YOUR CHANGES WILL BE# OVERWRITTENnameserver 127.0.1.1search hiroom2.com
以下のようにdnsmasqをコメントアウトし、network-managerを再起動します。
$ sudo diff -uprN /etc/NetworkManager/NetworkManager.conf{.org,}— /etc/NetworkManager/NetworkManager.conf.org 2016-04-28 01:07:32.015679999 +0900+++ /etc/NetworkManager/NetworkManager.conf 2016-04-28 01:07:45.307679999 +0900@@ -1,6 +1,6 @@ [main] plugins=ifupdown,keyfile,ofono-dns=dnsmasq+#dns=dnsmasq [ifupdown] managed=false$ sudo systemctl restart network-manager
目指していたresolv.confになりました。
$ cat /etc/resolv.conf# Dynamic resolv.conf(5) file for glibc resolver(3) generated by# resolvconf(8)# DO NOT EDIT THIS FILE BY HAND — YOUR CHANGES WILL BE# OVERWRITTENnameserver 192.168.11.2nameserver 192.168.11.1search hiroom2.com