Scroll to navigation

ROUTE(8) Linux Programmer's Manual ROUTE(8)

名前

route - IP 経路テーブルの表示/設定

書式

route [-CFvnee]

[-v] [-A family] add [-net|-host] target [netmask Nm] [gw Gw] [metric N] [mss M] [window W] [irtt I] [reject] [mod] [dyn] [reinstate] [[dev] If]
[-v] [-A family] del [-net|-host] target [gw Gw] [netmask Nm] [metric N] [[dev] If]
[-V] [--version] [-h] [--help]

説明

route はカーネルの IP 経路テーブルを操作する。 その主な目的は、特定のホストやネットワークへの静的な経路を設定することである。 経路に用いるインターフェースは、このコマンドの前に ifconfig(8) で設定しておく必要がある。

add または del オプションを使うと、 route は経路テーブルを変更できる。 これらのオプションを指定しない場合、 route は現在の経路テーブルの内容を表示する。

オプション

指定したアドレスファミリーを使う (例えば `inet' を指定する。 全リストを表示するには `route --help' を使うこと)。

カーネルの FIB (Forwarding Information Base) 経路テーブルを操作する。 これはデフォルトである。
カーネルの経路テーブルを操作する。

操作の際に詳細表示するモードを選択する。
ホスト名を解決せず、アドレスを数値で表示する。 これはネームサーバが見つからない場合など、 ホスト名の解決ができない場合に有用である。
経路テーブルの表示に netstat(8) のフォーマットを使用する。 -ee は経路情報のすべてのパラメータを 1 行で表示する。

経路を削除する。
新しい経路を追加する。
対象とするネットワークまたはホストを指定する。 10 進ドット表記の IP アドレスか、 ホスト名もしくはネットワーク名を指定可能である。
target をネットワークとする。
target をホストとする。
ネットワーク経路を追加する場合、そこで使用されるネットマスク。
ゲートウェイを経由した経路パケット。 注意: 記述されたゲートウェイは、まず到達可能でなければならない。 これは通常、前もってゲートウェイに静的経路を 設定しなくてはならないということである。 もし、ローカルのインタフェースのアドレスを指定した場合は、 それはパケットが通過すべきインタフェースの決定に使用される。 これは BSD の手法にのっとったやり方である。
経路テーブルのメトリック (経路制御デーモンが使用する) を M に設定する。
指定の経路での接続の TCP 最大セグメントサイズ (MSS) を M バイトに設定する。 デフォルトはデバイスの MTU (Maximum Transmission Unit, 最大送信単位) から ヘッダーを引いたサイズである。 また、ネットワークパスの MTU が見つかった場合、 小さい方の MTU がデフォルトになる。 この設定は、ネットワークパスの MTU を見付けることができなかった場合 (これは ICMP Fragmentation Needed をブロックしてしまう、 間違って設定されたファイヤーウォールなどのために起こる)、 相手側 TCP パケットを強制的に小さくするために使われる。
指定の経路での接続の TCP ウィンドウサイズを W バイトに設定する。 これは一般に AX.25 ネットワークや、 連続的に送られるフレームを取りこぼしてしまうようなドライバーでのみ使用される。
irtt I
指定の経路での TCP 接続の初期ラウンドトリップ時間 (irtt) を I (1-12000) ミリ秒の範囲で設定する。 これは一般的に AX.25 ネットワークでのみ使用される。 省略した場合、RFC 1122 でデフォルトとされている 300 ミリ秒が使用される。
ブロックする経路を設定する。 これは経路参照の失敗を強制し、例えば、デフォルトの経路を使用せずに、 ネットワークを使わないようにしてしまう場合などに用いる。 これは、ファイアーウォールの設定では"ない"。
動的な経路や変更経路を設定する。 これらのフラグは診断の用途に使われ、 一般的には経路制御デーモンによってのみ設定される。
記述されたデバイスに、経路を関連づけることを強制する。 通常カーネルは自分自身でデバイスを決定しようとする (すでにある経路とデバイスの記述、経路がどこに追加されているかによる)。 一般的なネットワークでは、これを指定する必要はない。

もし dev If がコマンド・ラインの最後のオプションの場合には、 dev という語は省略しても良い。 他の場合では、経路修飾子の順番 (metric -netmask - gw - dev) は重要ではない。

route add -net 127.0.0.0
ネットマスク 255.0.0.0 で (クラス A のネットワークが、対象アドレスから決定される)、 通常のループバックを追加する。 それは、 lo デバイスに関連づけれられる (このデバイスは ifconfig(8) に前もって設定されていると仮定している)。

route add -net 192.56.76.0 netmask 255.255.255.0 dev eth0
eth0 経由のネットワーク 192.56.76.x を追加する。 ここでの 192.* はクラス C の IP アドレスなので、 クラス C のこのネットマスク修飾子は必須ではない。 この場合 dev という語は省略可能である。

route add default gw mango-gw
デフォルト経路 (適切な経路が他にない場合に使用されるもの) を追加する。 この経路を使用するすべてのパケットは、 "mango-gw" を経由する。 デバイスは "mango-gw" に到達する上で実際に使用する経路に依存する。 - "mango-gw" に対する静的経路があらかじめ設定されている必要がある。

route add ipx4 sl0
"ipx4" に対する経路を SLIP インタフェース経由 ("ixp4" は SLIP ホストであると仮定する) で追加する。

route add -net 192.57.66.0 netmask 255.255.255.0 gw ipx4
前述の SLIP インタフェース経路をゲートウェイとして、 ネットワーク "192.57.66.x" を追加する。

route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0
この設定はわかりにくいので、あえて記述した。 これは全てのクラス D (マルチキャスト) IP の経路が "eth0" を通って行くように設定する。 これはマルチキャスト・カーネルの正しい設定である。

route add -net 10.0.0.0 netmask 255.0.0.0 reject
プライベートネットワーク "10.x.x.x" への経路を 拒否 (reject) するように設定する。

出力

カーネル経路テーブルの出力は、以下の項目で構成される。

対象ネットワークもしくはホスト。
ゲートウェイのアドレスか、 設定されていないなら '*' である。
Genmask は対象ネットワークのネットマスクである。 '255.255.255.255' は、ホストが対象である場合のマスクで、 '0.0.0.0' は、 デフォルト 経路のネットマスクである。
指定可能なフラグとしては、以下のものがある。
U (経路は 有効 になっている)
H (ターゲットは ホスト である)
G (ゲートウェイ を使用する)
R (回復 される動的経路)
D (デーモンもしくは置き換えによる 動的な 設定である)
M (経路制御デーモンもしくは置き換えによる 変更 である)
A (addrconf により設定されている)
C (キャッシュ のエントリーである)
! (拒否 (reject) する経路である)
ターゲットの距離 (通常はホップ数) である。 最近のカーネルでは無視されるが、 経路制御デーモンが必要とする可能性がある。
指定のルートの参照数 (Linux カーネルでは使用しない)。
経路の参照回数である。 -F と -C オプションの使用に依存する。 これは経路キャッシュが失敗 (-F) とヒット (-C) した回数である。
この経路で使用するインタフェースである。
この経路での TCP 接続のデフォルト最大セグメントである。
この経路での TCP 接続のデフォルトのウィンドウ・サイズである。
初期 RTT (ラウンドトリップ時間) である。 カーネルは、(遅いと思われる) 返信の待ち時間を含まない 最良の TCP プロトコルパラメーターを推測するために、この値を使う。
キャッシュされた経路のうちハードウェア・ヘッダー・キャッシュを参照するものと ARP エントリの数である。 キャッシュされた経路のインタフェースが ハードウェア・アドレスを必要としない場合 (例えば lo) では、 この値は -1 になる。
キャッシュされた経路に対するハードウェアアドレスの更新状況である。

ファイル

/proc/net/ipv6_route
/proc/net/route
/proc/net/rt_cache

関連項目

ifconfig(8), netstat(8), arp(8), rarp(8)

履歴

Linux 用の route コマンドは、 最初に Fred N. van Kempen, <waltje@uwalt.nl.mugnet.org> によって書かれ、 Johannes Stille と Linus Torvalds により pl15 に更新された。 Alan Cox は mss と window オプションを Linux 1.1.22 で追加した。 irtt のサポートと netstat への併合は Bernd Eckenfels によるものである。

著者

現在は Phil Blundell <Philip.Blundell@pobox.com> がメンテナンスしている。

2 January 2000 net-tools