サブインタフェース(point-to-point)
・ハブ・ルーター(RouterA)で,サブインタフェース(point-to-point)を使ってルーティング(EIGRP)する
・RouerBとRouterC同士で通信できることを確認する
ネットワーク構成(画像を別ウインドウで表示)
FRSWのコンフィグ
!
version 12.3
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname FRSW
!
frame-relay switching
!
interface Serial0
 no ip address
 encapsulation frame-relay
 clockrate 64000
 frame-relay intf-type dce
 frame-relay route 120 interface Serial1 210
 frame-relay route 130 interface Serial2 310
!
interface Serial1
 no ip address
 encapsulation frame-relay
 clockrate 64000
 frame-relay intf-type dce
 frame-relay route 210 interface Serial0 120
!
interface Serial2
 no ip address
 encapsulation frame-relay
 clockrate 64000
 frame-relay intf-type dce
 frame-relay route 310 interface Serial0 130
!         
line con 0
line aux 0
line vty 0 4
 login
!
end
RouterAのコンフィグ
!
version 12.2
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname RouterA
!
interface Serial0/0
 no ip address ←物理インタフェースにIPアドレスは設定しない
 encapsulation frame-relay ←フレームリレーのカプセル化はオンにする
!
interface Serial0/0.1 point-to-point ←サブインタフェースSerial0/0.1を作成
 ip address 192.168.1.1 255.255.255.0
 frame-relay interface-dlci 120 ←フレームリレー・マップを設定
!
interface Serial0/0.2 point-to-point ←サブインタフェースSerial0/0.2を作成
 ip address 192.168.2.1 255.255.255.0
 frame-relay interface-dlci 130 ←フレームリレー・マップを設定
!
router eigrp 1 ←EIGRPでルーティング
 network 192.168.1.0
 network 192.168.2.0
 no auto-summary
!
line con 0
line aux 0
line vty 0 4
 login
!
RouterBのコンフィグ
!
version 12.2
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname RouterB
!
interface Loopback0
 ip address 2.2.2.2 255.255.255.0
!
interface Serial0/0
 ip address 192.168.1.2 255.255.255.0
 encapsulation frame-relay
!
router eigrp 1 ←EIGRPでルーティング
 network 2.0.0.0
 network 192.168.1.0
 no auto-summary
!
line con 0
line aux 0
line vty 0 4
 login
!
end
RouterCのコンフィグ
!
version 12.4
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname RouterC
!
interface Loopback0
 ip address 3.3.3.3 255.255.255.0
!
interface Serial0/0
 ip address 192.168.2.2 255.255.255.0
 encapsulation frame-relay
!
router eigrp 1 ←EIGRPでルーティング
 network 3.0.0.0
 network 192.168.2.0
 no auto-summary
!
line con 0
line aux 0
line vty 0 4
 login
!
end
確認
フレームリレーのハブ・アンド・スポークでルーティングをする場合には,注意が必要です。
特に,EIGRPのようなディスタンス・ベクタ型のルーティング・プロトコルでは,スプリット・ホライズンが有効になるので,スポーク・ルーターでルーティングができないからです。
その解決方法として,「サブインタフェース」を使います。

●フレームリレーではEIGRPを動かすには?
フレームリレーでハブ・アンド・スポーク構成をとった場合,EIGRPを使うとルーティングがうまくいきません。
というのも,EIGRPではスプリット・ホライズンが有効になるからです。
スプリット・ホライズンは,「経路情報を受信したインタフェースからその経路情報を出さない」というルールです。
フレームリレーのカプセル化を設定したインタフェースでは自動的にスプリット・ホライズンが無効になりますが,EIGRPの場合は例外的にスプリット・ホライズンが有効のままなのです。

(参考)フレームリレー インターフェイスでは、IP スプリット ホライズンはどのように処理されますか
http://www.cisco.com/japanese/warp/public/3/jp/service/tac/116/fr_faq-j.shtml#qa24

以下の図は,ひとつ前の「ハブ・アンド・スポーク」のラボ・シナリオで取り上げた構成です。
以下のRouterA,RouterB,RouterCでEIGRPを有効にしたとき,ルーティングはどうなるでしょうか。

RouterBが出したEIGRPの経路情報は,RouterAのSerial0/0に届きます。
ところがRouterAは,その経路情報をRouterCに出すことができません。
というのも,「経路情報を受信したインタフェースからその経路情報を出さない」というスプリット・ホライズンのルールが効いているからです(下図の左)。
RouterAは,Serial0/0から受信した経路情報をSerial0/0に出せないわけですね。
フレームリレーでは,一つのインタフェースに複数のPVCを設定できることから,こうしたことが起こります。

解決するには,以下の方法があります。
・PVCをフルメッシュで張る
・ハブ・ルーターでスプリット・ホライズンを無効にする
・ハブ・ルーターでサブインタフェースを使って,別々のインタフェースにPVCを割り当てる

PVCをフルメッシュで張る方法はコストがかかるため,ルーター(拠点)数が多くなると現実的ではありません。
スプリット・ホライズンを無効にする方法は,「NBMAネットワークにおけるEIGRPの設定」を参照して下さい。
サブインタフェースを使う方法は,論理的なインタフェースを複数作って,別々の論理インタフェースにPVCを所属させる方法です(下図の右)。

フレームリレーのサブインタフェースには,以下の二つのタイプがあります。

【サブインタフェースの二つのタイプ】
・point-to-pointタイプ…通信する相手のルーターが一つのとき
・multipointタイプ………通信する相手のルーター複数あるとき

このラボ・シナリオでは,point-to-pointタイプを使って,スプリット・ホライズンの問題を解決してみます。


●設定の確認
RouterAのサブインタフェースの設定を見てみましょう。
RouterAのSerial0/0の設定に注目します。
interface Serial0/0 ←@
 no ip address
 encapsulation frame-relay
!
interface Serial0/0.1 point-to-point ←A
 ip address 192.168.1.1 255.255.255.0
 frame-relay interface-dlci 120
!
interface Serial0/0.2 point-to-point ←B
 ip address 192.168.2.1 255.255.255.0
 frame-relay interface-dlci 130
@物理インタフェースSerial0/0の設定
サブインタフェースを設定する場合,物理インタフェースであるSerial0/0のIPアドレスは設定しません。
  カプセル化プロトコルは設定しておきます。

AサブインタフェースSerial0/0.1の設定
point-to-pointオプションを付けることで,point-to-pointタイプに指定します。
また,「frame-relay interface-dlci 120」というコマンドで,PVCのDLCI値を120に設定しています。
サブインタフェースではインバースARPは使えないため,このコマンドは,point-to-pointタイプで必ず必要になるコマンドです。
point-to-pointタイプのインタフェースは,通信する相手が決まっているので,インバースARPやframe-relay mapを使ってIPアドレスとDLCIを対応付ける必要がありません。
そこでこのコマンドを使って,「このサブインタフェースに該当するPVCのDLCI番号はどれか」を教えてやるわけです。

BサブインタフェースSerial0/0.2の設定
こちらもAと同様に,Serial0/0.2というサブインタフェースを設定しています。
Aとは異なるIPアドレス(192.168.2.1)とDLCI番号(DLCI130)を設定します。

これで,別々のサブインタフェースにPVCが所属しました。


●状態の確認
設定したら,RouterAのPVCの状態を確認してみましょう。
二つのPVCはいずれもアクティブ状態であり,正常に動作しているのがわかります(下の赤字)。
RouterA#show frame-relay pvc

PVC Statistics for interface Serial0/0 (Frame Relay DTE)

              Active     Inactive      Deleted       Static
  Local          2            0            0            0
  Switched       0            0            0            0
  Unused         0            0            0            0

DLCI = 120, DLCI USAGE = LOCAL, PVC STATUS = ACTIVE, INTERFACE = Serial0/0.1

  input pkts 38            output pkts 229          in bytes 2540      
  out bytes 17828          dropped pkts 0           in pkts dropped 0         
  out pkts dropped 0                out bytes dropped 0         
  in FECN pkts 0           in BECN pkts 0           out FECN pkts 0         
  out BECN pkts 0          in DE pkts 0             out DE pkts 0         
  out bcast pkts 217       out bcast bytes 16916     
  pvc create time 00:18:16, last time pvc status changed 00:18:16
          
DLCI = 130, DLCI USAGE = LOCAL, PVC STATUS = ACTIVE, INTERFACE = Serial0/0.2

  input pkts 26            output pkts 133          in bytes 1470      
  out bytes 11524          dropped pkts 0           in pkts dropped 0         
  out pkts dropped 0                out bytes dropped 0         
  in FECN pkts 0           in BECN pkts 0           out FECN pkts 0         
  out BECN pkts 0          in DE pkts 0             out DE pkts 0         
  out bcast pkts 127       out bcast bytes 11156     
  pvc create time 00:18:18, last time pvc status changed 00:18:18
DLCIとIPアドレスの対応付けを確認する,show frame-relay mapコマンドを入力してみましょう。
RouterA#show frame-relay map
Serial0/0.1 (up): point-to-point dlci, dlci 120(0x78,0x1C80), broadcast
          status defined, active
Serial0/0.2 (up): point-to-point dlci, dlci 130(0x82,0x2020), broadcast
          status defined, active
すると,IPアドレスが表示される部分に「point-to-point dlci」と表示され,DLCI値も表示されました。
Aで設定した「frame-relay interface-dlci 120」コマンドの結果が反映されていることがわかります。

スポーク・ルーターのIPアドレスとDLCIの対応付けも見てみましょう。
RouterBは以下です。
RouterB#show frame-relay map
Serial0/0 (up): ip 192.168.1.1 dlci 210(0xD2,0x3420), dynamic,
              broadcast,, status defined, active
RouterCは以下です。
RouterC#show frame-relay map
Serial0/0 (up): ip 192.168.2.1 dlci 310(0x136,0x4C60), dynamic,
              broadcast,, status defined, active
いずれも「dynamic」とあり,インバースARPを使ってあて先IPアドレスとDLCI番号を対応付けたことがわかります。


●設定後の動作の確認
では,動作を確認してみましょう。
RouterBのルーティング・テーブルを見てみます。
3.3.3.0/24というRouterCの先にある経路情報を受信できているのがわかります(下の赤字)。
RouterCが出した経路情報が,RouterAを経由してRouterCまで流れてきているわけですね。
RouterB#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route

Gateway of last resort is not set

     2.0.0.0/24 is subnetted, 1 subnets
C       2.2.2.0 is directly connected, Loopback0
     3.0.0.0/24 is subnetted, 1 subnets
D       3.3.3.0 [90/2809856] via 192.168.1.1, 00:08:59, Serial0/0
C    192.168.1.0/24 is directly connected, Serial0/0
D    192.168.2.0/24 [90/2681856] via 192.168.1.1, 00:09:01, Serial0/0
RouterCのルーティング・テーブルはどうでしょうか。
こちらも,RouterBの先にある2.2.2.0/24の経路情報がきちんと受信できています(下の赤字)。
RouterC#show ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route

Gateway of last resort is not set

     2.0.0.0/24 is subnetted, 1 subnets
D       2.2.2.0 [90/2809856] via 192.168.2.1, 00:09:21, Serial0/0
     3.0.0.0/24 is subnetted, 1 subnets
C       3.3.3.0 is directly connected, Loopback0
D    192.168.1.0/24 [90/2681856] via 192.168.2.1, 00:09:21, Serial0/0
C    192.168.2.0/24 is directly connected, Serial0/0
最後に,RouterBからRouterCの先にあるネットワーク(loopback0)にpingを打ってみます。
RouterB#ping 3.3.3.3

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 3.3.3.3, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 56/56/56 ms
応答が返ってきました。
フレームリレーのハブ・アンド・スポーク構成で,スポーク・ルーター同士が通信できるようになりました。

フレームリレー・ラボ
Ciscoルーターをフレームリレー・スイッチにする
フレームリレー・マップ
ハブ・アンド・スポーク
サブインタフェース(point-to-point)
サブインタフェース(multipoint)
DEビットの設定
フレームリレー・トラフィックシェーピング
(ツール)トラフィック配信ツールでQoSの検証