📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

ページの作成:「== 概要 == DNSサーバ(BIND)は、suse.comというドメイン名からIPアドレスを返したり、IPアドレスからドメイン名を返すサーバである。<br> <br> 内部向けDNSサーバは、LANにあるサーバまたはクライアントPCにアクセスする時、IPアドレスではなくsuse.com等のドメイン名を入力してアクセスできるようにするDNSサーバである。<br> 外部向けDNSサーバは、WANにあるサ…」
 
22行目: 22行目:
<br><br>
<br><br>


== BINDの設定 ==
== BINDの設定 : 内部向けDNSの場合 ==
BINDの設定ファイルを編集する。<br>
BINDの設定ファイルを編集する。<br>
  sudo vi /etc/named.conf
  sudo vi /etc/named.conf
<br>
<br>
  options {
  options {
        # 全てListenする場合
    ...
        #listen-on port 53 { 127.0.0.1; };
        listen-on port 53 { any; };
   
   
        # IPv6を使用しない
    # 内部向けDNSサーバの管理外の問合せ先
        #listen-on-v6 port 53 { ::1; };
    #forwarders { 192.0.2.1; 192.0.2.2; };
        listen-on-v6 { none; };
    forwarders { 192.168.1.1; };
   
   
        version        "unknown";          ← BINDのバージョン情報の非表示化
    ...
        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-transfer { none; };          ← 追加(ゾーン情報の転送を禁止)
   
   
        ...省略
    # 全てListenする場合 (未設定でもよい)
    #listen-on port 53 { 127.0.0.1; };
    listen-on port 53 { any; };
   
   
        recursion yes;                     ← 再帰問合せ機能を有効化(内部DNSサーバとして動作)
    # IPv6を使用しない場合
    #listen-on-v6 { any; };
    listen-on-v6 { none; };
   
   
        # 問い合わせを許可する範囲を指定
    ...
        # 以下の例では、LAN(192.168.1.*)からのみ問い合わせを許可している
        # allow-query    { localhost; };
        allow-query    { localhost; 192.168.1.0/24; };
   
   
        # 内部からのみ再帰問合せを許可
    # 問い合わせを許可する範囲を指定
        # allow-recursion { localhost; };
    # 以下の例では、LAN(192.168.1.*)からのみ問い合わせを許可している
        allow-recursion { localhost; localnets; };
    #allow-query { 127.0.0.1; };
    allow-query { 127.0.0.1; 192.168.1.0/24; };
        # ゾーン情報の転送を許可する範囲(セカンダリDNSがいればその場所/範囲)
        # allow-query-cache { localhost; };
        allow-query-cache { localhost; 192.168.1.0/24; };
        # 本DNSサーバ管理外の問合せ先
        forwarders{ 192.168.1.1; };
        ...省略
   
   
    ...略
  };
  };
   
   
  logging {
  ...略
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
        category lame-servers { null; }; ← 追加(error (connection refused) resolvingというエラーログの出力抑止)
};
   
   
  # 内部向けDNSの設定
  # コメントアウトする
  view "internal" {
  #include "/etc/named.conf.include";
        match-clients {
          localhost;
          192.168.1.0/24;
        };
   
   
        match-destinations {
...略
          192.168.1.0/24;
 
        };
# 内部向けDNSサーバのゾーンの設定 (追加)
   
# 192.168.1.* の正引き
        zone "." IN {
  zone "suse.com" {
          type hint;
    type master;
          file "named.ca";
    file "suse.db";
        };
        include "/etc/named.d/named.rfc1912.zones";
        include "/etc/named.d/named.root.key";
        include "/var/lib/named/named.suse.com.zone";
  };
  };
   
   
  # 外部向けDNSの設定(固定IPアドレスの場合のみ)
  # 192.168.1.* の逆引き
  view "external" {
  zone "1.168.192.in-addr.arpa" {
        match-clients {
    type master;
          any;
    file "1.168.192.in-addr.arpa.db";
        };
        match-destinations {
          any;
        };
        include "/var/lib/named/named.centos.com.zone.wan";
  };
  };
<br>
<br>
suse.comの内部向けゾーン定義ファイルを作成する。<br>
suse.comの内部向けゾーン定義ファイルを作成する。<br>
sudo vi /var/lib/named/named.suse.com.zone
以下の例に記述しているXXやYY等のIPアドレスを、該当するクライアントPCのIPアドレスに変更すること。<br>
<br>
<br>
  zone "suse.com" {
内部向けDNSサーバの正引きするためのゾーンファイルを作成する。<br>
        type master;
  sudo vi /var/lib/named/suse.db
        file "suse.com.db";
<br>
  };
# /var/lib/named/suse.dbファイル
$TTL 86400
@      IN SOA ns.suse.com.    root.suse.com. (
                                      2022041001 ; Serial  例. 作成年月日 + 01(連番)を記述する
                                      28800      ; Refresh
                                      14400      ; Retry
                                      3600000    ; Expire
                                      86400      ; Minimum TTL
  )
   
   
  zone "1.168.192.in-addr.arpa" {
  @      IN NS ns.suse.com. ;
        type master;
ns      IN A 192.168.1.XX  ; 内部向けDNSサーバのIPアドレス
        file "1.168.192.in-addr.arpa.db";
pc1    IN A 192.168.1.YY  ; クライアントPC 1
  };
pc2    IN A 192.168.1.ZZ  ; クライアントPC 2
  pc3    IN A 192.168.1.AA  ; クライアントPC 3
<br>
<br>
suse.comの外部向けゾーン定義ファイルを作成する。(固定IPアドレスの場合のみ)<br>
内部向けDNSサーバの逆引きするためのゾーンファイルを作成する。<br>
  sudo vi /etc/named/named.suse.com.zone.wan
  sudo vi /var/lib/named/1.168.192.in-addr.arpa.db
<br>
<br>
  # 正引き設定
  # /var/lib/named/1.168.192.in-addr.arpa.dbファイル
  zone "suse.com" {
         type master;
$TTL 86400    ;
         file "suse.com.db.wan";
  @  IN SOA ns.suse.com.    root.suse.com. (
                        2022041001 ; Serial  例. 作成年月日 + 01(連番)を記述する
                        3H        ; Refresh
                        1H         ; Retry
                        1W         ; Expire
                        1D )      ; Minimum
   
   
        allow-query {
    IN NS  ns.suse.com.  ;
          any;
    IN PTR suse.com.    ;
        };
    IN A 255.255.255.0  ;
};
   
   
  # 逆引き設定(プロバイダから逆引き権限を委譲されている場合のみ)
  XX    IN PTR ns.suse.com.  ; 内部向けDNSサーバのIPアドレス
  zone "SUBxxx.xxx.xxx.xxx.in-addr.arpa" {
  YY    IN PTR pc1.suse.com. ; クライアントPC 1
        type master;
ZZ    IN PTR pc2.suse.com. ; クライアントPC 2
        file "SUBxxx.xxx.xxx.xxx.in-addr.arpa.db.wan";
AA    IN PTR pc3.suse.com.  ; クライアントPC 3
        allow-query { any; };
  };
<br>
<br>
IPv4のみ有効にする。(error (network unreachable) resolvingというエラーログの出力を抑止する)<br>
設定ファイルが正常に記述されているかどうかを確認する。<br>
  sudo echo OPTIONS="-4" >> /etc/sysconfig/named
  sudo named-checkconf
<br><br>
<br><br>