キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 
cancel
13423
閲覧回数
35
いいね!
0
コメント
Tsuyoshi Niitani
Cisco Employee
Cisco Employee

はじめに

static route には3種類の記載方法がありますが、記載方法によって routing table に install される条件など、動作に注意すべき点があります。

1) next-hop interface のみを記載する
ip route 10.1.1.0 255.255.255.0 ethernet1/0

2) next-hop interface と address を併記する
ip route 10.1.1.0 255.255.255.0 ethernet1/0 172.20.1.2

3) next-hop address のみを記載する
ip route 10.1.1.0 255.255.255.0 172.20.1.2

このドキュメントでは、それぞれの形式を使用する際の注意点などを紹介します。
 

Next-hop interface の指定を含む static route の場合

1) 及び 2) の形式は、指定した interface が up となっていれば routing table に install されます。

Next-hop interface のみを指定する場合の注意事項

特に 1) の形式は connected route として認識されるという特徴があります。
この 1) の形式を使用する場合で、next-hop interface が Ethernet 等の broadcast media の場合には特に注意が必要です。この場合、指定された interface に設定されたアドレス・サブネットにかかわらず、通信が発生した際にレイヤ 2 アドレスの解決を試みるため、パケットの宛先アドレスに対する ARP を送信します。

(設定例)
interface Ethernet1/0
ip address 172.20.1.1 255.255.255.0
!
ip route 0.0.0.0 0.0.0.0 Ethernet1/0
------------------------------------------------------------------------------------------------------------
(Routing table 出力例)
S* 0.0.0.0/0 is directly connected, Ethernet1/0 172.20.0.0/16 is variably subnetted, 2 subnets, 2 masks C 172.20.1.0/24 is directly connected, Ethernet1/0 L 172.20.1.1/32 is directly connected, Ethernet1/0 ------------------------------------------------------------------------------------------------------------ (通信例) #ping 192.168.1.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 192.168.1.1, timeout is 2 seconds: 00:18:32: IP ARP: creating incomplete entry for IP address: 192.168.1.1 interface Ethernet1/0 00:18:32: IP ARP: sent req src 172.20.1.1 aabb.cc00.6501, dst 192.168.1.1 0000.0000.0000 Ethernet1/0. (skip) #show arp Protocol Address Age (min) Hardware Addr Type Interface Internet 133.160.139.65 - aabb.cc00.6500 ARPA Ethernet0/0 Internet 172.20.1.1 - aabb.cc00.6501 ARPA Ethernet1/0 Internet 192.168.1.1 0 Incomplete ARPA # (Ethernet1/0 の subnet は 172.20.1.0/24 だが、192.168.1.1 に対する ARP request を送信している)

default-route に 1) 形式の static を使用し、next-hop interface 上に proxy arp が有効となっている機器が存在する場合、パケットの宛先に対する ARP entry が順次作成され、結果として ARP table のサイズが意図せず大きくなってしまうことがありますのでご注意ください。next-hop interface に broadcast media を使用する場合、特に理由がない場合 2) の形式で設定すれば、このような問題を回避することができます。

Next-hop address のみを指定する static route の場合

3) の形式は、特に recursive static と呼ばれ、原則として指定した next-hop に到達可能な経路を学習している場合に routing table に install されます。interface が down しても static が残ってしまうというお問い合わせをよくいただきますが、大抵の場合この形式の static を使用しており、なおかつ next-hop に到達可能な経路を学習している状況です。

ここで「原則」と記載しているのはいくつか例外があるためです。以下にその例を紹介します。

例外1:循環参照となってしまう場合

ip route 10.1.0.0 255.255.0.0 10.1.1.1

この static のみが存在する場合、10.1.1.1 に到達するためには 10.1.0.0/16 を参照し、その next-hop は 10.1.1.1 .....という形で参照が続いてしまいます。結果としてパケット転送には使用できない状態のため、この場合は routing table に install されません。

この static が install されるには、10.1.1.1 に対して 10.1.0.0/16 よりも mask の長い経路が必要になります。例えば、次のような場合には、この static もrouting table に install されます。

(設定例)
interface Ethernet1/0
ip address 172.20.1.1 255.255.255.0
!
ip route 10.0.0.0 255.255.0.0 10.1.1.1
ip route 10.1.1.1 255.255.255.255 172.20.1.2
------------------------------------------------------------------------------------------------------------
(Routing table 出力例)
     10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
S        10.1.0.0/16 [1/0] via 10.1.1.1
S        10.1.1.1/32 [1/0] via 172.20.1.2
     172.20.0.0/16 is variably subnetted, 2 subnets, 2 masks
C        172.20.1.0/24 is directly connected, Ethernet1/0
L        172.20.1.1/32 is directly connected, Ethernet1/0

この例の場合、10.1.0.0/16 が使用したい next-hop 10.1.1.1 に対する経路が 10.1.1.1/32 として別に存在します。10.1.1.1/32 が使用する next-hop の経路は connected 経由で学習している状態です。そのため、循環参照とはならず、どちらの static も routing table へと install されています。もし、172.20.1.0/24 の学習元である Connected の Ethernet1/0 が down すると、すべての static が消えることになります。

例外2:Next-hop が使用する経路が、自身の経路を含む(maskが短い)static の場合

(設定例)
interface Ethernet1/0
ip address 172.20.1.1 255.255.255.0
!
ip route 10.0.0.0 255.0.0.0 172.20.1.2
ip route 10.0.0.0 255.255.0.0 10.1.1.1
------------------------------------------------------------------------------------------------------------
(Routing table 出力例)
S     10.0.0.0/8 [1/0] via 172.20.1.2
      172.20.0.0/16 is variably subnetted, 2 subnets, 2 masks
C        172.20.1.0/24 is directly connected, Ethernet1/0
L        172.20.1.1/32 is directly connected, Ethernet1/0

この設定方法の場合、循環参照にもならず両方の static が routing table に install されそうですが、実際には 2 つ目の static が install されません。これは、1 つ目の 10.0.0.0/8 が 2 つ目の 10.0.0.0/16 も含む形であり、パケット転送時に複数回の参照を避けるためです。

同様の理由で、next-hop が使用する経路が default-route の場合も、その static は install されません。

(設定例)
interface Ethernet1/0
ip address 172.20.1.1 255.255.255.0
!
ip route 0.0.0.0 0.0.0.0 Ethernet1/0 172.20.1.2
ip route 10.0.0.0 255.255.0.0 10.1.1.1
------------------------------------------------------------------------------------------------------------
(Routing table 出力例)
S*    0.0.0.0/0 [1/0] via 172.20.1.2, Ethernet1/0
      172.20.0.0/16 is variably subnetted, 2 subnets, 2 masks
C        172.20.1.0/24 is directly connected, Ethernet1/0
L        172.20.1.1/32 is directly connected, Ethernet1/0

 

Getting Started

検索バーにキーワード、フレーズ、または質問を入力し、お探しのものを見つけましょう

シスコ コミュニティをいち早く使いこなしていただけるよう役立つリンクをまとめました。みなさんのジャーニーがより良いものとなるようお手伝いします