1 views
実現する機能
外部から自宅サーバー「http://ufuso.dip.jp」にアクセスすると、プロバイダーから提供されているルーター(192.168.24.1)がちゃんと自宅サーバー(192.168.24.240)に繋いでくれますが、自宅のWindowsノートパソコン(192.168.24.3)から自宅サーバー「http://ufuso.dip.jp」にアクセスすると繋いでくれません。ドメインufuso.dip.jpがIPアドレス192.168.24.240と同じパソコンのものだよと教えてくれるDNSサーバー(BIND)が家庭内LAN内には無いからです。
そこで、自宅サーバーに自宅のWindowsノートパソコンやiPhone5sからアクセスできるように自宅用のDNSサーバー(内部DNSサーバー)を構築してIPアドレス(192.168.24.240)だけではなく、ufuso.dip.jpでもアクセスできるようにしました。
事前準備
※ieServer.Net(無料)やDynamic DO!.jp(無料)やお名前.com(有料)などからドメインを取得済であること
BIND導入手順
(1)BINDインストール
[root@ufuso ~]# yum -y install bind ← bindインストール Installed: bind.x86_64 32:9.8.2-0.17.rc1.el6_4.6 Complete! |
(2)BIND設定
[root@ufuso ~]# echo OPTIONS="-4" >> /etc/sysconfig/named ← IPv4のみ有効にする(error (network unreachable) resolvingというエラーログの 出力抑止) [root@ufuso ~]# vi /etc/named.conf ← BIND設定ファイル編集 // // named.conf // // Provided by Red Hat bind package to configure the ISC BIND named(8) DNS // server as a caching only nameserver (as a localhost DNS resolver only). // // See /usr/share/doc/bind*/sample/ for example named configuration files. // options { #listen-on port 53 { 127.0.0.1; }; ← 行頭に#を追加して無効化 #listen-on-v6 port 53 { ::1; }; ← 行頭に#を追加して無効化 version "unknown"; ← bindのバージョン情報の非表示化 listen-on-v6 { none; }; directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; allow-query { localhost; 192.168.24.0/24; }; ← サーバーと同じネット ワーク内からの問合せも許可 recursion yes; dnssec-enable yes; dnssec-validation yes; dnssec-lookaside auto; /* Path to ISC DLV key */ bindkeys-file "/etc/named.iscdlv.key"; forwarders{ 192.168.24.1; ← ルーター経由接続環境の場合なのでルーターのIP アドレスを指定。 106.187.2.33; ← プロバイダから通知されたDNSサーバー(プライマリ) のIPアドレスを指定 106.187.2.41; ← プロバイダから通知されたDNSサーバー(セカンダリ) のIPアドレスを指定 }; managed-keys-directory "/var/named/dynamic"; }; logging { channel default_debug { file "data/named.run"; severity dynamic; }; }; view "internal" { match-clients { localhost; 192.168.24.0/24; ← サーバーと同じネットワークを追加 }; zone "." IN { type hint; file "named.ca"; }; zone "ufuso.dip.jp" IN { ← 正引きゾーン名「ufuso.dip.jp」を指定 type master; file "ufuso.dip.jp.lan"; ← 正引き設定情報の保存ファイル名を指定 allow-update { none; }; }; zone "24.168.192.in-addr.arpa" IN { ← 逆引きゾーン名「24.168.192 .in-addr.arpa」を指定 type master; file "24.168.192.db"; ← 逆引き設定情報の保存ファイル名を指定 allow-update { none; }; }; include "/etc/named.rfc1912.zones"; }; |
(3)内部向け正引きゾーンデータベース(ドメイン名⇒IPアドレス)作成
[root@ufuso ~]# vi /var/named/ufuso.dip.jp.lan ← 正引きゾーンデータベース作成 $TTL 86400 @ IN SOA ufuso.dip.jp. root.ufuso.dip.jp. ( 2011071001 ;Serial 3600 ;Refresh 1800 ;Retry 604800 ;Expire 86400 ;Minimum TTL ) IN NS ufuso.dip.jp. ← ネームサーバー定義 IN A 192.168.24.240 ← サーバーのプライベートIPを指定(ufuso.dip.jp用) IN MX 10 ufuso.dip.jp. ← メールサーバー定義 IN A 192.168.24.240 ← サーバーのプライベートIPを指定(*.ufuso.dip.jp用) |
(4)内部向け逆引きゾーンデータベース(IPアドレス⇒ドメイン名)作成
[root@ufuso ~]# vi /var/named/24.168.192.db ← 逆引きゾーンデータベース作成 $TTL 86400 @ IN SOA ufuso.dip.jp. root.ufuso.dip.jp. ( 2011071001 ;Serial 3600 ;Refresh 1800 ;Retry 604800 ;Expire 86400 ;Minimum TTL ) IN NS ufuso.dip.jp. ← ネームサーバー定義 IN PTR ufuso.dip.jp. ← IPアドレスに関連付けるホスト名を定義 IN A 255.255.255.0 ← ドメインが属する範囲の定義 240 IN PTR ufuso.dip.jp. ← IPアドレスに関連付けるホスト名を定義 |
(5)BIND起動
[root@ufuso ~]# /etc/rc.d/init.d/named start ← BIND起動 Generating /etc/rndc.key: [ OK ] named を起動中: [ OK ] [root@ufuso ~]# chkconfig named on ← BIND自動起動設定 |
(6)本サーバーをDNSサーバーとして登録
[root@ufuso ~]# cd /etc/sysconfig/network-scripts ← network-scriptsフォルダへ移動 [root@ufuso network-scripts]# vi ifcfg-eth0 ← eth0ファイルの編集 DEVICE=eth0 HWADDR=90:E6:BA:C9:DE:B3 TYPE=Ethernet UUID=1a318fab-faa0-4487-832e-3000d65b7b81 ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=none IPADDR=192.168.24.240 PREFIX=24 GATEWAY=192.168.24.1 DNS1=192.168.24.240 ← 本機を第1DNSサーバーとして追記 DOMAIN=ufuso.dip.jp DEFROUTE=yes IPV4_FAILURE_FATAL=yes IPV6INIT=no NAME="System eth0" DNS2=192.168.24.1 ← ルーターを第2DNSサーバーにする [root@ufuso network-scripts]# cd ← network-scriptsフォルダから移動 [root@ufuso ~]# /etc/rc.d/init.d/network restart ← networkの再起動 インターフェース eth0 を終了中: デバイスの状態: 3 (切断済み) [ OK ] ループバックインターフェースを終了中 [ OK ] ループバックインターフェイスを呼び込み中 [ OK ] インターフェース eth0 を活性化中: アクティブ接続の状態: アクティベート済み アクティブ接続のパス: /org/freedesktop/NetworkManager/ActiveConnection/4 [ OK ] |
(7)UDPの53番ポートとTCPの53番ポートをオープンする
ルーターの設定で、UDPの53番ポートとTCPの53番ポートへのアクセスをサーバーに転送するようにする。下図はauひかりのルーターでの設定例。
(8)BIND確認(クライアントがWindowsの場合)
C:>nslookup ← nslookup起動 Default Server: ufuso.dip.jp Address: 192.168.24.240 > ufuso.dip.jp ← サーバーの正引きテスト Server: ufuso.dip.jp Address: 192.168.24.240 Name: ufuso.dip.jp Address: 192.168.24.240 ← IPアドレスが返ってきた > 192.168.24.240 ← サーバーの逆引きテスト Server: ufuso.dip.jp Address: 192.168.24.240 Name: ufuso.dip.jp ← ドメイン名が返ってきた Address: 192.168.24.240 > exit ← nslookup停止 C:> |
(9)BIND確認(クライアントがLinuxの場合)
[root@ufuso ~]# dig ufuso.dip.jp ← サーバーの正引きテスト ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6 <<>> ufuso.dip.jp ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 56900 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0 ;; QUESTION SECTION: ;ufuso.dip.jp. IN A ;; ANSWER SECTION: ufuso.dip.jp. 86400 IN A 192.168.24.240 ← IPアドレスが 返ってきた ;; AUTHORITY SECTION: ufuso.dip.jp. 86400 IN NS ufuso.dip.jp. ;; Query time: 0 msec ;; SERVER: 192.168.24.240#53(192.168.24.240) ;; WHEN: Sun Dec 15 15:25:51 2013 ;; MSG SIZE rcvd: 60 [root@ufuso ~]# dig -x 192.168.24.240 ← サーバーの逆引きテスト ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6 <<>> -x 192.168.24.240 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 18792 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1 ;; QUESTION SECTION: ;240.24.168.192.in-addr.arpa. IN PTR ;; ANSWER SECTION: 240.24.168.192.in-addr.arpa. 86400 IN PTR ufuso.dip.jp. ← ドメイン名が 返ってきた ;; AUTHORITY SECTION: 24.168.192.in-addr.arpa. 86400 IN NS ufuso.dip.jp. ;; ADDITIONAL SECTION: ufuso.dip.jp. 86400 IN A 192.168.24.240 ;; Query time: 0 msec ;; SERVER: 192.168.24.240#53(192.168.24.240) ;; WHEN: Sun Dec 15 15:26:01 2013 ;; MSG SIZE rcvd: 101 |
(10)chroot環境への移行
[root@ufuso ~]# yum -y install bind-chroot ← chrootのインストール Installed: bind-chroot.x86_64 32:9.8.2-0.17.rc1.el6_4.6 Complete! [root@ufuso ~]# /etc/rc.d/init.d/named restart ← BIND再起動 named を停止中: . [ OK ] named を起動中: [ OK ] [root@ufuso ~]# ll /var/named/chroot/etc ← chroot環境への移行確認 合計 32 -rw-r--r--. 1 root root 331 10月 16 18:05 2013 localtime drwxr-x---. 2 root named 4096 8月 28 00:55 2013 named -rw-r-----. 1 root named 1631 12月 15 15:22 2013 named.conf -rw-r--r--. 1 root named 2389 8月 28 00:55 2013 named.iscdlv.key -rw-r-----. 1 root named 931 6月 21 19:09 2007 named.rfc1912.zones -rw-r--r--. 1 root named 487 7月 19 22:28 2010 named.root.key drwxr-x---. 3 root named 4096 12月 15 15:26 2013 pki -rw-r-----. 1 root named 77 12月 15 15:23 2013 rndc.key [root@ufuso ~]# ll /var/named/chroot/var/named ← chroot環境への移行確認 合計 40 -rw-r--r--. 1 root root 346 12月 15 15:23 2013 24.168.192.db drwxr-x---. 6 root named 4096 12月 15 15:26 2013 chroot drwxrwx---. 2 named named 4096 12月 15 15:23 2013 data drwxrwx---. 2 named named 4096 12月 15 15:24 2013 dynamic -rw-r-----. 1 root named 1892 2月 18 21:29 2008 named.ca -rw-r-----. 1 root named 152 12月 15 21:27 2009 named.empty -rw-r-----. 1 root named 152 6月 21 19:09 2007 named.localhost -rw-r-----. 1 root named 168 12月 15 21:27 2009 named.loopback drwxrwx---. 2 named named 4096 8月 28 00:55 2013 slaves -rw-r--r--. 1 root root 348 12月 15 15:22 2013 ufuso.dip.jp.lan |
はじめまして。貴殿ページを参考に自宅サーバー構築に励んでいる初心者です。
丁寧でわかりやすく感謝しています。
ところで上記内容のとおりDNSサーバーの設定を行なったのですが、ノートパソコン、iphone共に無線LAN 環境でアクセスできません。有線接続のクライアントPC(WIN7)でも反映されません。
ネット環境は次ぎのとおりです。
CentOS 6.5(32bit) を Minimal で最小インストールしている。
クライントマシンは WIN7(64bit) 。
セカンダリネームサーバは構築していません。
使用しているルータは NTT RT-500MI。
PPPoE 環境ではない。
IPv6 は使用しない。
グローバル IP アドレスは非固定
ローカルネットワークは “192.168.1.0/24”
サーバマシンのローカル IP アドレスは “192.168.1.30”
ルーター川の設定も必要でしょうか?
お力添え願います。
貴殿ページのhttp://ufuso.jp/wp/?p=14525にて改善しました。
何から何までお世話になっています。
すばらしい構築ページの公開感謝します
ありがとうございます。励みになります。