RTADVD.CONF(5)

名称
rtadvd.conf - ルータ通知デーモンの設定ファイル

解説
このファイルには各インタフェースに対して、 ルータ通知パケットをどのように組み立てなければならないかを記述します。

rtadvd(8) の記述のように、特別な設定が必要で無い限りにおいては、 この設定ファイルを設定する必要はまったくありません。 このファイルがまったく存在しなくてかまいません。 この場合、 rtadvd デーモンは、仕様で指定されるデフォルト値を仕様して、自己を自動設定します。

記述方法は有名な termcap(5) ファイルのフォーマットに従います。 ファイル中の各行にはネットワークインタフェースを記述します。 フィールドはコロン (): により区切られ、 各フィールドは 1 つのケーパビリティの記述を含みます。 行は ‘\’ により次の行へ続けることができます。 コメントは ‘#’ で始まります。

ケーパビリティ
ケーパビリティは ICMPv6 ルータ通知メッセージを埋めるため、また rtadvd(8) の振る舞いを制御するための値を記述します。 したがって、もしサンプルの定義ファイルを変更したいのであれば、 前述のように IETF 近隣探索文書を読むことが推奨されます。

ほとんど全ての項目はデフォルト値を持っていることに 注意してください。 項目を省略すると、項目のデフォルト値が使用されます。

ルータ通知を送信する間隔を制御するための 2 つの項目があります。 これらの項目は省略可能であり、この場合には rtadvd はデフォルト値を使用します。

maxinterval
    (数値) 要請されていないマルチキャストルータ通知を送信する間隔の 最大時間です (単位 : 秒) 。デフォルト値は 600です。この値は 4 以上 1800 以下でなければなりません。

mininterval
    (数値) 要請されていないマルチキャストルータ通知を送信する間隔の 最小時間です (単位: 秒) 。デフォルト値は maxinterval の 3 分の 1 の値です。 この値は 3 以上 .75 * maxinterval の値以下でなければなりません。

以下の項目は ICMPv6 ルータ通知メッセージヘッダのためのものです。 これらの項目は省略可能であり、この場合には rtadvd はデフォルト値を使用します。

chlim
    (数値) カレント中継限界数フィールドに対する値です。 デフォルト値は 64 です。

raflags
    (数値) ルータ通知メッセージヘッダのフラグフィールドです。 7 ビット目 (0x80) は 管理アドレス設定フラグのビットを意味します。 そして 6 ビット目 (0x40) はアザーステートフル設定フラグビットを意味します。 4 ビット目 (0x10) と 3 ビット目 ( (0x08)) は、ルータの推奨度をコード化するために使用されます。 0x01 は高を、0x00 は中を、0x11 は低をそれぞれ意味します。 デフォルト値は 0 です。

rltime
    (数値) ルータ有効期間フィールドです (単位: 秒) 。この値は 3600000 以下でなければなりません。 rtadvd がホスト上で実行される場合、 rtadvd(8) で記述されているように、通知中の全インタフェース上で、 この値を明示的に 0 に設定する必要があります。 デフォルト値は 1800 です。

rtime
    (数値) 到達可能時間フィールドです (単位: ミリ秒) 。デフォルト値は 0 であり、これはこのルータにより 指定されないことを意味しています。

retrans
    (数値) 再送タイマフィールドです。 (単位: ミリ秒) 。デフォルト値は 0 であり、これはこのルータにより 指定されないことを意味しています。

以下は ICMPv6 プレフィックス情報オプションに対する項目であり、 ルータ通知ヘッダに付与されます。 これらの項目は省略可能であり、この場合には rtadvd は自動的に適切なプレフィックスをカーネルの経路表から取得して、 このプレフィックスをデフォルトパラメータと共に通知します。

clockskew
    (数値) リンク伝播遅延を調整するためのスキューであり、 リンク上のルータ間のクロックスキュー (単位: 秒)。 この値は、ローカルに設定されたプレフィックスの有効期間と 通知されたプレフィックスの有効期間との無矛盾性の確認に使用されます。 この値が意味を持つのは、 ローカルルータが、リンク上のプレフィックスを、 実時間で減少する有効期付きで設定するときです。 値が 0 の場合、このようなプレフィックスに対する無矛盾性の確認は行われません。 デフォルト値は 0 です。

addrs
    (数値) プレフィックスの番号です。 デフォルトは 0 であり、 もし、何かプレフィックス情報オプションを指定したいのであれば、 明示的に正の値を設定しなければなりません。 もし値が 0 であれば、 rtadvd(8) はシステムの経路表を検索し、 対応するインタフェース経路のプレフィックスを通知します。 値が 1 より大きい場合、以下の各項目に対してプレフィックスの インデックスを指定しなければなりません。 インデックスは N を addrs の値とすると、0 から N-1 までの値を取ります。 各インデックスは、 例えば “prefixlen2” のように、各項目の名前に続ける必要があります。

prefixlen
    (数値) プレフィックス長フィールドです。 デフォルト値は 64 です。

pinfoflags
    (数値) プレフィックス情報オプション中のフラグフィールドです。 7 ビット目 (0x80) は オンリンクフラグビットです。そして 6 ビット目 (0x40) は自律アドレス設定フラグビットです。 デフォルト値は 0xc0 であり、すなわち両方のビットが設定されています。

addr
    (文字列) プレフィックスフィールドに埋められるアドレスです。 termcap(5) ファイルフォーマットで、 IPv6 数値アドレスと同様に “”: が使われているために、フィールドはダブルクォート文字によって クォートされなければなりません。 このフィールドは addrs の値が 0 より大きい場合、省略することができません。

vltime
    (数値) 正当な有効期間フィールドです (単位: 秒) 。デフォルト値は 2592000 (30 日) です。

vltimedecr
    (ブール値) この項目は、 通知された有効期間が実時間で減らされることを意味します。 デフォルトで無効化されています。

pltime
    (数値) 推奨有効期間フィールドです (単位: 秒) 。デフォルト値は 604800 (7 日) です。

pltimedecr
    (ブール値) この項目は、 通知された推奨有効期間が実時間で減らされることを意味します。 デフォルトで無効化されています。

以下は ICMPv6 MTU に対する項目であり、 ルータ通知ヘッダに付与されます。 この項目は省略可能であり、この場合には rtadvd はデフォルト値を使用します。

mtu (数値もしくは文字列) MTU (最大転送単位) フィールドです。 0 が指定された場合には、オプションは含まれません。 デフォルト値は 0 です。 もしこの項目に特別な文字列 “auto” が指定された場合、MTU オプションは含まれ、 その値はインタフェースの MTU に自動的に設定されます。

以下は ICMPv6 始点データリンク層アドレスオプションを制御するための項目であり、 ルータ通知ヘッダに付与されます。 前述のように、この項目は省略可能であり、この場合には rtadvd はデフォルト値を使用します。

nolladdr
    (ブール値) デフォルトでは (もし nolladdr が指定されない場合)、 rtadvd(8) は、インタフェースに対するデータリンク層アドレスを カーネルから取得しようと試み、 それを始点データリンク層アドレスオプションに付与します。 もしこのケーパビリティが存在する場合、 rtadvd(8) はルータ通知パケットに、始点データリンク層アドレスオプションを付与しません。

以下は ICMPv6 ホームエージェント情報オプションを制御するための項目であり、 モバイル IPv6 サポートで定義されています。 このオプションは、他のオプション同様、ルータ通知ヘッダに付与されます。

hapref
    (数値) ホームエージェントの推奨を設定します。 非 0 に設定する場合、 hatime もまた存在する必要があります。

hatime
    (数値) ホームエージェントの有効期間を指定します。

rtadvd(8) でモバイル IPv6 サポートを有効にすると、 maxinterval を明示的に構成することにより、 通知間隔オプションがルータ通知パケットに付加されます。

以下は ICMPv6 経路情報オプションを制御するための項目であり、 ルータ通知ヘッダに付与されます。 これらの項目はオプションです。

routes
    (数値) 経路数。 デフォルト値は 0 です。 経路情報オプションを指定したい場合には、 明示的に正の値を設定する必要があります。 この値が 0 の場合、経路情報は送信されません。 この値が 1 より大きい場合、以下の項目に対し、 経路のインデックスを指定する必要があります。 インデックスは 0 から N-1 までで、N は routes の数です。 インデックスは各項目の名前の後に続き、例えば “rtrplen2” となります。

rtrplen
    (数値) 経路情報オプション中の、プレフィックス長。 デフォルト値は 64 です。

rtrflags
    (数値) 経路情報オプション中の、フラグ欄。 ビット 4 (0x10) とビット 3 ( (0x08)) が、経路の推奨度をコード化するために使用されます。 デフォルト値は 0x00 であり、中間の推奨度の経路です。

rtrprefix
    (文字列) 経路情報オプション中の、プレフィックス欄に埋められるプレフィックス。 termcap(5) ファイルフォーマットで、 IPv6 数値アドレスと同様に “”: が使われているために、フィールドはダブルクォート文字によって クォートされなければなりません。 addrs が 0 より大の場合、この欄は省略不可です。

rtrltime
    (数値) 経路情報オプション中の、経路の有効期間欄。 (単位: 秒)。 デフォルト値は 2592000 (30 日) (現在 draft-draves-router-selection-01.txt には指定されていません)。
また tc ケーパビリティを用いることで、他の行を参照することができます。 このケーパビリティの詳細に関しては termcap(5) を参照してください。

使用例
前述のように、通知される全パラメータは仕様で定義されるデフォルト値があります。 よって、特別な非デフォルト値を使用したいので無い限りにおいては手動 で設定する必要はありません。 誤った設定パラメータを使用すると、相互操作の問題が生じ得ます。

設定パラメータを変えるには、パラメータだけを指定すれば良いです。 次の設定では、 rtadvd(8) は ne0 インタフェースのルータ有効期間パラメータを変えます。

    ne0:\
    	:rltime#0:

次の例は、 ef0 インタフェースから通知されるプレフィックスを手動で設定します。 この設定は、 -s オプション付きの rtadvd(8) で使用することが必要です。

    ef0:\
    	:addrs#1:addr="3ffe:501:ffff:1000::":prefixlen#64:

次の例は、明示的な方法でデフォルト値を示しています。 この設定は、単に参照のためだけに提供されています。 あなた自身が設定する必要はまったくありません。

    default:\
    	:chlim#64:raflags#0:rltime#1800:rtime#0:retrans#0:\
    	:pinfoflags#192:vltime#2592000:pltime#604800:mtu#0:
    ef0:\
    	:addrs#1:addr="3ffe:501:ffff:1000::":prefixlen#64:tc=default:

関連項目
termcap(5), rtadvd(8), rtsol(8)

Thomas Narten, Erik Nordmark and W. A. Simpson, “ Neighbor Discovery for IP version 6 (IPv6) ”, RFC 2461

Richard Draves, “ Default Router Preferences and More-Specific Routes ”, draft-ietf-ipngwg-router-selection-01.txt

歴史
rtadvd(8) と設定ファイル rtadvd.conf はWIDE Hydrangea IPv6 プロトコルスタックキットではじめて登場しました。