635 lines
21 KiB
Groff
635 lines
21 KiB
Groff
.\"COPYRIGHT 1989 by The Board of Trustees of Leland Stanford Junior University.
|
|
.\"
|
|
.\" %FreeBSD: src/usr.sbin/mrouted/mrouted.8,v 1.16.2.2 2000/12/27 16:23:17 ru Exp %
|
|
.\"
|
|
.\" jpman %Id: mrouted.8,v 1.3 1997/07/26 22:00:11 horikawa Stab %
|
|
.Dd May 8, 1995
|
|
.Dt MROUTED 8
|
|
.Os
|
|
.Sh 名称
|
|
.Nm mrouted
|
|
.Nd IP マルチキャストルーティングデーモン
|
|
.Sh 書式
|
|
.Nm
|
|
.Op Fl c Ar config_file
|
|
.Op Fl d Op Ar debug_level
|
|
.Op Fl p
|
|
.Sh 解説
|
|
.Nm
|
|
は、Distance-Vector Multicast Routing Protocol
|
|
(DVMRP) の実装です。
|
|
DVMRP の以前のバージョンは RFC1075 で規定されています。
|
|
本コマンドは distance-vector routing protocol
|
|
(RIP に似たプロトコルであり、RFC1058 に記述されています)
|
|
を使うことで、ネットワークトポロジに関する情報を管理し、
|
|
そのプロトコルの上で、Reverse Path Multicasting と呼ばれる
|
|
マルチキャストデータグラムフォワーディングアルゴリズムを実装しています。
|
|
.Pp
|
|
.Nm
|
|
は、マルチキャストデータグラムを、データグラムが生成されたサブネットを幹と
|
|
して樹状に構成されるパス上に、パスの最短距離を通過するようにして送出します。
|
|
マルチキャストツリーは目的のグループを含むサブネットを越えないブロード
|
|
キャストツリーと考えることができます。
|
|
したがって、データグラムはマルチキャストの受け手がいない枝には送出され
|
|
ません。
|
|
さらに、マルチキャストデータグラムパケットの生存時間によっては、到達で
|
|
きる範囲が限定される場合もあります。
|
|
.Pp
|
|
IP マルチキャストをサポートしない (ユニキャスト) ルータを介したサブネット間で、
|
|
マルチキャストを実現するために、
|
|
.Nm
|
|
の実装にはトンネリングのサポートも含まれます。トンネリングとは、
|
|
インターネットのあらゆるところにて稼働している
|
|
マルチキャストルータ
|
|
の組の間で仮想的なポイントツーポイントリンクを確立する技術です。
|
|
IP マルチキャストパケットは、トンネルを通過するところでカプセル化されます。
|
|
間にあるルータ及びサブネットにとっては、
|
|
カプセル化されたパケットは、
|
|
通常のユニキャストデータグラムに見えます。
|
|
トンネルの入口でカプセル化が行われ、トンネルの出口でカプセルが取り外されます。
|
|
パケットは、IP-in-IP プロトコル
|
|
(IP プロトコル番号 4)
|
|
を用いることでカプセル化を
|
|
行ないます。
|
|
古いバージョンの
|
|
.Nm
|
|
のトンネリングは、
|
|
IP ソースルーティングを用いたものですが、
|
|
これはルータによっては大きな負荷をかけることになります。
|
|
本バージョンでは、IP ソースルーティングを用いたトンネリングは
|
|
サポートしません。
|
|
.Pp
|
|
トンネリング機構の実装により、
|
|
.Nm
|
|
は、
|
|
実際のインターネットとは独立の、
|
|
マルチキャストパケットのみを扱う広範囲の自立システムに跨る
|
|
仮想インターネットを構築できます。
|
|
この機能は、
|
|
普通の (ユニキャスト) ルータによるマルチキャストルーティングの
|
|
広範囲なサポートがなされるまで、
|
|
インターネットマルチキャスティングのみを実験的に
|
|
サポートするように意図したものです。
|
|
.Nm
|
|
は distance vector ルーティングプロトコルが持つ
|
|
よく知られたスケーリングの問題の影響を被りますし、
|
|
階層的なマルチキャストルーティングを (まだ) サポートしていません。
|
|
.Pp
|
|
.Nm
|
|
はマルチキャストルーティングのみを扱いますので、同じ機械の上でユニキャ
|
|
ストルーティングソフトが走っていてもいなくても構いません。
|
|
トンネリングを利用すれば、
|
|
.Nm
|
|
はマルチキャストフォワーディングのためにひとつより多くの
|
|
物理的なサブネットにアクセスする必要がありません。
|
|
.Pp
|
|
次のオプションを使用可能です:
|
|
.Bl -tag -width indent
|
|
.It Fl c Ar config_file
|
|
別の設定コマンドファイルを指定します。
|
|
デフォルトは
|
|
.Pa /etc/mrouted.conf
|
|
です。
|
|
.It Fl d Op Ar debug_level
|
|
.Fl d
|
|
オプションが与えられないか、もしくは debug level として 0 が指定された
|
|
場合、
|
|
.Nm
|
|
は起動された端末から切り離されます。それ以外の場合は、
|
|
.Nm
|
|
は、起動された端末に残り、起動された端末からのシグナルを受け付けます。
|
|
debug level の指定の有無にかかわらず、
|
|
.Nm
|
|
は常に警告メッセージやエラーメッセージを syslogd に対して送ります。
|
|
.Fl debug-level
|
|
引数は、次に示すものをコンマで区切ったリストです:
|
|
.Bl -tag -width indent
|
|
.It "packet"
|
|
送受信したすべてのパケットに関し、タイプ・ソース・宛先を表示します。
|
|
.It "pruning"
|
|
送受信した枝苅りに関し、更なる情報を表示します。
|
|
.It "routing"
|
|
送受信した経路更新パケットに関し、更なる情報を表示します。
|
|
.It "route_detail"
|
|
経路更新に関し、過度に詳細な程表示します。
|
|
大概の場合、情報が多すぎるでしょう。
|
|
.It "neighbors"
|
|
隣接ルータ発見に関し、情報を表示します。
|
|
.It "cache"
|
|
カーネルのフォワーディングキャッシュに関し、挿入・削除・更新を表示します。
|
|
.It "timeout"
|
|
タイムアウトと定期処理をデバッグします。
|
|
.It "interface"
|
|
インタフェースとその設定に関し、情報を表示します。
|
|
.It "membership"
|
|
物理インタフェースにおけるグループメンバシップに関し、情報を表示します。
|
|
.It "traceroute"
|
|
このルータを通過するマルチキャスト経路追跡要求に関し、情報を表示します。
|
|
.It "igmp"
|
|
グループメンバシップおよび問い合わせ者選出を含む IGMP 操作を表示します。
|
|
.\" Display IGMP operation including group membership and querier election.
|
|
.\" including 以降はこれで良いのか?
|
|
.It "icmp"
|
|
ICMP 操作を監視します。
|
|
.It "rsrr"
|
|
RSRR 操作を監視します。
|
|
.El
|
|
.Pp
|
|
起動にともない、
|
|
.Nm
|
|
はそのプロセス ID を
|
|
.Pa /var/run/mrouted.pid
|
|
ファイルに
|
|
書き出します。
|
|
.El
|
|
.Sh 初期設定
|
|
.Nm
|
|
は、自動的にすべてのマルチキャスト可能なインタフェース、
|
|
つまり、IFF_MULTICAST フラグがセットされたインタフェース
|
|
(ループバックインタフェースは除きます) に対して初期化を行い、別の
|
|
DVMRP ルータ
|
|
に直接接続可能なインタフェースを探索します。
|
|
デフォルトの設定を上書きする、あるいは別の
|
|
マルチキャストルータ
|
|
に対するトンネルリンクを付加するには、
|
|
.Pa /etc/mrouted.conf
|
|
(もしくは
|
|
.Fl c
|
|
オプションによって指定されるファイル)
|
|
を編集します。
|
|
.Pp
|
|
ファイルの形式は自由です。すなわち、空白文字 (改行も含みます) は意味を
|
|
持ちません。
|
|
.Nm
|
|
の操作全体またはデフォルト設定に適用されるコマンドから、ファイルは開始します。
|
|
.Bl -tag -width indent
|
|
.It cache_lifetime Ar secs
|
|
カーネル内の
|
|
マルチキャストフォワーディングキャッシュ経路エントリの生存時間を、
|
|
秒で指定します。
|
|
カーネル内のマルチキャストフォワーディングキャッシュのエントリは、
|
|
.Ar secs
|
|
秒毎にチェックされ、ソースがアクティブな場合にはリフレッシュされ、
|
|
そうでない場合は削除されます。
|
|
この値を設定するときには注意してください。
|
|
小さな値を設定するとカーネルキャッシュは小さくなりますが、
|
|
定期的な送信者がいると
|
|
キャッシュの「スラッシング」が起るという弊害がありますし、
|
|
大きな値を設定すると許容できない程カーネルキャッシュが大きくなります。
|
|
デフォルトは 300 (5 分) です。
|
|
.It prune_lifetime Ar secs
|
|
親に送った枝苅りの平均生存時間を、秒で指定します。
|
|
実際の生存時間は [.5\fIsecs\fP,1.5\fIsecs\fP] の範囲でランダムとなります。
|
|
デフォルトは 7200 (2 時間) です。
|
|
小さな値を設定するとこのルータおよび親ルータが保存する状態は少なくなりますが、
|
|
ブロードキャストの頻度が高くなるという弊害があります。
|
|
隣接ルータのリブート判定に
|
|
DVMRP の世代 ID を使用しないルータがあります
|
|
(例えば 3.3 以前の mrouted と、cisco の IOS の現在知られている全バージョン)。
|
|
リブートからの回復時間を短縮するために、
|
|
これらの隣接ルータに送信した枝苅りを保持する時間は短くすべきです。
|
|
このような状況で使用する場合、後述するように
|
|
prune_lifetime キーワードをインタフェースに指定すると良いでしょう。
|
|
.It noflood
|
|
.Nm
|
|
は DVMRP 最適化を使用し、
|
|
各隣接ルータに対して個々にルーティングテーブルを持つことを避けます。
|
|
接続されている個々のサブネットに対し、
|
|
自己がフォワーダであると開始時に仮定することも、この最適化の一部です。
|
|
ちょうど今開始したルータと正しいフォワーダの両方が
|
|
トラフィックをフォワードすることにより、
|
|
短期間 (およそ経路報告間隔 1 回分) 重複が生じることがあります。
|
|
この動作は noflood キーワードを指定することにより停止できます。
|
|
.Nm
|
|
が自己をフォワーダであると仮定しなくなるためです。
|
|
noflood を指定すると、再開時におよそ経路報告間隔 1 回分、
|
|
ブラックホールを生じさせることがあります。
|
|
noflood キーワードは個々のインタフェースに指定可能です。
|
|
.It rexmit_prunes Ar [on|off]
|
|
デフォルトでは、
|
|
.Nm
|
|
は枝苅りを全ポイントツーポイントインタフェース (トンネル含む) に対して
|
|
再フォワードしますが、マルチアクセスインタフェースに対しては行いません。
|
|
本オプションを使用すると、全インタフェースに対してデフォルトをオン
|
|
(またはオフ) にします。
|
|
rexmit_prunes キーワードもまた個々のインタフェースに指定可能です。
|
|
.It name Ar "boundary-name scoped-addr/mask-len"
|
|
.Ar boundary-name
|
|
を
|
|
.Ar scoped-addr/mask-len
|
|
で記述される境界に関連付け、設定ファイルにおいて、
|
|
インタフェース設定を読み易くし、繰り返しを減らします。
|
|
.El
|
|
.Pp
|
|
設定ファイルの第 2 の部分は、空でも構いませんが、
|
|
物理インタフェースに適用されるオプションを記述します。
|
|
.Bl -tag -width indent
|
|
.It phyint Ar "local-addr|ifname"
|
|
phyint コマンド自身は何もしません。
|
|
単なる埋め草であり、この後にインタフェース固有のコマンドが続きます。
|
|
インタフェースのアドレスまたは名前を指定します。
|
|
.It disable
|
|
本インタフェースにおけるマルチキャストのフォワーディングを無効にします。
|
|
デフォルトでは、
|
|
.Nm
|
|
はローカルに接続されたマルチキャスト可能なインタフェースをすべて発見し、
|
|
それらすべてに対してフォワードします。
|
|
.It netmask Ar netmask
|
|
カーネルの netmask がサブネットを正確に反映していない場合
|
|
(例えば IP サブネット化の代りに代理 ARP 使用の場合)、
|
|
netmask コマンドを使用して実際の netmask を記述してください。
|
|
.It altnet Ar network/mask-len
|
|
phyint が複数の IP からなるサブネットに接続されている場合、
|
|
altnet キーワードを使用してそれぞれのサブネットについて記述して下さい。
|
|
本コマンドを複数回使用して、複数のサブネットを記述可能です。
|
|
.It igmpv1
|
|
phyint 上に IGMPv1 ルータが存在する場合、
|
|
\fBigmpv1\fP キーワードを使用して
|
|
.Nm
|
|
を強制的に IGMPv1 モードにしてください。
|
|
phyint 上の全ルータは、同じバージョンの IGMP を使用する必要があります。
|
|
.It force_leaf
|
|
このインタフェース上の他のルータを無視するように、
|
|
.Nm
|
|
に強制します。
|
|
mrouted は、本インタフェース上では、
|
|
隣接ルータへプローブや経路報告を送りませんし、受け付けません。
|
|
.El
|
|
.Pp
|
|
更に、後述する共通の vif コマンドを phyint に対してすべて使用可能です。
|
|
.Pp
|
|
設定ファイルの第 3 の部分は、これも空でも構いませんが、
|
|
このルータが持つ DVMRP トンネルの設定を記述します。
|
|
.Bl -tag -width indent
|
|
.It tunnel Ar "local-addr|ifname" Ar "remote-addr|remote-hostname"
|
|
このコマンドは、このホスト (
|
|
.Ar local-addr
|
|
または
|
|
.Ar ifname
|
|
で記述されるインタフェース) とリモートホスト (
|
|
.Ar remote-addr
|
|
または
|
|
.Ar remote-hostname
|
|
で識別されます) との間の DVMRP トンネルを確立します。
|
|
リモートのホスト名は、単一の IP アドレスにマップされる場合のみ使用可能です。
|
|
トンネルは、使用前に、両方のルータ上で構成されている必要があります。
|
|
.Pp
|
|
リモートアドレスへのユニキャスト経路が、
|
|
.Ar "local-addr|ifname"
|
|
で指定されるインタフェースから出て行くように気を付けてください。
|
|
.Nm
|
|
が扱うパケットのソースアドレスを、
|
|
送出インタフェースのアドレスに
|
|
書き換えてしまう UNIX カーネルがあります。
|
|
安全第一のためには、静的なホスト単位の経路を使用してください。
|
|
.El
|
|
.Pp
|
|
次の共通の vif コマンドを tunnel や phyint に対してすべて使用可能です。
|
|
.Bl -tag -width indent
|
|
.It metric Ar m
|
|
metric は、
|
|
指定したインタフェースもしくはトンネルでデータグラムを受信するための
|
|
「コスト」であり、経路選択に影響を与えるために使用します。
|
|
metric のデフォルト値は 1 です。metric は可能なかぎり小さくすべきです。
|
|
なぜなら、
|
|
DVMRP
|
|
は metric の合計が 31 を越える経路を通ることができないからです。
|
|
.It advert_metric Ar m
|
|
advert_metric は、
|
|
指定したインタフェースもしくはトンネルでデータグラムを送信するための
|
|
「コスト」であり、経路選択に影響を与えるために使用します。
|
|
advert_metric のデフォルト値は 0 です。
|
|
リンクの実際の metric は一端の metric ともう一端の advert_metric との和です。
|
|
.It threshold Ar t
|
|
threshold は最小の IP の生存時間であり、
|
|
この要件を満たすマルチキャストデータグラムは
|
|
指定したインタフェースもしくはトンネルにフォワードされます。
|
|
このパラメータは、
|
|
マルチキャストデータグラムの到達範囲を定めるために使用します。
|
|
(フォワードされたパケットの TTL は threshold と比較されるだけで、
|
|
threshold だけ TTL を減らすというわけではありません。
|
|
すべてのマルチキャストルータは TTL を丁度 1 づつ減らします。)
|
|
threshold のデフォルト値は 1 です。
|
|
.Pp
|
|
特定のサブネットやトンネルへ接続される
|
|
全マルチキャストルータは、そのサブネットやトンネルに対し、
|
|
一般的にはすべて同じ metric と threshold を持つべきです。
|
|
.It rate_limit Ar r
|
|
rate_limit オプションによって、
|
|
マルチキャストトラフィック用に何キロビット毎秒のバンド幅を割り当てるかを、
|
|
ネットワーク管理者は指定可能です。
|
|
デフォルト値は、0 (無制限) です。
|
|
.It boundary Ar "boundary-name|scoped-addr/mask-len"
|
|
boundary オプションは、ある範囲のアドレスに対する管理上の境界として、
|
|
インタフェースを設定します。
|
|
この範囲のアドレスに属するパケットは範囲内のインタフェース
|
|
にはフォワードされません。boundary オプションは名前もしくは境界にて指定します。
|
|
単一のインタフェースに対して本コマンドを複数回使用して、
|
|
複数の境界を記述可能です。
|
|
.It passive
|
|
もう一端から何かが聞こえるまで、
|
|
このリンクまたはトンネルに対してパケットを送出しません。
|
|
要求時にダイヤルするリンク上のトンネルにおける「サーバ」側で
|
|
使用すると良いです。
|
|
「サーバ」側を passive とすることで、
|
|
もう一方から何かが聞こえるまで定期的なプローブをサーバは送りませんので、
|
|
リンクをアップ状態に保つということはありません。
|
|
トンネルの両端でこのオプションを指定すると、
|
|
トンネルはいつになっても使えないでしょう。
|
|
.It noflood
|
|
前述の通りですが、このインタフェース/トンネルに対してのみ適用されます。
|
|
.It prune_lifetime Ar secs
|
|
前述の通りですが、このインタフェース/トンネルに対してのみ適用されます。
|
|
.It rexmit_prunes Ar "[on|off]"
|
|
前述の通りですが、このインタフェース/トンネルに対してのみ適用されます。
|
|
枝苅りの再送信のデフォルトは、
|
|
ポイントツーポイントリンクとトンネルではオンであり、
|
|
マルチアクセスリンクではオフです。
|
|
.It allow_nonpruners
|
|
デフォルトでは、枝苅りをサポートしないと主張する DVMRP 隣接ルータとは
|
|
.Nm
|
|
は仲間にはなりません。
|
|
本オプションを使用すると、本インタフェースにおいて、
|
|
このようなルータとも仲間となります。
|
|
.It notransit
|
|
経路フィルタリングの特殊ケースです。
|
|
\&"notransit" とマークされたインタフェースから学習された経路は、他の
|
|
\&"notransit" とマークされたインタフェースにおいて広告されません。
|
|
単一のインタフェースのみを "notransit" とマークしても、意味はありません。
|
|
.It accept|deny Ar "(route/mask-len [exact])+" Op bidir
|
|
.Li accept
|
|
および
|
|
.Li deny
|
|
のコマンドにより、原始的な経路フィルタリングが可能となります。
|
|
.Li accept
|
|
コマンドにより、設定されたインタフェースに関してリストされた経路のみ、
|
|
.Nm
|
|
は受け付けます。
|
|
.Li deny
|
|
コマンドにより、リストされた経路以外のすべての経路を、
|
|
.Nm
|
|
は受け付けます。
|
|
ひとつのインタフェースには、
|
|
.Li accept
|
|
または
|
|
.Li deny
|
|
のどちらかのみ使用可能です。
|
|
.Pp
|
|
.Li accept
|
|
と
|
|
.Li deny
|
|
のキーワードの後には、経路のリストが続きます。
|
|
経路の後にキーワード
|
|
.Ar exact
|
|
が続くと、その経路のみがマッチします。
|
|
指定しない場合には、その経路とより具体的な経路がマッチします。
|
|
例えば、
|
|
.Li deny 0/0
|
|
はすべての経路を拒否しますが、
|
|
.Li deny 0/0 exact
|
|
はデフォルト経路のみ拒否します。
|
|
デフォルト経路は
|
|
.Li default
|
|
キーワードで指定することも可能です。
|
|
.Pp
|
|
.Ar bidir
|
|
キーワードは双方向の経路フィルタリングを可能にします。
|
|
フィルタは、出力および入力の両方の経路に適用されます。
|
|
.Ar bidir
|
|
キーワードを指定しないと、
|
|
.Li accept
|
|
および
|
|
.Li deny
|
|
のフィルタは、入力に対してのみ適用されます。
|
|
Poison reverse 経路は、フィルタにより取り除かれることはありません。
|
|
.El
|
|
.Pp
|
|
.Nm
|
|
は 2 つ以上の有効な vif (仮想インタフェース) が無いときには実行を開始しません。
|
|
vif はマルチキャスト可能な物理インタフェースもしくはトンネルです。
|
|
すべての仮想インタフェースがトンネルの場合は警告が記録されます。
|
|
そのような
|
|
.Nm
|
|
の設定は、より多くの直接トンネルを指定した方が良いかもしれません
|
|
(中間管理者を削除するという意味です)。
|
|
.Sh 設定例
|
|
次に示すのは大きな学校にある架空のマルチキャストルータでの例です。
|
|
.Pp
|
|
.Bd -literal
|
|
#
|
|
# mrouted.conf の例
|
|
#
|
|
# 簡単に記述するため、境界に名前を付けます。
|
|
name LOCAL 239.255.0.0/16
|
|
name EE 239.254.0.0/16
|
|
#
|
|
# le1 は compsci に対する我々のゲートウェイであり、
|
|
# ローカルグループはそちらにフォーワードしません。
|
|
phyint le1 boundary EE
|
|
#
|
|
# le2 は classroom ネット上の我々のインタフェースであり、
|
|
# 4 つの異なった長さのサブネットがあります。
|
|
# IP アドレスでもインタフェース名でも使えることに注意。
|
|
phyint 172.16.12.38 boundary EE altnet 172.16.15.0/26
|
|
altnet 172.16.15.128/26 altnet 172.16.48.0/24
|
|
#
|
|
# atm0 は我々の ATM インタフェースであり、
|
|
# マルチキャストを正しくサポートしません。
|
|
phyint atm0 disable
|
|
#
|
|
# これは、別の EE サブネットに対する内部トンネルです。
|
|
# トンネルはイーサネット上にあるので、
|
|
# トンネルのデフォルトのレート制限を取り除きます。
|
|
tunnel 192.168.5.4 192.168.55.101 metric 1 threshold 1
|
|
rate_limit 0
|
|
#
|
|
# これは外世界に対する我々のトンネルです。
|
|
# これらの境界には注意してくださいね、Eugene (訳注: ユージーン; 人名)。
|
|
tunnel 192.168.5.4 10.11.12.13 metric 1 threshold 32
|
|
boundary LOCAL boundary EE
|
|
.Ed
|
|
.Sh シグナル
|
|
.Nm
|
|
は次のシグナルに反応します。
|
|
.Bl -tag -width indent
|
|
.It HUP
|
|
.Nm
|
|
を再スタートします。
|
|
設定ファイルは再度読み込まれます。
|
|
.It INT
|
|
後かたづけをしてから実行終了します
|
|
(たとえば、隣接するルータすべてにさよならのメッセージを送ります)。
|
|
.It TERM
|
|
INT と同じです。
|
|
.It USR1
|
|
内部ルーティングテーブルを
|
|
.Pa /var/tmp/mrouted.dump
|
|
にダンプします。
|
|
.It USR2
|
|
内部キャッシュテーブルを
|
|
.Pa /var/tmp/mrouted.cache
|
|
にダンプします。
|
|
.It QUIT
|
|
内部ルーティングテーブルを stderr にダンプします。
|
|
ただし、
|
|
.Nm
|
|
が 0 以外の debug level の時のみです。
|
|
.El
|
|
.Pp
|
|
シグナルを送る際の便宜のために、
|
|
.Nm
|
|
は開始時に自身のプロセス ID を
|
|
.Pa /var/run/mrouted.pid
|
|
に書き出します。
|
|
.Sh 使用例
|
|
ルーティングテーブルは次のようになります:
|
|
.Pp
|
|
.Bd -literal
|
|
Virtual Interface Table
|
|
Vif Local-Address Metric Thresh Flags
|
|
0 36.2.0.8 subnet: 36.2/16 1 1 querier
|
|
groups: 224.0.2.1
|
|
224.0.0.4
|
|
pkts in: 3456
|
|
pkts out: 2322323
|
|
|
|
1 36.11.0.1 subnet: 36.11/16 1 1 querier
|
|
groups: 224.0.2.1
|
|
224.0.1.0
|
|
224.0.0.4
|
|
pkts in: 345
|
|
pkts out: 3456
|
|
|
|
2 36.2.0.8 tunnel: 36.8.0.77 3 1
|
|
peers: 36.8.0.77 (3.255)
|
|
boundaries: 239.0.1/24
|
|
: 239.1.2/24
|
|
pkts in: 34545433
|
|
pkts out: 234342
|
|
|
|
3 36.2.0.8 tunnel: 36.6.8.23 3 16
|
|
|
|
Multicast Routing Table (1136 entries)
|
|
Origin-Subnet From-Gateway Metric Tmr In-Vif Out-Vifs
|
|
36.2 1 45 0 1* 2 3*
|
|
36.8 36.8.0.77 4 15 2 0* 1* 3*
|
|
36.11 1 20 1 0* 2 3*
|
|
.
|
|
.
|
|
.
|
|
.Ed
|
|
.Pp
|
|
この例では、4 つの vif が 2 つのサブネットと
|
|
2 つのトンネルにつながっています。
|
|
vif 3 がつながったトンネルは使われていません
|
|
(peer アドレスが有りません)。
|
|
vif 0 と vif 1 がつながったサブネットには
|
|
いくつかのグループが有ります。
|
|
トンネルにはグループは有りません。
|
|
この例の
|
|
.Nm
|
|
は、
|
|
\&"querier" フラグが示すように、
|
|
定期的なグループメンバシップの問い合わせを vif 0 および vif 1 サブネットにて
|
|
送出する責任が有ります。
|
|
境界のリストは当該インタフェースのアドレス範囲が示されます。
|
|
入力及び出力パケット数が各インタフェースに対して示されます。
|
|
.Pp
|
|
マルチキャストデータグラムの起源となりうるサブネットに関連して
|
|
表示される情報は、
|
|
直前のホップのルータのアドレス(サブネットが直接接続されていない場合)、
|
|
起源までのパスの metric、
|
|
当該サブネットから最後に更新を受信してから経過した時間、
|
|
当該起源からのマルチキャストが入力される vif、
|
|
出力 vif 一覧です。
|
|
\&"*" は、
|
|
起源を根とするブロードキャストツリーの葉に、
|
|
当該出力 vif が接続していることを意味します。
|
|
宛先グループのメンバが当該葉にいる時のみ、
|
|
当該起源からのマルチキャストデータグラムを当該出力 vif からフォワードします。
|
|
.Pp
|
|
.Nm
|
|
はカーネル内のフォワーディングキャッシュテーブルも管理します。
|
|
エントリの生成及び削除は
|
|
.Nm
|
|
が行います。
|
|
.Pp
|
|
キャッシュテーブルは次のようなものです:
|
|
.Pp
|
|
.Bd -literal
|
|
Multicast Routing Cache Table (147 entries)
|
|
Origin Mcast-group CTmr Age Ptmr IVif Forwvifs
|
|
13.2.116/22 224.2.127.255 3m 2m - 0 1
|
|
>13.2.116.19
|
|
>13.2.116.196
|
|
138.96.48/21 224.2.127.255 5m 2m - 0 1
|
|
>138.96.48.108
|
|
128.9.160/20 224.2.127.255 3m 2m - 0 1
|
|
>128.9.160.45
|
|
198.106.194/24 224.2.135.190 9m 28s 9m 0P
|
|
>198.106.194.22
|
|
.Ed
|
|
.Pp
|
|
各エントリは起源のサブネット番号、マスク、宛先マルチキャストグループにて
|
|
区別します。
|
|
.Pp
|
|
\&'CTmr' フィールドは当該エントリの生存時間を表します。
|
|
このタイマ値が 0 まで減算されたエントリはキャッシュテーブルから削除されます
|
|
(エントリはトラフィックが流れるとリフレッシュされます)。
|
|
\&'Age' フィールドはこのエントリが最初に生成されてから経過した時間を表します。
|
|
キャッシュエントリはリフレッシュされるため、
|
|
当該エントリに関するトラフィックが続く限りルーティングエントリは生き残ります。
|
|
.Pp
|
|
\&'Ptmr' フィールドは、上流に枝刈が送出されていなければ単に -、
|
|
そうでないばあいには上流の枝刈がタイムアウトするまでの時間を表します。
|
|
.Pp
|
|
\&'Ivif' フィールドは起源からのマルチキャストパケットが入力される vif
|
|
を表します。
|
|
各ルータは特定のソース及びグループに関し、
|
|
隣接するルータより受信する枝刈数の記録も管理します。
|
|
あるサブネットに関してマルチキャストツリーの下流の枝において
|
|
マルチキャストグループのメンバが存在しない場合、
|
|
上流のルータに対して枝刈メッセージが送信されます。
|
|
この場合、vif 番号の後に
|
|
\&"P" が付けられます。
|
|
.Pp
|
|
\&'Forwvifs' フィールドは
|
|
ソースグループに属するデータグラムがフォワードされる
|
|
インタフェースを表します。
|
|
\&"p" は、このインタフェースを介してフォワードされるデータグラムが存在しない
|
|
ことを表します。
|
|
リストされないインタフェースは葉のサブネットであり、
|
|
特定のグループのメンバを当該サブネットに持ちません。
|
|
インタフェースにおける "b" の表示は、
|
|
当該インタフェースが境界インタフェースであることを表します。
|
|
すなわち、範囲内のアドレスのトラフィックは
|
|
当該インタフェースを介してフォワードされないことを意味します。
|
|
.Pp
|
|
\&">" を最初の文字として表示する追加の行は、
|
|
当該サブネット上のソースを表します。
|
|
1 つのサブネット上に複数のソースが存在可能であることに注意して下さい。
|
|
\&"<" を最初の文字として表示する追加の行は、
|
|
このサブネットもしくはグループに関して、
|
|
下流の隣接ルータから受信した枝苅りを表示します。
|
|
.Sh 関連ファイル
|
|
.Bl -tag -width /var/tmp/mrouted.cache -compact
|
|
.It Pa /etc/mrouted.conf
|
|
.It Pa /var/run/mrouted.pid
|
|
.It Pa /var/tmp/mrouted.dump
|
|
.It Pa /var/tmp/mrouted.cache
|
|
.El
|
|
.Sh 関連項目
|
|
.Xr map-mbone 8 ,
|
|
.Xr mrinfo 8 ,
|
|
.Xr mtrace 8
|
|
.Pp
|
|
DVMRP は、
|
|
他のマルチキャスト経路制御アルゴリズムと共に、
|
|
ACM SIGCOMM '88 コンファレンスのプロシーディングに、
|
|
S. Deering が
|
|
\&"Multicast Routing in Internetworks and Extended LANs"
|
|
として記述しています。
|
|
.Sh 作者
|
|
.An Steve Deering ,
|
|
.An Ajit Thyagarajan ,
|
|
.An Bill Fenner
|