Cisco IOS フレームリレー – スプリットホライズンの設定方法

スポンサーリンク

Frame RelayのようなNBMA(Non Broadcast Multi Access)環境では、ルーティングプロトコルのスプリットホライズン(split horizon)を意識しなければなりません。インターフェースの種類によって、スプリットホライズンのデフォルト設定が異なる事に十分注意して下さい。

コマンド一覧

このシナリオで重要なコマンド一覧は以下の通りです。

Router(config)# interface <interface>
Router(config-if)# no ip split-horizon

Router(config)# ipv6 router <proc>
Router(config-rtr)# no split-horizon

構成図

以下の環境で動作確認を行います。R1をHubとし、R2, R3をspokeとします。Frame Relay SwitchはルータをFrame Relay Switch代わりとして使用します。

 [ipv4 diagram]
           192.168.123.0/24
                             +------+
                     ┌------+  R2  |
       s0/0          │    .2+------+
 +------+      +-----+--+  s0/0.1 point-to-point
 |  R1  +------+  FRSW  |
 +------+      +-----+--+  s0/0.1 muitipoint
                     │    .3+------+
                     └------+  R3  |
                             +------+

 R1 Loopback0  R2 Loopback0  R3 Loopback0
 10.1.1.1/32   10.2.2.2/32   10.3.3.3/32

 [ipv6 diagram]
           FEC0:123::/64
                             +------+
                     ┌------+  R2  |
       s0/0          │    .2+------+
 +------+      +-----+--+  s0/0.1 point-to-point
 |  R1  +------+  FRSW  |
 +------+      +-----+--+  s0/0.1 muitipoint
                     │    .3+------+
                     └------+  R3  |
                             +------+
 R1 Loopback0  R2 Loopback0  R3 Loopback0
 FEC0:1::1/64  FEC0:2::2/64  FEC0:3::3/64
 [R1, R2, R3]
interface Serial0/0
 encapsulation frame-relay

設定全文は下記ファイルです。詳細設定は下記を参照ください。

R1
!
version 12.4
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname R1
!
boot-start-marker
boot-end-marker
!
!
no aaa new-model
memory-size iomem 5
!
!
ip cef
!
!
ipv6 unicast-routing
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
interface Loopback0
 ip address 10.1.1.1 255.255.255.255
 ipv6 address FEC0:1::1/64
 ipv6 rip RIPng enable
!
interface Serial0/0
 ip address 192.168.123.1 255.255.255.0
 encapsulation frame-relay
 ipv6 address EFC0:123::1/64
 ipv6 address FE80::1 link-local
 ipv6 rip RIPng enable
 serial restart-delay 0
 frame-relay map ipv6 FE80::2 102 broadcast
 frame-relay map ipv6 FE80::3 103 broadcast
 frame-relay map ipv6 FEC0:123::2 102
 frame-relay map ip 192.168.123.1 102
 frame-relay map ipv6 FEC0:123::3 103
 frame-relay map ip 192.168.123.2 102 broadcast
 frame-relay map ip 192.168.123.3 103 broadcast
 frame-relay map ipv6 FE80::1 102
!
interface Serial0/1
 no ip address
 shutdown
 serial restart-delay 0
!
interface Serial0/2
 no ip address
 shutdown
 serial restart-delay 0
!
interface Serial0/3
 no ip address
 shutdown
 serial restart-delay 0
!
!
router rip
 version 2
 network 10.0.0.0
 network 192.168.123.0
 no auto-summary
!
ip http server
ip forward-protocol nd
!
!
!
ipv6 router rip RIPng
!
!
!
!
control-plane
!
!
!
!
mgcp behavior g729-variants static-pt
!
!
!
!
!
line con 0
line aux 0
line vty 0 4
 login
!
!
end
R2
!
version 12.4
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname R2
!
boot-start-marker
boot-end-marker
!
!
no aaa new-model
memory-size iomem 5
!
!
ip cef
!
!
ipv6 unicast-routing
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
interface Loopback0
 ip address 10.2.2.2 255.255.255.255
 ipv6 address FEC0:2::2/64
 ipv6 rip RIPng enable
!
interface Serial0/0
 no ip address
 encapsulation frame-relay
 serial restart-delay 0
!
interface Serial0/0.1 point-to-point
 ip address 192.168.123.2 255.255.255.0
 ipv6 address FEC0:123::2/64
 ipv6 address FE80::2 link-local
 ipv6 rip RIPng enable
 frame-relay interface-dlci 201   
!
interface Serial0/1
 no ip address
 shutdown
 serial restart-delay 0
!
interface Serial0/2
 no ip address
 shutdown
 serial restart-delay 0
!
interface Serial0/3
 no ip address
 shutdown
 serial restart-delay 0
!
!
router rip
 version 2
 network 10.0.0.0
 network 192.168.123.0
 no auto-summary
!
ip http server
ip forward-protocol nd
!
!
!
ipv6 router rip RIPng
!
!
!
!
control-plane
!
!
!
!
mgcp behavior g729-variants static-pt
!
!
!
!
!
line con 0
line aux 0
line vty 0 4
 login
!
!
end
R3
!
version 12.4
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname R3
!
boot-start-marker
boot-end-marker
!
!
no aaa new-model
memory-size iomem 5
!
!
ip cef
!
!
ipv6 unicast-routing
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
interface Loopback0
 ip address 10.3.3.3 255.255.255.255
 ipv6 address FEC0:3::3/64
 ipv6 rip RIPng enable
!
interface Serial0/0
 no ip address
 encapsulation frame-relay
 serial restart-delay 0
!
interface Serial0/0.1 multipoint
 ip address 192.168.123.3 255.255.255.0
 ipv6 address FEC0:123::3/64
 ipv6 address FE80::3 link-local
 ipv6 rip RIPng enable
 frame-relay map ipv6 FEC0:123::1 301
 frame-relay map ipv6 FEC0:123::2 301
 frame-relay map ip 192.168.123.1 301 broadcast
 frame-relay map ip 192.168.123.2 301
 frame-relay map ip 192.168.123.3 301
 frame-relay map ipv6 FE80::1 301 broadcast
!
interface Serial0/1
 no ip address
 shutdown
 serial restart-delay 0
!
interface Serial0/2
 no ip address
 shutdown
 serial restart-delay 0
!
interface Serial0/3
 no ip address
 shutdown
 serial restart-delay 0
!
!
router rip
 version 2
 network 10.0.0.0
 network 192.168.123.0
 no auto-summary
!
ip http server
ip forward-protocol nd
!
!
!
ipv6 router rip RIPng
!
!
!
!
control-plane
!
!
!
!
mgcp behavior g729-variants static-pt
!
!
!
!
!
line con 0
line aux 0
line vty 0 4
 login
!
!
end
FRSW
!
!
version 12.4
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname FRSW
!
boot-start-marker
boot-end-marker
!
!
no aaa new-model
memory-size iomem 5
!
!
ip cef
!
!
frame-relay switching
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
interface Serial0/0
 no ip address
 encapsulation frame-relay
 serial restart-delay 0
 frame-relay intf-type dce
 frame-relay route 102 interface Serial0/1 201
 frame-relay route 103 interface Serial0/2 301
!
interface Serial0/1
 no ip address
 encapsulation frame-relay
 serial restart-delay 0
 frame-relay intf-type dce
 frame-relay route 201 interface Serial0/0 102
!
interface Serial0/2
 no ip address
 encapsulation frame-relay
 serial restart-delay 0
 frame-relay intf-type dce
 frame-relay route 301 interface Serial0/0 103
!
interface Serial0/3
 no ip address
 shutdown
 serial restart-delay 0
!
!
ip http server
ip forward-protocol nd
!
!
!
!
!
!
control-plane
!
!
!
!
mgcp behavior g729-variants static-pt
!
!
!
!
!
line con 0
line aux 0
line vty 0 4
 login
!
!
end

仕様説明

設定確認

Split Horizonは”教えたルートを教え返さない”ルーティングループ防止機能です。hub & spoke構成でRIPやEIGRPを使用する場合は、注意が必要な機能です。

Split Horizonが有効かどうかはshow ip interfaceコマンドにより確認できます。

R2#show ip interface Serial0/0.1
Serial0/0.1 is up, line protocol is up
  Internet address is 192.168.123.2/24
  Broadcast address is 255.255.255.255
  Address determined by setup command
  MTU is 1500 bytes
  Helper address is not set
  Directed broadcast forwarding is disabled
  Multicast reserved groups joined: 224.0.0.9
  Outgoing access list is not set
  Inbound  access list is not set
  Proxy ARP is enabled
  Local Proxy ARP is disabled
  Security level is default
  Split horizon is enabled
  ICMP redirects are always sent
  ICMP unreachables are always sent
  ICMP mask replies are never sent
  IP fast switching is enabled
  IP fast switching on the same interface is enabled
  IP Flow switching is disabled
  IP CEF switching is enabled
  IP CEF Fast switching turbo vector
  IP multicast fast switching is enabled
  IP multicast distributed fast switching is disabled
  IP route-cache flags are Fast, CEF
  Router Discovery is disabled
  IP output packet accounting is disabled
  IP access violation accounting is disabled
  TCP/IP header compression is disabled
  RTP/IP header compression is disabled
  Policy routing is disabled
  Network address translation is disabled
  BGP Policy Mapping is disabled
  WCCP Redirect outbound is disabled
  WCCP Redirect inbound is disabled
  WCCP Redirect exclude is disabled
R2#

デフォルト設定 IPv4

Split Horizonがデフォルトで有効化どうかは、frame relayのinterface typeによって異なります。

split horizonのデフォルト設定についてまとめると以下のとおりです。virtual interface (subinterface)の場合は、split horizonがデフォルトで有効になっています。

interface split horizon
physical interface disable
virtual interface point-to-point enable
virtual interface multipoint enable

デフォルト設定 IPv6

IPv6の場合は、interfaceの種類に関わらず、デフォルトでsplit horizonは有効です。

split horizon

IPv4の場合は、以下のようにinterfaceに対してsplit horizon無効化の設定を投入します。

Router(config)# interface <interface>
Router(config-if)# no ip split-horizon

IPv6の場合は、以下のようにrouting processに対してsplit horizon無効化の設定を投入します。

Router(config)# ipv6 router <proc>
Router(config-rtr)# no split-horizon

IPv4

interface 動作確認

各ルータのsplit horizon設定について確認します。physical interfaceであるR1のみsplit horizonが無効になっています。

 [R1]
R1#show ip interface Serial 0/0 | include Split
  Split horizon is disabled
R1#

 [R2]
R2#show ip interface Serial 0/0.1 | include Split
  Split horizon is enabled
R2#

 [R3]
R3#show ip interface Serial 0/0.1 | include Split
  Split horizon is enabled
R3#

ルーティング確認

HubであるR1がデフォルトでSplit Horizonが無効になっていますので、特にSplit Horizonを意識しなくても、Spoke間の疎通ができるはずです。念のため、routing tableやpingからもSpoke間の疎通ができる事を確認しておきましょう。

 [R3]
R3#show ip route rip
     10.0.0.0/32 is subnetted, 3 subnets
R       10.2.2.2 [120/2] via 192.168.123.2, 00:00:18, Serial0/0.1
R       10.1.1.1 [120/1] via 192.168.123.1, 00:00:18, Serial0/0.1
R3#
R3#
R3#ping 10.2.2.2 source Loopback 0

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.2.2.2, timeout is 2 seconds:
Packet sent with a source address of 10.3.3.3
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 76/96/128 ms
R3#

IPv6

ルーティング確認

デフォルト設定の状態で、Spoke間の疎通が可能かどうかを確認します。IPv6の場合はSplit Horizonがデフォルトで有効ですので、Spoke間の疎通ができないようです。

 [R3]
R3#show ipv6 route rip
IPv6 Routing Table - 8 entries
Codes: C - Connected, L - Local, S - Static, R - RIP, B - BGP
       U - Per-user Static route
       I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary
       O - OSPF intra, OI - OSPF inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2
       ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2
R   EFC0:123::/64 [120/2]
     via FE80::1, Serial0/0.1
R   FEC0:1::/64 [120/2]
     via FE80::1, Serial0/0.1
R3#
R3#
R3#ping FEC0:2::2

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to FEC0:2::2, timeout is 2 seconds:
.....
Success rate is 0 percent (0/5)
R3#

split horizon無効化

HubであるR1において、Split Horizonを無効化します。

 [R1]
ipv6 router rip RIPng
 no split-horizon

Spoke間で疎通可能になった事を確認します。

 [R3]
R3#show ipv6 route rip
IPv6 Routing Table - 9 entries
Codes: C - Connected, L - Local, S - Static, R - RIP, B - BGP
       U - Per-user Static route
       I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary
       O - OSPF intra, OI - OSPF inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2
       ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2
R   EFC0:123::/64 [120/2]
     via FE80::1, Serial0/0.1
R   FEC0:1::/64 [120/2]
     via FE80::1, Serial0/0.1
R   FEC0:2::/64 [120/3]
     via FE80::1, Serial0/0.1
R3#
R3#
R3#
R3#ping FEC0:2::2 source Loopback 0

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to FEC0:2::2, timeout is 2 seconds:
Packet sent with a source address of FEC0:3::3
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 72/82/108 ms
R3#
タイトルとURLをコピーしました