RTSOLD(8)

名称
rtsold, rtsol - ルータ要請デーモン

書式
rtsold [-dDfFm1] [-O script-name] interface ... rtsold [-dDfFm1] [-O script-name] -a rtsol [-dD] [-O script-name] interface ... rtsol [-dDF] [-O script-name] -a

解説
rtsold ユーティリティは、 ICMPv6 ルータ要請メッセージを、指定されたインタフェース上で送信します。 ノードがリンクに (再) 接続された場合、 rtsold は、リンクローカルスコープの全ルータ宛マルチキャストアドレスへ、 ルータ要請メッセージを送信します。 これは、 新規ルータを発見して非リンクローカルアドレスを取得することを目的としています。

rtsold ユーティリティは、IPv6 ホスト (非ルータノード) のみで実行すべきです。

本プログラムを rtsol として起動した場合、デーモンにならずに、プローブを指定した interface から送出します。 言い換えるなら、 rtsol は “ rtsold -f1 interfaces ” のように動作します。

特に rtsold は、次のいずれかのイベント後に、 最大 3 個のルータ要請を単一インタフェースから送信します:

•   rtsold デーモンの起動直後。
•   一時的なインタフェース障害後のインタフェース立ち上げ。 rtsold ユーティリティは、定期的にインタフェースの状態が活動中か否かを調べ、 この種の障害を検出します。 ネットワークカードとドライバによっては、 リンク状態を引き出すことを許さないものがあることに注意してください。 このような場合、 rtsold はインタフェース状態の変化を検出できません。
•   -m オプションが指定され、 rtsold デーモンがインタフェース状態を取得できない場合、60 秒毎。 この機能は IPv6 近隣探索仕様に適合しませんが、 可搬ステーション用に提供されています。 ルータ通知のデフォルトインターバルは 10 分単位ですが、 これは可搬ステーションにとってはやや長いです。 この機能はこのようなステーション用に提供されており、 ステーションが他のリンクに接続された後 すみやかに新しいルータを発見できるようにします。

ひとたび rtsold がルータ要請を送信して有効なルータ通知を受信すると、 前述のいずれかのイベントが発生するまで、 このインタフェースからはもう要請を送信しなくなります。

インタフェース上でルータ要請を送信するとき、 このインタフェースがリンク層アドレスを持つ場合には、 rtsold は始点リンク層アドレスオプションを含めます。

rtsold はインタフェース毎のパラメータを管理し、 ホストアドレス以外の設定パラメータのために別のプロトコルが必要かどうか 検出します。 起動時には、このフラグは FALSE ですが、 OtherConfig フラグがセットされたルータ通知をデーモンが受け取ると、 このフラグは TRUE になります。 この場合を取り扱うスクリプトを指定可能です (後述) 。 条件イベントのいずれかにより rtsold がルータ要請メッセージを再送開始すると、 デーモンはこのパラメータをリセットします。 これは、当該イベントが接続リンクの変更を意味するかもしれないからです。

シグナル SIGUSR1 を受信すると、 rtsold は現在の内部状態を /var/run/rtsold.dump にダンプします。

オプションは次の通りです:

-a  出力インタフェースを自動検出します。 rtsold ユーティリティは、非ループバック、非 point-to-point、 IPv6 可能なインタフェースを見付けようとします。 rtsold が複数のインタフェースを見付けると、 rtsold はエラーで終了します。

-d  デバッギングを有効にします。

-D  より多くのデバッギングを有効にし、内部タイマ情報も表示します。

-f  -f は rtsold がデーモンになることを妨げます (フォアグラウンドモード)。 syslog(3) の代りに標準エラー出力に対して、警告メッセージが生成されます。

-F  rtsold に関係する sysctl(8) の変数を自身で設定します。 -F を指定しなければ、 rtsold は現在の sysctl(8) の設定を変更せずに、それに従います。

-m  可搬サポートを有効にします。 本オプションが指定されると、ノードがインタフェースに (再) 接続された時、 ルータ通知を行っていたデフォルトルータに対して、 rtsold はプローブパケットを送信します。 更に、本オプションが指定された場合には、 SIOCGIFMEDIA ioctl をサポートしないインタフェース上で、 rtsold は定期的にルータ要請を送信します。

-1  1 回だけ調べます。 有効なルータ通知パケットが、各 interface 上で最低 1 度は到着するまで、ルータ要請パケットを送ってから、終了します。

-O script-name
    ルータ通知の Other Configuration フラグを扱うための、 付属スクリプトを指定します。 フラグが FALSE から TRUE へ変化したとき、 受信インタフェース名という単一の引数と共に、 rtsold は script-name を起動します。 これにより、スクリプトが他の設定のためのプロトコルを開始することを 期待しています。 script-name はルートからスクリプトへの絶対パスであることが必要であり、 通常ファイルであること、所有者が rtsold の実行者と同じであることも必要です。

診断

関連ファイル
/var/run/rtsold.pid
    現在実行中の rtsold の PID。
/var/run/rtsold.dump
    ここに内部状態をダンプします。

関連項目
rtadvd(8), sysctl(8)

歴史
rtsold ユーティリティは、WIDE/KAME IPv6 プロトコルスタックキットではじめて登場した rtsol ユーティリティを元にしています。 rtsol ユーティリティは現在 rtsold に組み込まれています。

バグ
オペレーティングシステムによっては、 PCMCIA ネットワークカードを取り除いて再挿入したときに、 対応するインデックスが変わってしまうものがあります。 しかしながら、 rtsold はそのような変更の発生を仮定せず、起動時に得たインデックスを常に使用します。 その結果、ネットワークカードを再挿入したときに rtsold が動作しないかもしれません。 そのような場合には、 rtsold を殺して再起動してください。

IPv6 自動設定仕様は、単一インタフェースホストを仮定しています。 複数インタフェースを持つホストを自動設定しようとする場合、 カーネルのエラーメッセージを見ると良いでしょう。 また、 rtsold が複数の interface を受け付けることは、矛盾して見えます。