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, <
[email protected]>
によって書かれ、 Johannes
Stille と Linus Torvalds により pl15
に更新された。 Alan Cox は mss
と window オプションを Linux 1.1.22
で追加した。 irtt
のサポートと netstat
への併合は Bernd Eckenfels
によるものである。
現在は Phil Blundell <
[email protected]>
がメンテナンスしている。