DHCPv6-PDサーバーによる委任されたプレフィックスに基づいて、radvd、dhcpd6、ルーティング、および/ 64サブネットを構成する方法


10

私の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サーバーは、以前のネームサーバーが廃止されたことを自動的に通知しますか?

回答:


4

質問の答えはわかりませんが、DHCPサーバーアドレスをデフォルトのルーターとして使用することについて警告します。それが機能する場合、それは偶然です... IPv6では、デフォルトルートはDHCPではなくRAによって通信されます。

転送を有効にし、RAを受け入れ、RSを送信する必要があります。ここでの問題は、Centos6に含まれているカーネルではそれができないことです。転送を有効にすると、RAの受け入れとRSの送信が無効になります。ただし、関連するパッチが適用されたCentosPlusカーネルが必要です。http://lists.centos.org/pipermail/centos/2011-April/thread.html#109756にあるメーリングリストのスレッド/メッセージをご覧ください。

関連するsysctl.conf設定は次のとおりです。

net.ipv6.conf.all.forwarding=1
net.ipv6.conf.eth0.accept_ra=2
net.ipv6.conf.eth0.accept_ra_defrtr=1
net.ipv6.conf.eth0.router_solicitations=1

2
実際には、accept_raを2にする必要があります(ルーティングが有効になっている場合でも受け入れます)。そうでない場合、カーネルはルーター上でそれを無視します。
カイルバット

2
  • DHCPv6 PDを使用して追加のサブネットを取得する前に、IPv6のデフォルトルートを、デフォルト(上流)のインターネット接続で取得したものでセットアップする必要があります。アップストリームへの実際の接続方法については言及していません。そのため、私はお手伝いできません。
  • ISCではなくWIDE DHCPv6クライアントを使用しているため、具体的な方法がわかりませんが、ISCには次のWIDE構成オプションと同等のものがあると思います。

    id-assoc pd {
        prefix-interface eth0 {
            sla-id 1;
            sla-len 4;
        };
    };
    

    基本的に、DHCPクライアントに、サブネットを内部インターフェイスに割り当てる方法を伝えます。上記の構成は、私が私(にプレフィックス委任の4ビットを取得しています」と言うsla-len 4)、最初に使用可能なサブネットを(取るsla-id 1)とに割り当てeth0prefix-interface eth0)。

  • 適切なinterfaceスタンザを使用してradvdをセットアップし(radvd.confmanページに作業の良い例があります)、それで問題なく動作します。
  • そこであなたを助けることはできません。テスト以外は、DHCPv6サービスを使用していません(DHCPサーバーからすべてのDHCP情報を取得しています)。

ご回答有難うございます。1.アップストリームの接続方法は、イーサネットケーブルをFTTH GE-PONに接続するだけです。現在、DHCPv6を介してデフォルトのIPv6ルートを指定する方法はありません。DHCPv6サーバーのリンクローカルアドレスをデフォルトルートと見なす必要があります。
takaomag

2.言及しませんでしたが、ISC dhclientを使用する理由は、ルーターが要請メッセージと要求メッセージでDHCPv6オプション16(ベンダークラス)を送信して、ベンダー固有の情報オプションを取得する必要があるためです。 ISP固有の情報(SIP電話番号、ファームウェアサーバーアドレス)。ISC dhclientでオプション16を設定する方法は知っていますが、WIDE-dhcpv6ではそれがわかりません。また、ISC dhclientで「id-assoc」などの設定が見つかりません。
takaomag

2
3,4。DHCPv6サーバーからの情報(プレフィックスなど)に基づいてradvd.confおよびdhcpd6.confを構築するために、いくつかの貧弱なスクリプトを作成できる場合があります。しかし、DHCPv6の再構成が発生した場合、新しい情報と古い情報の両方をどのように通知するのですか?radvdは、前のプレフィックスが廃止されたことを自動的に通知しますか?DHCPv6サーバーは、以前のネームサーバーが廃止されたことを自動的に通知しますか?
takaomag

とにかく、実用的なdhclient-scriptを知りたいです。
takaomag 2011

回答のコメントにこのすべての情報を追加しないでください。質問に追加してください
ウォンブル

-1

Wombieは、radvとルーティングのセットアップに使用するのと同じ答えを出しました。Inet6は、DHCPサーバーを必要とせずに自己構成を行うように設計されています。

DHCPv6はradvdおよびzeroconfで処理できるため、私はDHCPv6を使用しません。radvdは、ネームサーバーを提供するように構成でき、/ etc / resolv.confからサーバーをアドバタイズできます。radvdの新しいバージョンでは、検索リストの配布も実装されています。

ネームサービスとサーバーをクライアントに配布するようにavahi-daemonを構成しました。クライアントがサービスディスカバリを実行できる必要があります。全面的にデュアルスタックネットワークを実行しているため、サービスディスカバリのテストはあまり行っていません。


DHCPv6サーバーとradvdのどちらを使用する場合でも、DHCPv6サーバーからの情報(プレフィックスなど)に基づいてdhcpd6.confまたはradvd.confを動的に構築するスクリプトをいくつか作成する必要があります。しかし、DHCPv6の再構成が発生した場合、新しい情報と古い情報の両方をLAN側のホストに通知するにはどうすればよいですか。DHCPv6サーバーからの新しい情報のみに基づいて動的に新しいdhcpd6.confまたはradvd.confを構築すると、radvdは以前のプレフィックスが廃止されたことを自動的に通知しますか?DHCPv6サーバーは、以前のネームサーバーが廃止されたことを自動的に通知しますか?
takaomag 2011

radvdは、:: / 64プレフィックスを使用して、インターフェースからアドレスを自動的に取得できます。設定を書き直す必要はありません。DNSサーバーと検索リストは静的データである必要があります。IPv6自動構成は、アドレスの移行を処理するように設計されています。ISPが移行をどの程度サポートしているかはわかりません。DHCPv6を見たことはありません。
BillThor '05 / 08/05
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.