LISP IP Mobility 2

今回はLISPのIP Mobilityにおいて、ホストが異なるサブネットに移動した際の動作を見ていきたいと思います。

 

概要

異なるサブネットへのIP Mobility

LISPのASMのIP Mobilityでは、異なるサブネットへのIP Mobilityをサポートしています。
同一サブネット上でのASMのIP Mobilityと動作の原理は同じですので、動作の詳細を知りたい方は、こちらの記事を参照の程よろしくお願いします。

 

 

異なるサブネットに移動した場合、以下のネットワークアドレスが一致しない問題が発生します。

  • IP Mobilityで移動したホストのアドレス
  • ホストの移動先の拠点のxTRのLAN側のアドレス

 

この問題は、IP Mobilityが発生する拠点のxTRでHSRPやVRRPを設定し、同じMACアドレスを保持させるだけで解消できます。

 

ホストのアドレスとxTRのLAN側のアドレスのネットワークアドレスは異なりますが、移動前後のxTRは同じMACアドレスを保持しているため、ホストは通信を継続できます。

 

IP Mobility発生後、もしホストがデフォルトゲートウェイに対応するMACアドレスの解決を試みた場合、xTRはProxy ARPによって、自身のMACアドレスを返信します。

 

検証環境、内容

検証内容

R1をMR/MS、R2とR3をxTRとして動作させます。

R2はEID-Prefixが10.1.1.0/24、RLOCが172.16.1.2のマッピング情報をR1に登録します。
R3はEID-Prefixが10.2.2.0/24、RLOCが172.16.1.3のマッピング情報をR1に登録します。
R4はEID-Prefixが10.3.3.0/24、RLOCが172.16.1.4のマッピング情報をR1に登録します。

R3とR4で10.2.2.0/25に含まれるホストを検出した際、動的にIPアドレスをR1に登録します。

10.2.2.0/24から10.3.3.0/24にR6を移動させた際の動作を確認します。

 

設定


interface GigabitEthernet2
 ip address 172.16.1.1 255.255.255.0
!
router lisp
 service ipv4
  map-server
  map-resolver
  exit-service-ipv4
 !
 site Site_1
  authentication-key Zaq12wsx!@
  eid-record 10.1.1.0/24
  eid-record 10.2.2.0/24 accept-more-specifics
  eid-record 10.3.3.0/24
  exit-site
 !
 exit-router-lisp
            


interface GigabitEthernet2
 ip address 172.16.1.2 255.255.255.0
!
interface GigabitEthernet3
 ip address 10.1.1.2 255.255.255.0
!
router lisp
 service ipv4
  itr map-resolver 172.16.1.1
  itr
  etr map-server 172.16.1.1 key Zaq12wsx!@
  etr
  exit-service-ipv4
 !
 instance-id 0
  service ipv4
   eid-table default
   database-mapping 10.1.1.0/24 172.16.1.2 priority 1 weight 50
   exit-service-ipv4
  !
  exit-instance-id
 !
 exit-router-lisp
            


interface GigabitEthernet2
 ip address 172.16.1.3 255.255.255.0
!
interface GigabitEthernet3
 ip address 10.2.2.3 255.255.255.0
 standby 1 ip 10.2.2.254
 lisp mobility DYNAMIC_EID
!
router lisp
 locator-set RLOC
  172.16.1.3 priority 1 weight 50
  exit-locator-set
 !
 service ipv4
  itr map-resolver 172.16.1.1
  itr
  etr map-server 172.16.1.1 key Zaq12wsx!@
  etr
  exit-service-ipv4
 !
 instance-id 0
  dynamic-eid DYNAMIC_EID
   database-mapping 10.2.2.0/25 locator-set RLOC
   exit-dynamic-eid
  !
  service ipv4
   eid-table default
   database-mapping 10.2.2.0/24 locator-set RLOC
   exit-service-ipv4
  !
  exit-instance-id
 !
 exit-router-lisp
            


interface GigabitEthernet2
 ip address 172.16.1.4 255.255.255.0
!
interface GigabitEthernet3
 ip address 10.3.3.4 255.255.255.0
 standby 1 ip 10.3.3.254
 lisp mobility DYNAMIC_EID
!
router lisp
 locator-set RLOC
  172.16.1.4 priority 1 weight 50
  exit-locator-set
 !
 service ipv4
  itr map-resolver 172.16.1.1
  itr
  etr map-server 172.16.1.1 key Zaq12wsx!@
  etr
  exit-service-ipv4
 !
 instance-id 0
  dynamic-eid DYNAMIC_EID
   database-mapping 10.2.2.0/25 locator-set RLOC
   exit-dynamic-eid
  !
  service ipv4
   eid-table default
   database-mapping 10.3.3.0/24 locator-set RLOC
   exit-service-ipv4
  !
  exit-instance-id
 !
 exit-router-lisp
            


interface GigabitEthernet2
 ip address 10.1.1.5 255.255.255.0
!
ip route 0.0.0.0 0.0.0.0 10.1.1.2
            


interface GigabitEthernet2
 ip address 10.2.2.6 255.255.255.0
!
ip route 0.0.0.0 0.0.0.0 10.2.2.254
            

 

設定内容の確認

MR/MSの設定確認

MR/MSとして動作させるR1では、IP Mobilityが発生するEID-Prefixにおいて、accept-more-specificsオプションを指定するのみです。

R1

router lisp
 site Site_1
  eid-record 10.2.2.0/24 accept-more-specifics
            

 

xTRの設定の確認

R3は前回の記事と設定は同様です。

R4でも同様にIP Mobilityが発生するセグメントとして10.2.2.0/25を定義し、インタフェースに適用します。
また、R3とR4に同じMACアドレスを保持させるために、HSRPを設定します。

R4

interface GigabitEthernet3
 standby 1 ip 10.3.3.254
 lisp mobility DYNAMIC_EID
!
router lisp
 locator-set RLOC
  172.16.1.4 priority 1 weight 50
  exit-locator-set
 !
 instance-id 0
  dynamic-eid DYNAMIC_EID
   database-mapping 10.2.2.0/25 locator-set RLOC
   exit-dynamic-eid
  !
  service ipv4
   eid-table default
   database-mapping 10.3.3.0/24 locator-set RLOC
   exit-service-ipv4
  !
  exit-instance-id
 !
 exit-router-lisp
            

 

IP Mobility発生前の状態確認

構成

IP Mobility発生前の状態を確認します。

 

Dynamic EID検出前の状態確認

R4は10.2.2.0/24のセグメントを保持してないため、R1のMapping Databaseでは、10.2.2.0/24のRLOCとしてR3の172.16.1.3のみが存在していることが確認できます。

R1

R1#show lisp site 10.2.2.0/24
LISP Site Registration Information

Site name: Site_1
Allowed configured locators: any
Requested EID-prefix:

  EID-prefix: 10.2.2.0/24
    First registered:     00:01:30
    Last registered:      00:01:25
    Routing table tag:    0
    Origin:               Configuration, accepting more specifics
    Merge active:         No
    Proxy reply:          No
    Skip Publication:     No
    Force Withdraw:       No
    TTL:                  1d00h
    State:                complete
    Registration errors:
      Authentication failures:   0
      Allowed locators mismatch: 0
    ETR 172.16.1.3:30825, last registered 00:01:25, no proxy-reply, map-notify
                          TTL 1d00h, no merge, hash-function sha1, nonce 0xE769CF0B-0x94942CFD
                          state complete, no security-capability
                          xTR-ID 0xDF60874D-0x650058BC-0x95BF9609-0xA9E73690
                          site-ID unspecified
                          Domain-ID unspecified
                          Multihoming-ID unspecified
                          sourced by reliable transport
      Locator     Local  State      Pri/Wgt  Scope
      172.16.1.3  yes    up           1/50   IPv4 none
            

 

また、現在はDynamic EIDの検出前なので、R3の検出したDynamic EIDの数が0であることが確認できます。

R3

R3#show lisp dynamic-eid
% Command accepted but obsolete, unreleased or unsupported; see documentation.

LISP Dynamic EID Information for router 0, IID 0, EID-table VRF "default"

Dynamic-EID name: DYNAMIC_EID
  Database-mapping EID-prefix: 10.2.2.0/25, locator-set RLOC
  Registering more-specific dynamic-EIDs
  Map-Server(s): none configured, use global Map-Server
  Site-based multicast Map-Notify group: none configured
  Number of roaming dynamic-EIDs discovered: 0
            

 

Dynamic EID検出後の状態確認

R6からARPフレームを送信します。

 

R3がDynamic EIDとして10.2.2.6を検出していることが確認できます。

R3

R3#show lisp dynamic-eid
% Command accepted but obsolete, unreleased or unsupported; see documentation.

LISP Dynamic EID Information for router 0, IID 0, EID-table VRF "default"

Dynamic-EID name: DYNAMIC_EID
  Database-mapping EID-prefix: 10.2.2.0/25, locator-set RLOC
  Registering more-specific dynamic-EIDs
  Map-Server(s): none configured, use global Map-Server
  Site-based multicast Map-Notify group: none configured
  Number of roaming dynamic-EIDs discovered: 1
  Last dynamic-EID discovered: 10.2.2.6, 00:00:15 ago
            

 

R3のルーティングテーブルに、Dynamic EIDとして検出した10.2.2.6が投入されていることが確認できます。

R3

R3#show ip route
      10.0.0.0/8 is variably subnetted, 3 subnets, 2 masks
C        10.2.2.0/24 is directly connected, GigabitEthernet3
L        10.2.2.3/32 is directly connected, GigabitEthernet3
l        10.2.2.6/32 [10/1] via 10.2.2.6, 00:01:30, GigabitEthernet3
      172.16.0.0/16 is variably subnetted, 2 subnets, 2 masks
C        172.16.1.0/24 is directly connected, GigabitEthernet2
L        172.16.1.3/32 is directly connected, GigabitEthernet2
            

 

R3はDynamic EIDを検出後、R1にMap Registerメッセージを送信し、10.2.2.6を登録します。
この際、R4は10.2.2.0/24を登録してないため、R1はR4に対して10.2.2.6の存在を通知するためのMap Notifyメッセージは送信しません。

 

以下は、Map Registerメッセージ受信後のR1の状態になります。
Dynamic IDとして検出した10.2.2.6とRLOCのマッピング情報が存在することが確認できます。

R1

R1#show lisp site 10.2.2.6/32
LISP Site Registration Information

Site name: Site_1
Allowed configured locators: any
Allowed EID-prefixes:

  EID-prefix: 10.2.2.6/32
    First registered:     00:01:51
    Last registered:      00:01:51
    Routing table tag:    0
    Origin:               Dynamic, more specific of 10.2.2.0/24
    Merge active:         No
    Proxy reply:          No
    Skip Publication:     No
    Force Withdraw:       No
    TTL:                  1d00h
    State:                complete
    Registration errors:
      Authentication failures:   0
      Allowed locators mismatch: 0
    ETR 172.16.1.3:30825, last registered 00:01:51, no proxy-reply, map-notify
                          TTL 1d00h, no merge, hash-function sha1, nonce 0xE769CF0B-0x94942CFD
                          state complete, no security-capability
                          xTR-ID 0xDF60874D-0x650058BC-0x95BF9609-0xA9E73690
                          site-ID unspecified
                          Domain-ID unspecified
                          Multihoming-ID unspecified
                          sourced by reliable transport
      Locator     Local  State      Pri/Wgt  Scope
      172.16.1.3  yes    up           1/50   IPv4 none
            

 

R1はR4に対して10.2.2.6の存在を通知するためのMap Notifyメッセージを送信していないため、R4は10.2.2.6/32を認識していないことが確認できます。

R4

R4#show ip lisp map-cache
LISP IPv4 Mapping Cache for EID-table default (IID 0), 2 entries

0.0.0.0/0, uptime: 00:00:46, expires: 00:00:13, via static-send-map-request
  Negative cache entry, action: send-map-request
10.2.2.0/25, uptime: 00:03:56, expires: never, via dynamic-EID, send-map-request
  Negative cache entry, action: send-map-request
            

 

通信発生時の状態確認

R5の10.1.1.5からR6の10.2.2.6にトラフィックを送信します。

R2は10.2.2.6宛のパケットを受信した際、R1にMap Requestメッセージを送信し、RLOCとして172.16.1.3を学習します。

 

R2でshow ip lisp map-cacheコマンドを実行すると、10.2.2.6/32のRLOCとして172.16.1.3を学習していることが確認できます。

R2

R2#show ip lisp map-cache
LISP IPv4 Mapping Cache for EID-table default (IID 0), 2 entries

0.0.0.0/0, uptime: 00:00:30, expires: 00:00:29, via static-send-map-request
  Negative cache entry, action: send-map-request
10.2.2.6/32, uptime: 00:00:36, expires: 23:59:23, via map-reply, complete
  Locator     Uptime    State  Pri/Wgt     Encap-IID
  172.16.1.3  00:00:36  up       1/50        -
            

 

R2はMap Cacheの情報を基に、10.2.2.6宛のパケットを172.16.1.3に転送します。

 

IP Mobility発生後の状態確認

構成

IP Mobiltiyが発生し、10.2.2.0/24から10.3.3.0/24にR6が移動した後の状態を確認します。

 

Dynamic EID検出後の状態確認

R6からARPフレームを送信します。

 

R4がDynamic EIDとして10.2.2.6を検出していることが確認できます。

R4

R4#show lisp dynamic-eid
% Command accepted but obsolete, unreleased or unsupported; see documentation.

LISP Dynamic EID Information for router 0, IID 0, EID-table VRF "default"

Dynamic-EID name: DYNAMIC_EID
  Database-mapping EID-prefix: 10.2.2.0/25, locator-set RLOC
  Registering more-specific dynamic-EIDs
  Map-Server(s): none configured, use global Map-Server
  Site-based multicast Map-Notify group: none configured
  Number of roaming dynamic-EIDs discovered: 1
  Last dynamic-EID discovered: 10.2.2.6, 00:00:02 ago
            

 

R4のルーティングテーブルを見てみると、Dynamic EIDとして検出した10.2.2.6がルーティングテーブルに投入されていることが確認できます。

R4

R4#show ip route
      10.0.0.0/8 is variably subnetted, 3 subnets, 2 masks
l        10.2.2.6/32 [10/1] via 10.2.2.6, 00:00:50, GigabitEthernet3
C        10.3.3.0/24 is directly connected, GigabitEthernet3
L        10.3.3.4/32 is directly connected, GigabitEthernet3
      172.16.0.0/16 is variably subnetted, 2 subnets, 2 masks
C        172.16.1.0/24 is directly connected, GigabitEthernet2
L        172.16.1.4/32 is directly connected, GigabitEthernet2
            

 

R4はDynamic EIDを検出後、R1にMap Registerメッセージを送信し、10.2.2.6のRLOCを更新します。

 

以下は、Map Registerメッセージ受信後のR1の状態になります。
10.2.2.6のRLOCが172.16.1.3から172.16.1.4に更新されたことが確認できます。

R1

R1#show lisp site 10.2.2.6/32
LISP Site Registration Information

Site name: Site_1
Allowed configured locators: any
Allowed EID-prefixes:

  EID-prefix: 10.2.2.6/32
    First registered:     00:01:30
    Last registered:      00:01:30
    Routing table tag:    0
    Origin:               Dynamic, more specific of 10.2.2.0/24
    Merge active:         No
    Proxy reply:          No
    Skip Publication:     No
    Force Withdraw:       No
    TTL:                  1d00h
    State:                complete
    Registration errors:
      Authentication failures:   0
      Allowed locators mismatch: 0
    ETR 172.16.1.4:26222, last registered 00:01:30, no proxy-reply, map-notify
                          TTL 1d00h, no merge, hash-function sha1, nonce 0xAE38D63D-0xB897B24D
                          state complete, no security-capability
                          xTR-ID 0x71B85D01-0xECCD3586-0x54EDCE65-0xEC9A6875
                          site-ID unspecified
                          Domain-ID unspecified
                          Multihoming-ID unspecified
                          sourced by reliable transport
      Locator     Local  State      Pri/Wgt  Scope
      172.16.1.4  yes    up           1/50   IPv4 none
            

 

R1は10.2.2.6のRLOCを更新後、10.2.2.0/24を登録しているR3にMap Notifyメッセージを送信し、10.2.2.6のR6が別拠点に移動したことを通知します。

 

R3が検出したDynamic EIDの数が0に変化したことが確認できます。

R3

R3#show lisp dynamic-eid
% Command accepted but obsolete, unreleased or unsupported; see documentation.

LISP Dynamic EID Information for router 0, IID 0, EID-table VRF "default"

Dynamic-EID name: DYNAMIC_EID
  Database-mapping EID-prefix: 10.2.2.0/25, locator-set RLOC
  Registering more-specific dynamic-EIDs
  Map-Server(s): none configured, use global Map-Server
  Site-based multicast Map-Notify group: none configured
  Number of roaming dynamic-EIDs discovered: 0
  Last dynamic-EID discovered: 10.2.2.6, 00:05:29 ago
            

 

R3のルーティングテーブルから10.2.2.6/32が削除されたことが確認できます。

R3

R3#show ip route
      10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C        10.2.2.0/24 is directly connected, GigabitEthernet3
L        10.2.2.3/32 is directly connected, GigabitEthernet3
      172.16.0.0/16 is variably subnetted, 2 subnets, 2 masks
C        172.16.1.0/24 is directly connected, GigabitEthernet2
L        172.16.1.3/32 is directly connected, GigabitEthernet2
            

 

R3のMap Cacheに10.2.2.6/32が追加され、RLOCが172.16.1.4であることが確認できます。

R3

R3#show ip lisp map-cache
LISP IPv4 Mapping Cache for EID-table default (IID 0), 4 entries

0.0.0.0/0, uptime: 00:00:53, expires: 00:00:06, via static-send-map-request
  Negative cache entry, action: send-map-request
10.1.1.0/24, uptime: 00:03:03, expires: 23:56:56, via map-reply, complete
  Locator     Uptime    State  Pri/Wgt     Encap-IID
  172.16.1.2  00:03:03  up       1/50        -
10.2.2.0/25, uptime: 00:09:04, expires: never, via dynamic-EID, self, send-map-request
  Negative cache entry, action: send-map-request
10.2.2.6/32, uptime: 00:00:31, expires: 00:00:29, via map-reply, self, forward-native
  Locator     Uptime    State  Pri/Wgt     Encap-IID
  172.16.1.4  00:00:31  up       1/50        -
            

 

通信発生時の状態確認

R5の10.1.1.5からR6の10.2.2.6にトラフィックを送信します。

R2のMap Cacheは更新されてないため、R2は10.2.2.6宛のパケットをR3に転送します。そして、R3は受信したパケットをR4に転送します。

 

R3は別拠点に移動した10.2.2.6宛のパケットを受信後、R2に対してSMRを送信して、10.2.2.6のRLOCの再解決を依頼します。

 

 

R2はSMRを受信後、R1にMap Requestメッセージを送信し、10.2.2.6のRLOCを172.16.1.3から172.16.1.4に更新します。

 

R2の10.2.2.6/32のRLOCが172.16.1.3から172.16.1.4に変更されたことが確認できます。

R2

R2#show ip lisp map-cache
LISP IPv4 Mapping Cache for EID-table default (IID 0), 2 entries

0.0.0.0/0, uptime: 00:00:45, expires: 00:00:15, via static-send-map-request
  Negative cache entry, action: send-map-request
10.2.2.6/32, uptime: 00:04:52, expires: 23:59:45, via map-reply, complete
  Locator     Uptime    State  Pri/Wgt     Encap-IID
  172.16.1.4  00:00:14  up       1/50        -
            

 

これ以降、R2は10.2.2.6宛のパケットを受信した際、直接R4にパケットを転送します。

 

以下はR5の10.1.1.5からR6の10.2.2.6へのPingの実行結果になります。
10.3.3.0/24に移動したR6と疎通可能なことが確認できます。

R5

R5#ping 10.2.2.6 source 10.1.1.5
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.2.2.6, timeout is 2 seconds:
Packet sent with a source address of 10.1.1.5
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
            

コメント

タイトルとURLをコピーしました