designetwork

ネットワークを軸としたIT技術メモ

BIG-IPでOSPFを設定しダイナミックルーティングする

f:id:daichi703n:20170617194650p:plain

BIG-IPを通常のルータとしても使用するためにOSPFの設定をする。BIG-IP はVE評価版を使用する。

VyOSなどの仮想ルータを使用してもいいのだが、管理する機器を増やしたくないので、導入済みのBIG-IP VEをシンプルな仮想ルータとして兼用する。

前提構成

  • PowerEdge T110 II (Xeon E3-1220, RAM 24GB)
  • VMware ESXi6.5 (Build 5310538) 無償ライセンス
  • BIG-IP VE v13.0.0 (Build 0.0.1645) 評価版ライセンス

Route-DomainでOSPFを有効化する

私の環境ではBIG-IPをルートドメインで論理分割している。ルートドメインを使用している場合は、その中でOSPFを有効にする必要がある。

Route Domains > Properties > Dynamic Routing Protocols

ここでOSPFをEnabledに追加する。

f:id:daichi703n:20170617185230p:plain

続いてSelf IPでもOSPFを有効化する。(インタフェースでOSPFを動かす場合)

f:id:daichi703n:20170617185316p:plain

tmshからOSPF(zebos)プロセスの起動状況を確認する。環境によりルートドメイン指定が必要。ospfdが上がっていればOK。

root@(h-big-ip01)(cfg-sync Standalone)(Active)(/Common)(tmos)# zebos check
=== route domain: 0 ===
No dynamic routing protocol enabled

root@(h-big-ip01)(cfg-sync Standalone)(Active)(/Common)(tmos)# zebos
usage: zebos [-r <rd_id | -a] check
       zebos [-r <rd_id | -a] (cmd command1)[,command2]

root@(h-big-ip01)(cfg-sync Standalone)(Active)(/Common)(tmos)# zebos -r 1 check
=== route domain: 1 ===
nsm is running [2640]
imi is running [2639]
ospfd   is running [2641]

IMIシェルからZebOSの設定をする

上記BIG-IP GUIだけではOSPFの設定は完了していない。(私の環境では)

BIG-IPに搭載されているIMIシェルからZebOSの設定をする必要がある。こちらはCumulusのQuaggaと同じイメージ。ログイン時にルートドメインを指定する必要あり。

今回はBIG-IP配下の172.16.0.0/24のセグメント情報を192.168.1.0/24側に広告したい。

[root@h-big-ip01:Active:Standalone] config # imish -r 1
h-big-ip01.designet.local[1]>en
#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
(config)#router ospf 1
(config-router)#router-id 192.168.1.8
(config-router)#network 192.168.1.0 0.0.0.255 area 0.0.0.0
(config-router)#network 172.16.0.0 0.0.0.255 area 0.0.0.0

sh runを見ると、このようにかなりシンプル。OSPFコストの設定などは未実施。BIG-IP GUI側ではこのあたりのOSPF設定はできないように見える。

h-big-ip01.designet.local[1]#sh run
!
no service password-encryption
!
interface lo
!
interface tmm
!
interface inside
!
interface hosting
!
router ospf 1
 ospf router-id 192.168.1.8
 network 172.16.0.0 0.0.0.255 area 0.0.0.0
 network 192.168.1.0 0.0.0.255 area 0.0.0.0
!
line con 0
 login
line vty 0 39
 login
!
end

これでOSPF neighborが張れた。ルート情報も交換できている。対向機器はCisco ASA5505。

h-big-ip01.designet.local[1]#show ip ospf neighbor

OSPF process 1:
Neighbor ID     Pri   State            Dead Time   Address         Interface
192.168.1.5       1   Full/DR          00:00:38    192.168.1.5     inside

h-big-ip01.designet.local[1]#sh ip route

K*      0.0.0.0/0 [0/0] via 192.168.1.5, inside
C       127.0.0.1/32 is directly connected, lo
C       127.1.1.254/32 is directly connected, tmm
C       172.16.0.0/24 is directly connected, hosting
C       192.168.1.0/24 is directly connected, inside
O E2    192.168.50.0/24 [110/20] via 192.168.1.5, inside, 02:09:31

(対向機器のルーティングテーブル)
ASA5505# sh route

S*    0.0.0.0 0.0.0.0 [1/0] via 133.xxx.xxx.xx, outside
O        172.16.0.0 255.255.255.0
           [110/20] via 192.168.1.8, 02:10:10, management
C        192.168.1.0 255.255.255.0 is directly connected, management
L        192.168.1.5 255.255.255.255 is directly connected, management
C        192.168.50.0 255.255.255.0 is directly connected, dmz
L        192.168.50.1 255.255.255.255 is directly connected, dmz

参考情報

F5オフィシャル情報

AskF5 | Manual Chapter: Working with Dynamic Routing

AskF5 | K14490: Overview of OSPF/OSPFv3 on the BIG-IP system

個人ブログ(英語)だが、一通りの手順は書いてある。私の環境での必要設定とは若干差異あり。

www.fransvandokkumburg.com

評価版では非実用的

BIG-IP VEをルータとしたが、評価版ライセンスではスループットが2Mbpsに制限されており、配下セグメントは実用的ではない…。

まとめ - BIG-IPにOSPFの設定をしてダイナミックルーティングする

(設定内容に不安があるので誤りがあれば指摘ください)
F5 BIG-IP GUIとIMIシェル(imish/ZebOS)の設定により、BIG-IPでCisco ASA5505とOSPFネイバーを形成し、ルート情報を交換することができた。この設定により、BIG-IPをルータとして使用し、セグメント追加時にもルート情報をダイナミックにアップデートできる。