route - システム管理コマンドの説明 - Linux コマンド集 一覧表
名前
route - IP 経路テーブルの表示/設定
書式
route [ -CFvnee ]
- route
- [ -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]
- route
- [ -v ] [ -A family] del [ -net | -host ] target [ gw Gw] [ netmask Nm] [ metric N] [[ dev ]If]
- route
- [ -V ] [ --version ][ -h ][ --help ]
説明
route
はカーネルの IP 経路テーブルを操作する。
その主な目的は、特定のホストやネットワークへの静的な経路を設定することである。
経路に用いるインターフェースは、このコマンドの前に
ifconfig
(8) で設定しておく必要がある。
add
または
del
オプションを使うと、
route
は経路テーブルを変更できる。
これらのオプションを指定しない場合、
route
は現在の経路テーブルの内容を表示する。
オプション
- -A family
-
指定したアドレスファミリーを使う
(例えば `inet' を指定する。
全リストを表示するには `route --help' を使うこと)。
- -F
- カーネルの FIB (Forwarding Information Base) 経路テーブルを操作する。 これはデフォルトである。
- -C
-
カーネルの経路テーブルを操作する。
- -v
- 操作の際に詳細表示するモードを選択する。
- -n
- ホスト名を解決せず、アドレスを数値で表示する。 これはネームサーバが見つからない場合など、 ホスト名の解決ができない場合に有用である。
- -e
-
経路テーブルの表示に
netstat
(8)
のフォーマットを使用する。
-ee
は経路情報のすべてのパラメータを 1 行で表示する。
- del
- 経路を削除する。
- add
- 新しい経路を追加する。
- target
- 対象とするネットワークまたはホストを指定する。 10 進ドット表記の IP アドレスか、 ホスト名もしくはネットワーク名を指定可能である。
- -net
- target をネットワークとする。
- -host
- target をホストとする。
- netmask NM
- ネットワーク経路を追加する場合、そこで使用されるネットマスク。
- gw GW
- ゲートウェイを経由した経路パケット。 注意: 記述されたゲートウェイは、まず到達可能でなければならない。 これは通常、前もってゲートウェイに静的経路を 設定しなくてはならないということである。 もし、ローカルのインタフェースのアドレスを指定した場合は、 それはパケットが通過すべきインタフェースの決定に使用される。 これは BSD の手法にのっとったやり方である。
- metric M
- 経路テーブルのメトリック (経路制御デーモンが使用する) を M に設定する。
- mss M
- 指定の経路での接続の TCP 最大セグメントサイズ (MSS) を M バイトに設定する。 デフォルトはデバイスの MTU (Maximum Transmission Unit, 最大送信単位) から ヘッダーを引いたサイズである。 また、ネットワークパスの MTU が見つかった場合、 小さい方の MTU がデフォルトになる。 この設定は、ネットワークパスの MTU を見付けることができなかった場合 (これは ICMP Fragmentation Needed をブロックしてしまう、 間違って設定されたファイヤーウォールなどのために起こる)、 相手側 TCP パケットを強制的に小さくするために使われる。
- window W
- 指定の経路での接続の TCP ウィンドウサイズを W バイトに設定する。 これは一般に AX.25 ネットワークや、 連続的に送られるフレームを取りこぼしてしまうようなドライバーでのみ使用される。
- irtt I
- 指定の経路での TCP 接続の初期ラウンドトリップ時間 (irtt) を I (1-12000) ミリ秒の範囲で設定する。 これは一般的に AX.25 ネットワークでのみ使用される。 省略した場合、RFC 1122 でデフォルトとされている 300 ミリ秒が使用される。
- reject
- ブロックする経路を設定する。 これは経路参照の失敗を強制し、例えば、デフォルトの経路を使用せずに、 ネットワークを使わないようにしてしまう場合などに用いる。 これは、ファイアーウォールの設定では"ない"。
- mod, dyn, reinstate
- 動的な経路や変更経路を設定する。 これらのフラグは診断の用途に使われ、 一般的には経路制御デーモンによってのみ設定される。
- dev If
-
記述されたデバイスに、経路を関連づけることを強制する。
通常カーネルは自分自身でデバイスを決定しようとする
(すでにある経路とデバイスの記述、経路がどこに追加されているかによる)。
一般的なネットワークでは、これを指定する必要はない。
もし 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) するように設定する。
出力
カーネル経路テーブルの出力は、以下の項目で構成される。
- Destination
- 対象ネットワークもしくはホスト。
- Gateway
- ゲートウェイのアドレスか、 設定されていないなら '*' である。
- Genmask
- Genmask は対象ネットワークのネットマスクである。 '255.255.255.255' は、ホストが対象である場合のマスクで、 '0.0.0.0' は、 デフォルト 経路のネットマスクである。
- Flags
-
指定可能なフラグとしては、以下のものがある。
U (経路は 有効 になっている)
H (ターゲットは ホスト である)
G ( ゲートウェイ を使用する)
R ( 回復 される動的経路)
D (デーモンもしくは置き換えによる 動的な 設定である)
M (経路制御デーモンもしくは置き換えによる 変更 である)
A ( addrconf により設定されている)
C ( キャッシュ のエントリーである)
! ( 拒否 (reject) する経路である) - Metric
- ターゲットの距離 (通常はホップ数) である。 最近のカーネルでは無視されるが、 経路制御デーモンが必要とする可能性がある。
- Ref
- 指定のルートの参照数 (Linux カーネルでは使用しない)。
- Use
- 経路の参照回数である。 -F と -C オプションの使用に依存する。 これは経路キャッシュが失敗 (-F) とヒット (-C) した回数である。
- Iface
- この経路で使用するインタフェースである。
- MSS
- この経路での TCP 接続のデフォルト最大セグメントである。
- Window
- この経路での TCP 接続のデフォルトのウィンドウ・サイズである。
- irtt
- 初期 RTT (ラウンドトリップ時間) である。 カーネルは、(遅いと思われる) 返信の待ち時間を含まない 最良の TCP プロトコルパラメーターを推測するために、この値を使う。
- HH (キャッシュのみ)
- キャッシュされた経路のうちハードウェア・ヘッダー・キャッシュを参照するものと ARP エントリの数である。 キャッシュされた経路のインタフェースが ハードウェア・アドレスを必要としない場合 (例えば lo) では、 この値は -1 になる。
- Arp (キャッシュのみ)
- キャッシュされた経路に対するハードウェアアドレスの更新状況である。
ファイル
/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> がメンテナンスしている。