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
    (文字列または数値) ルータ通知メッセージヘッダの 8 ビットフラグフィールドです。 このフィールドは、大文字小文字を区別する文字列か、 整数のいずれかで指定可能です。 文字列は、各文字が特定のフラグビットに対応する文字で構成されます。 整数は、有効ビットの論理 OR から成ります。 7 ビット目 ( 'm' か 0x80) は 管理アドレス設定フラグのビットを意味します。 そして 6 ビット目 ( 'o' か 0x40) はアザーステートフル設定フラグビットを意味します。 4 ビット目 ( 0x10) と 3 ビット目 ( 0x08) は、ルータの推奨度をコード化するために使用されます。 ビット 01 ( か 'h') は高を、00 は中を、11 ( か 'l') は低をそれぞれ意味します。 ビット 10 は予約であり、指定してはなりません。 明示的に中を指定する文字はありません。 フラグ全体のデフォルト値は 0 ( または空文字列) であり、追加設定方法無しで中のルータ推奨度を意味します。

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

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

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

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

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

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

pinfoflags
    (文字列または数値) プレフィックス情報オプション中の 8 ビットフラグフィールドです。 このフィールドは、大文字小文字を区別する文字列か、 整数のいずれかで指定可能です。 文字列は、各文字が特定のフラグビットに対応する文字で構成されます。 整数は、有効ビットの論理 OR から成ります。 7 ビット目 ( 'l' か 0x80) は オンリンクフラグビットです。そして 6 ビット目 ( 'a' か 0x40) は自律アドレス設定フラグビットです。 デフォルト値は "la" か 0xc0 であり、すなわち両方のビットが設定されています。

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

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 経路情報オプションを制御するための項目であり、 ルータ通知ヘッダに付与されます。 これらの項目はオプションです。 各項目には “rtplen2” のように数値を付加することが可能であり、 これにより複数のルータを指定可能です

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

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

rtflags
    (文字列もしくは数値) 経路情報オプション中の、8 ビットフラグ欄。 現在、推奨値のみが定義されています。 表現方法は raflags 欄と同じです。 ビット 4 ( 0x10) とビット 3 ( 0x08) が、経路の推奨度をコード化するために使用されます。 デフォルト値は 0x00 であり、中間の推奨度の経路です。

rtltime
    (数値) 経路情報オプション中の、経路の有効期間欄。 (単位: 秒) 。 仕様ではこの項目のデフォルト値を定義していませんので、 この項目は手動で指定する必要があります。 一方、 rtadvd は、この項目が未指定であることを許し、 その場合にはルータの有効期限をデフォルト値として使用します。 これは、古いバージョンのこのプログラムとの互換性のためです。

上記のリスト中では、 “rt” で開始するキーワードは、 “rtr” で開始するものと交換できます。 これは、後方互換性のためです。 例えば、 rtrplen は、 rtplen の代りとして受け付けられます。 しかしながら、 “rtr” で開始するキーワードは基本的に廃れたものであるので、 もはや使用すべきではありません。

また tc ケーパビリティを用いることで、他の行を参照することができます。 このケーパビリティの詳細に関しては termcap(5) を参照してください。

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

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

    ne0:\
    	:rltime#0:

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

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

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

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

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

Thomas Narten, Erik Nordmark, 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-xx.txt.

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