以下に示す netstat -r
の出力の例を使って, ルーティン
グがいろいろと異なっている様子を説明することにします.
Destination Gateway Flags Refs Use Netif Expire
default outside-gw UGSc 37 418 ppp0
localhost localhost UH 0 181 lo0
test0 0:e0:b5:36:cf:4f UHLW 5 63288 ed0 77
10.20.30.255 link#1 UHLW 1 2421
foobar.com link#1 UC 0 0
host1 0:e0:a8:37:8:1e UHLW 3 4601 lo0
host2 0:e0:a8:37:8:1e UHLW 0 5 lo0 =>
host2.foobar.com link#1 UC 0 0
224 link#1 UC 0 0
最初の2行はデフォルトルート(次の節で詳しく説明します)と,
localhost
への経路を示しています.
localhost
のためのインタフェース (Netif
の欄)
はlo0
で, これはループバックデバイスとして知られています.
結局のところ戻るだけなので, この destinationへのすべてのトラフィ
ックが内部的に処理されるのであって, LAN を経由して送られるのでは
ありません.
次の行では``0:e0:...
''というアドレスに注目しましょう.
これはイーサネットハードウェアアドレスです. FreeBSDは自動的に
ローカルなイーサネット上の任意のホスト (この例ではtest0
)
を見つけ, イーサネットインタフェースed0
の所にそのホスト
への経路を直接つけ加えます. タイムアウト時間 (Expire
の
欄) も経路のタイプと結びついており, 指定された時間が経過しても応
答がないときに使用します. この場合, 経路情報は自動的に削除されま
す. これらのホストは, RIP(Routing Information Protocol) という,
最短パスの判定に基づいてローカルホストへの経路を決定する仕組みを
利用することで認識されます.
更に, FreeBSDではローカルサブネット (10.20.30.255
は
10.20.30
というサブネットに対するブロードキャストアドレスで,
foobar.com
はこのサブネットに結びつけられているドメイン名)
への経路情報も加えることができます. link#1
というの
は, この計算機の最初のイーサネットカードのことをさします. これら
については, 何も追加インタフェースが指定されていないことに気づく
でしょう.
これらの2つのグループ(ローカルネットワークホストとローカルサブネット)
の両方とも, routed
と呼ばれるデーモンによって自動的に
経路が設定されます.
routed
を動かさなければ, 静的に定義した (つまり具体的に
設定した) 経路のみ存在することになります.
host1
の行は私たちのホストのことで,
イーサネットアドレスで示されています.
送信側のホストの場合, FreeBSDはイーサネットインタフェースへ
送るのではなく, ループバックインタフェース
(lo0
)を使います.
2つあるhost2
の行は, ifconfigのエイリアス (このようなこと
をする理由については ethernetの章を参照してください) を使ったとき
にどのようになるかを示す例です. lo0
の後にある=>
は, インタフェースが (このアドレスがローカルなホストを参照しているので)
ループバックを使っているというだけでなく, エイリアスになっていることも
示しています. このような経路はエイリアスをサポートしている
ホストにのみ現れます. ローカルネットワーク上の他のすべてのホストでは
単にlink#1
となります.
最後の行(destinationが224
のサブネット)はマルチキャスト
で扱うものですが, これは他の章で説明します.
他の欄についてはFlags
について説明する必要があります.
それぞれの経路は欄に示されているように違った属性をもっています.
以下にいくつかのフラグとこれらが何を意味しているかを示します.
Up: この経路はアクティブです.
Host: 経路の destinationが単一のホストです.
Gateway: この destinationへ送られると, どこへ送れ ばよいかを明らかにして, そのリモートシステムへ送られます.
Static: この経路はシステムによって自動的に生成 されたのではなく, 手動で作成されました.
Clone: マシンに接続したときにこの経路に基づく 新しい経路が作られます. このタイプの経路は通常は ローカルネットワークで使われます.
WasCloned: ローカルエリアネットワーク(Clone) の経路に基づいて自動的に生成された経路であることを示します.
Link: イーサネットハードウェアへの参照を含む 経路です.