Scyphus Draft — Articles

本稿では,NAT64実装の一つであるEcdysis,DNS64をサポートしたBIND 9.8,およびDHCPv6をサポートしたISC DHCP 4を用いてIPv6 onlyネットワークを構築する手順を説明する.

Custom Search

IPv6 onlyネットワークの構築〜Ecdysis (NAT64) / BIND 9.8 (DNS64) / ISC DHCP 4 (DHCPv6)〜

Date: Oct. 31, 2011
Author: 浅井 大史

設定(DNS64/DHCPv6)

DNS64

本稿ではDNS64実装としてBIND 9.8.1を用いる. BINDではバージョン9.8以降でDNS64をサポートしている. なお,FreeBSDではportsコレクションに含まれており, portsツリー下のdns/bind98にある.

BINDの設定ファイル(通常はnamed.conf)のoptionsディレクティブで以下のように設定する.

options {
    dns64 64:ff9b::/96 {
        clients { 2001:db8:90:6::/64; }; // このクライアントからの
                                         //リクエストに対してDNS64変換を行う
        mapped { !10/8; any; }; // 10.0.0.0/8以外のIPv4アドレスを
                                //AAAAレコードに変換する例
        exclude { 2001:db8:90:6::1/128; }; // このクライアントからの
                                           //リクエストは変換を行わない
        recursive-only yes; // 再帰問い合わせにのみDNS64を適用する
                            //(このプロセスの権威回答に対しては適用しない)
    };

    // ... その他の設定 ...
};

なお,FreeBSD portsからREPLACE_BASE無効にしてインストールした場合は,/etc/rc.confに以下の設定を追加して起動時の自動起動を有効にする.

named_enable="YES"
named_program="/usr/local/sbin/named"

DHCPv6

本稿ではDHCPv6サーバの実装としてISC DHCP 4を用いる. ISC DHCPではバージョン4以降でDHCPv6をサポートしている. なお,FreeBSDではportsコレクションに含まれており, portsツリー下のnet/isc-dhcp42-serverにある.

DHCPv6設定ファイル(通常はdhcpd6.conf)を 以下のように設定する.

# デフォルトのリース時間(秒)
default-lease-time 600;
# 最大のリース時間(秒)
max-lease-time 7200;
# syslogの設定
log-facility local7;
# 2001:db8:90:6::/64 セグメントに対するDHCPv6の設定
subnet6 2001:db8:90:6::/64 {
    # DHCPv6で割り当てるアドレス領域
    range6 2001:db8:90:6::0100 2001:db8:90:6::1000;
    # DHCPv6で設定するDNSサーバ(ここでDNS64サーバのアドレスを指定する)
    option dhcp6.name-servers 2001:db8:90:6::53;
}

なお,FreeBSD portsからをインストールした場合は,/etc/rc.confに以下の設定を追加して起動時の自動起動を有効にする.

dhcpd6_enable="YES"
dhcpd6_ifaces="re0" # re0 は 2001:db8:90:6::d を設定した
                    # IPv6 onlyネットワークのインターフェイス