私のISPはIPv4 / IPv6デュアルスタックサービスを開始しました。IPv4 / IPv6インターネットに接続するために、ほとんどすべてのユーザーは通常、ISPからリースされたCPEを使用します。しかし、私のルーターは非常に多くの役割を持っているので、このようなCPEの代わりにLinuxルーターを使用したいと思います(多くのiptablesルールと3つのイーサネットインターフェイス、httpリバースプロキシ、httpキャッシュ、memcached、smtp / popサーバー、DNSプロキシ)。IPv4 / IPv6デュアルスタックルーターにしたい。
私のルーター
- CentOS6.0 i686
- WANのeth0
- LANのeth1,2
- CentOS-updatesリポジトリから「#yum install dhcp」によってインストールされたISC dhcp(バージョン4.1.1)
- CentOSベースのリポジトリから「#yum install radvd」によってインストールされたradvd(バージョン1.6)
- [編集] ISC dhclientを使用する理由は、ISP固有の情報を含むベンダー固有の情報オプションを取得するために、ルーターが要請メッセージと要求メッセージでDHCPv6オプション16(ベンダークラス)を送信する必要があるためです( SIP電話番号、ファームウェアサーバーアドレス)。ISC dhclientでオプション16を設定する方法は知っていますが、WIDE-dhcpv6ではそれがわかりません。また、ISC dhclientで「id-assoc」などの設定が見つかりません。
私の目標
- / 48プレフィックスは、eth0のDHCPv6-PD(DHCPv6プレフィックス委任)クライアント(dhclient)に委任されます。
- IPv6デフォルトルートはISPに向けて設定されています。ISPのDHCPv6サーバーのリンクローカルアドレスをデフォルトルートと見なす必要があります。
- 1つの/ 64サブネットと1つのグローバルアドレス(委任されたプレフィックスにあります)が各LAN I / F(eth1 / eth2)に割り当てられます。
- eth1およびeth2のradvdは、割り当てられた/ 64サブネットに基づいてRAをアナウンスします。
- eth1およびeth2のdhcpd6は、ISPのDHCPv6サーバーから受信した追加のネットワーク情報(ネームサーバー、ドメイン検索リスト、およびsipサーバーアドレス)をアナウンスします。
私の現在の構成
/ etc / sysconfig / network
NETWORKING=yes
HOSTNAME=xxx.yyy.zzz
# Enable IPv6 routing and stop accept_ra/autoconf.
IPV6FORWARDING=yes
/ etc / sysconfig / network-scripts / ifcfg-eth0
DEVICE="eth0"
ONBOOT=yes
TYPE=Ethernet
BOOTPROTO=none
# Enable DHCPv6-PD client.
DHCPV6C=yes
DHCPV6C_OPTIONS="-P -cf /etc/dhcp/dhclient6.conf"
# Disable make_resolv_conf function in /sbin/dhclient-script.
PEERDNS=no
/etc/dhcp/dhclient6.conf
script "/sbin/dhclient-script";
interface "eth0" {
send dhcp6.reconf-accept;
also request dhcp6.vendor-opts, dhcp6.sip-servers-names, dhcp6.sip-servers-addresses, dhcp6.sntp-servers;
}
結果
「#service network restart」の後、DHCPv6-PDクライアントは正常に終了するようです。
lease6 {
interface "eth0";
ia-pd xx:xx:xx:xx {
starts 1312464004;
renew 7200;
rebind 10800;
iaprefix 24xx:xxxx:xxxx::/48 {
starts 1312464004;
preferred-life 12600;
max-life 14400;
}
}
option dhcp6.client-id xx:xx:xx:xx:xx:xx:xx:xx:xx:xx;
option dhcp6.server-id xx:xx:xx:xx:xx:xx:xx:xx:xx:xx;
option dhcp6.reconf-accept ;
option dhcp6.sip-servers-addresses 24xx:xxxx:xxxx:xxxx::1;
option dhcp6.name-servers 24xx:xxxx:xxxx:xxxx::3,24xx:xxxx:xxxx:b::3;
option dhcp6.domain-search "xxx.jp.", "yyy.jp.";
option dhcp6.sntp-servers 24xx:xxxx:xxxx:xxxx::a,24xx:xxxx:xxxx:b::b;
}
質問
DHCPv6-PDクライアントに/ 48プレフィックスが正常に委任されました。しかしその後、
- ルーターのルーティングテーブルにIPv6デフォルトルートを設定する方法
- 委任されたプレフィックスに基づいて、グローバルIPv6アドレスおよび/ 64サブネットを各LAN I / F(eth1およびeth2)に割り当てる方法
- radvdをトリガーして、各LAN I / F(eth1およびeth2)でRAを通知する方法は?
- 各LAN I / F上のDHCPv6サーバー(dhcpd6)をトリガーして、ISPのDHCPv6サーバーから受信した追加のネットワーク情報(name-servers、domain-searchlistおよびsip-servers-addresses)をアナウンスする方法
私の推測
「$ man dhclient」と「$ man dhclient-script」によると、dhclient-scriptはそのような設定を構成するために使用されているようで、いくつかのフックを提供します。しかし、今はDHCPv6-PDクライアントに対しては何もしません。
はい、IPv6ネットワーク構成に慣れていませんが、DHCPv6-PD環境に適したスクリプトをいくつか記述する必要がある場合があります。どなたか、dhclient-scriptの上記の設定を教えてください。[編集]実用的なdhclient-scriptを知りたい。
そして私は心配します、いくつかの特別な考慮が払われるべきです。たとえば、各IPv6アドレスには優先/有効な有効期間があるため、委任されたプレフィックスに基づいてグローバルIPv6アドレスをLANインターフェイスに割り当てる場合、IPv6アドレスだけでなく、委任から派生する必要があるその有効期間も割り当てる必要があります接頭辞の推奨/有効期間?
また、DHCPv6の再構成が発生したときに、LANインターフェイス上のradvdおよびDHCPv6サーバーを再構成する必要がある場合がありますか?どのフックを使用する必要がありますか?
[編集] DHCPv6の再構成が発生した場合、新しい情報と古い情報の両方をどのように発表するのですか?radvdは、前のプレフィックスが廃止されたことを自動的に通知しますか?DHCPv6サーバーは、以前のネームサーバーが廃止されたことを自動的に通知しますか?