[Memo2008][EPA]tako作業メモ(納多)(080417)

Bind の設定

DNS についての参考ページ (初学者向け) http://www5e.biglobe.ne.jp/~aji/3min/index.html

ゾーンファイルの用意

ika の /usr/local/bind/etc/namedb を tako の同じ場所に移植する.

$ tar zxfv namedb.tar.gz

リネームし, バックアップとしてとっておく

$ mv namedb.tar.gz ika_namedb.tar.gz

$ cd namedb

中にあったファイルは以下の通り (ls -1 * の結果).

PROTO.localhost-v6.rev
PROTO.localhost.rev
ahs.rev
ahs.zone
epa.zone
localhost-v6.rev
localhost-v6.rev.BAK
localhost.rev
localhost.rev.BAK
make-localhost
named.conf
named.root

work:
gen-rev.sh
gen-zone.sh
rev
rev~
src
zone

展開された結果を ls -l してみると, コピー前に ika で所有グループは epaadmin に なっていたが, tako に移植後は 1004 となっている. おそらくユーザ ID 番号と思われる. gate の導入後に確認が必要.

  • 覚書

    • "This file is automatically edited by the `make-localhost' script in the /etc/namedb directory." の記述があるファイル
      • PROTO.localhost-v6.rev
      • PROTO.localhost.rev
      • localhost-v6.rev
      • localhost-v6.rev.BAK
      • localhost.rev
      • localhost.rev.BAK
    • make-localhost
      • シェルスクリプト
    • ahs.rev
      • 最初の 10 行程度を除き, 1 列目にIPアドレスの最下桁の数字らしきもの, 2 列目に IN, 3 列目に PTR, 4 列目にホスト名らしきものが書いてあった.
    • ahs.zone
      • 最初の 15 行程度を除き, 1 列目にドメイン名のつかないホスト名らしきもの, 2 列目に IN, 3 列目に A, 4 列目に IP アドレスらしきものが書いてあった.
    • epa.zone
      • 最初の 15 行程度を除き, 1 列目にドメイン名のつかないホスト名らしきもの, 2 列目に IN, 3 列目に A, 4 列目に IP アドレスらしきものが書いてあった.
    • named.root
      • ルートサーバらしきホスト名と IP アドレスが記述されていた
    • named.conf
      • 最初に "Refer to the named.conf(5) and named(8) man pages for details. ... " と注意書き.
      • 設定らしきものが書かれている

    $ diff ahs.zone epa.zone

主な違いは, ahs.zone でそれぞれ ahs.scitec.kobe-u.ac.jp, tide.ahs.scitec.kobe-u.ac.jp と記述されているものが, epa.scitec.kobe-u.ac.jp, ika.epa.scitec.kobe-u.ac.jp となっていること.

  • 参考ページ
    • http://www5e.biglobe.ne.jp/~aji/3min/64.html
  • リソースレコード
    • A レコードはドメイン名と IP アドレスの対応を記述
      • ネームサーバはドメイン名の問い合わせに対してこのレコードを使用
    • NS レコードはそのドメインとそのドメインの下のドメインを管理するネームサーバ
      • 下位のネームサーバの場所を調べる時に使用
      • NS レコードの RDATA はドメイン名なので 必ずネームサーバのドメイン名のAレコードが必要
    • CNAME レコードは複数の名前を設定する
      • ホストが複数の名前を持つ時, 1 つの正式な「標準名」を持ち、他の名前は別名となる
      • 標準名の A レコードが必要
    • SOAレコードはゾーン情報のバックアップ用の情報を記述する
    • PTR レコードは逆引きに使う.
      • 注意: 逆引きのサービスは DNS サーバに必須ではない
      • 1.0.168.192.in-addr.arpa のような逆引き専用のドメイン名を用いる
      • RDATA はドメイン名.
    • MXレコード
      • ドメインのメールサーバを定義. 優先値が設定されている
      • 優先値が低いものから使用される
  • 正引きと逆引き
    • ドメイン名から IP アドレスを調べるのを正引きという
    • IP アドレスからドメイン名を調べるのを逆引きという
    • 正引きには A レコードを使うが, 逆引きには PTR レコードを使う
  • 過去 (2007 年度) の運用方針
    • ahs は tide が担当, epa は ika が担当, 逆引きは ika が担当.
  • 今回 (2008 年度) の運用方針 (納多案)
    • ahs は tide が担当, epa は tako が担当, 逆引きは tako が担当.
    • ika は epa の代替 DNS を担当
      • ns.epa.scitec.kobe-u.ac.jp ドメインは tako に譲渡し, ns2.epa.scitec.kobe-u.ac.jp などに置き換え

上記の場合に変更が行われる設定を列挙する. 特に明記しない限り, /usr/local/bind/etc/namedb/ 内のファイルを指す.

  • epa.zone の変更内容
    • MX レコード
      • 注意
        • tako の qmail が設定されていないうちは MX レコードは変更しないほうがいい
      • 変更前
        • IN MX 10 ika.epa.scitec.kobe-u.ac.jp.
      • 変更後
        • IN MX 10 tako.epa.scitec.kobe-u.ac.jp.
        • IN MX 20 ika.epa.scitec.kobe-u.ac.jp.
    • CNAME レコード
      • 変更前
        • www IN CNAME ika.epa.scitec.kobe-u.ac.jp.
      • 変更後
        • www IN CNAME tako.epa.scitec.kobe-u.ac.jp.
    • A レコード
      • 変更前
        • ns IN A 133.30.109.22
        • mail IN A 133.30.109.22
        • @ IN A 133.30.109.22
      • 変更後
        • ns IN A 133.30.109.21
        • mail IN A 133.30.109.21
        • @ IN A 133.30.109.21
  • ahs.rev, ahs.zone, named.conf などについては変更の必要なし
  • ika:/usr/local/bind/etc/namedb/epa.zone の変更内容
    • tako の epa.zone と同様
  • gradis.scitec.kobe-u.ac.jp:/etc/named.conf
    • epa.scitec.kobe-u.ac.jp. ゾーンの master の IP を ika の IP(133.30.109.22) から tako の IP (133.30.109.21) に変更.
  • gradis.scitec.kobe-u.ac.jp:/var/named/scitec.zone
    • epa.scitec.kobe-u.ac.jp. ゾーンのネームサーバを ika から tako に変更.
      • 変更前
        • ns.epa.scitec.kobe-u.ac.jp. IN A 133.30.109.22
      • 変更後
        • ns.epa.scitec.kobe-u.ac.jp. IN A 133.30.109.21
  • その他
    • 情報実験機の IP の情報を書き換えなくてはならないのでは?
    • 最近新しく登録された固定 IP 群を追記する必要がある

epa.zone の変更にあたってバックアップファイルを用意

# cp epa.zone epa.zone.ika

とりあえず上記の案の変更案から, tako の epa.zone の変更のみ行う. ただし, まだ tako の qmail が立ち上がっていないため MX レコードは以下のようにした. 本運用時にはコメントを外すこと.

;        IN      MX      10      tako.epa.scitec.kobe-u.ac.jp.
        IN      MX      20      ika.epa.scitec.kobe-u.ac.jp.

この時点で運用すると, ns.epa.scitec.kobe-u.ac.jp などが ika, tako の 2 つあることになってしまうが, これは大丈夫なのだろうか?

名前の衝突による不具合が起こる可能性を避けるため, 念のため CNAME, A レコードは元に戻した. つまり, ika を epa の DNS サーバとする従来の設定のままである.

起動テスト

bind ユーザで, /usr/local/bind/etc/namedb/named.conf を config_file として読み込む. ちなみに -c オプションを指定しない場合は /etc/namedb/named.conf が読み込まれる

# /usr/local/bind/sbin/named -u bind \
    -c /usr/local/bind/etc/namedb/named.conf

何も表示されなかった.

/var/log/syslog を確認.

(略)
Apr 16 11:57:27 tako named[21644]: starting BIND 9.4.2 -u bind -c /usr/local/bind/etc/namedb/named.conf
Apr 16 11:57:27 tako named[21644]: loading configuration from '/usr/local/bind/etc/namedb/named.conf'
  Apr 16 11:57:27 tako named[21644]: /usr/local/bind/etc/namedb/named.conf:139: open: /usr/local/bind/etc/rndc.key: file not found
  Apr 16 11:57:27 tako named[21644]: loading configuration: file not found
  Apr 16 11:57:27 tako named[21644]: exiting (due to fatal error)
  (略)

/usr/local/bind/etc/rndc.key というファイルがないために 起動に失敗しているようである.

named.conf の 137 行目には

include "/usr/local/bind/etc/rndc.key";

と記述されていた.

以下の作業は, 2007 年の ika 構築時に既に行われているため, 行わなかった.

  • 上流 DNS サーバの設定
    • gradis.scitec.kobe-u.ac.jp:/etc/named.conf に epa.scitec.kobe-u.ac.jp ゾーンのエントリ作成
    • gradis.scitec.kobe-u.ac.jp:/var/named/scitec.zone に epa に関するレコードを追記
    • 逆引きしたとき, tide 以外には epa ドメインの名前が返るようにする.
    • 逆引き時に参照するネームサーバは ika.epa.scitec.kobe-u.ac.jp にする.
    • gradis 側の逆引きゾーンファイルを書き換えて, 0/25の権限を ns.epa.scitec.kobe-u.ac.jp に委譲する.
  • ゾーンファイルの作成と編集
    • tide 側で epa.scitec.kobe-u.ac.jp ゾーンのエントリを作成.
    • 逆引きのゾーンファイル ahs.rev を epa な名前を返すように書き換える. tide だけは ahs の名前を返すようにしておく.
    • 逆引きの権限は ns.epa.scitec.kobe-u.ac.jp に持たせるように変更.

以下は行う必要があるが, tide にアカウントがなかったため行えなかった.

  • epa.zone ファイルを ahs.zone ファイルにコピーして ahs の部分を epa に書き換える.

[Memo2008][EPA]tako作業メモ(納多)(080710) に続く.