LISP Proxy Reply

今回はLISPのProxy Replyと呼ばれる機能について説明します。

 

概要

Proxy Replyについて

xTRがEIDに対応するRLOCを解決する場合、xTRはMR/MSにMap Requestメッセージを送信します。
MR/MSはEIDに対応するRLOCを保持するxTRに対して、Map Requestメッセージを転送します。
そして、EIDに対応するRLOCを保持するxTRがMap Replyメッセージを返信します。

 

ここで、MR/MSがMap Requestメッセージを転送せずに、MR/MS自身がMap Replyメッセージを返信すれば良いのでは、と疑問に思う方もいると思います。

MR/MS自身がMap Replyメッセージを返信することも可能で、この動作をProxy Replyと呼びます。
Proxy Replyでは、xTRはMap Replyメッセージを受信後、Map Replyメッセージ経由で学習したRLOCに対してProbeを送信して、RLOCに到達可能かどうかを確認します。

 

LISP-MNについて

現在、LISPのxTRの処理を実施可能な無線端末が存在しており、この端末をLISP-MN(LISP Mobile Node)と呼びます。

LISP-MNはEIDとRLOCの2種類のIPアドレスを保持し、生成したパケットを自身でLISPでカプセル化して転送します。

 

他のホストがLISP-MNに対してパケットを送信する際、LISP-MNのEIDに対応するRLOCを解決するために、xTRはMR/MSにMap Requestメッセージを送信します。
MR/MSはLISP-MNにMap Requestメッセージを転送し、LISP-MNはxTRに対して自身のRLOCを格納したMap Replyメッセージを返信します。

LISP-MNは無線端末なため、この処理が頻繁に発生した場合、LISP-MNのバッテリーが激しく消費してしまいます。

 

ここで、Proxy Replyを使用することで、LISP-MNの処理はProbeへの応答のみになります。その結果、LISP-MNの処理負荷が減り、LISP-MNのバッテリーの消費を軽減できます。

 

検証の基本設定

基本設定の内容

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に登録します。

EIDに対応するRLOCを解決する際、Proxy Replyを使用します。

 

 

基本設定


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
  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 map-server 172.16.1.1 proxy-reply
  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
!
ip route 0.0.0.0 0.0.0.0 172.16.1.3
            


interface GigabitEthernet2
 ip address 172.16.1.3 255.255.255.0
!
interface GigabitEthernet3
 ip address 10.2.2.3 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 map-server 172.16.1.1 proxy-reply
  etr
  exit-service-ipv4
 !
 instance-id 0
  service ipv4
   eid-table default
   database-mapping 10.2.2.0/24 172.16.1.3 priority 1 weight 50
   exit-service-ipv4
  !
  exit-instance-id
 !
 exit-router-lisp
            


interface GigabitEthernet2
 ip address 10.1.1.4 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.5 255.255.255.0
!
ip route 0.0.0.0 0.0.0.0 10.2.2.3
            

 

設定内容と状態の確認

LISPの設定確認

MR/MSであるR1側では特別な設定は不要です。

xTRとして動作させるR2、R3ではetr map-server <MRのアドレス> proxy-replyコマンドを設定することで、自身が登録したEID-Prefixに関するMap RequestメッセージをMR/MSが受信した際に、MR/MSがProxy Replyで処理できるようになります。

R2 , R3

router lisp
 service ipv4
  itr map-resolver 172.16.1.1
  itr
  etr map-server 172.16.1.1 key Zaq12wsx!@
  etr map-server 172.16.1.1 proxy-reply
  etr
  exit-service-ipv4
            

 

EID-PrefixとRLOCのマッピング情報登録時の様子

Proxy Replyが有効なxTRはMap Registerメッセージを送信する際、P(Proxy-Map-Reply)ビットをセットします。

これにより、MR/MSはPビットがセットされたEID-Prefixに対するMap Requestメッセージを受信した際、Proxy Replyで処理することができます。

 

以下はR1がMap Registerメッセージを受信した際のデバックになります。Pビットがセットされていることが確認できます。

R1

R1#debug lisp control-plane all

*May 20 22:13:46.527: [MS]  LISP-0: Processing received Map-Register(3) message on GigabitEthernet2 from 172.16.1.2:4342 to 172.16.1.1:4342.
*May 20 22:13:46.528: [MS]  LISP: Received Map-Register proxy, map-notify, no merge, no security, no mobile-node, not to-RTR, no fast-map-register, no EID-notify, ID-included, 1 record, nonce 0xC3706C40-0xB28079B9, key-id 1, auth-data-len 20, hash-function sha1, xTR-ID 0xF180E005-0x7DEB7B41-0x6FFC3231-0xCD92F0F5, site-ID unspecified, domain-id none, multihoming-id none
*May 20 22:13:46.528: [MS]  LISP-0: Received Map-Register mapping record for IID 0 SVC_IP_IAF_IPv4 10.1.1.0/24 LCAF 254, ttl 1440, action none, authoritative, 1 locator.
*May 20 22:13:46.528: [MS]  LISP-0:     172.16.1.2 pri/wei/dID/mID=1/50/0/0 LpR.
            

 

以下はR2がR1に送信したMap Registerメッセージになります。Pビットがセットされていることが確認できます。

 

R1のMapping Databaseを確認すると、マッピング情報においてProxy Replyが有効になっていることが確認できます。

R1

R1#show lisp site detail
LISP Site Registration Information

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

  EID-prefix: 10.1.1.0/24
    First registered:     00:02:30
    Last registered:      00:02:26
    Routing table tag:    0
    Origin:               Configuration
    Merge active:         No
    Proxy reply:          Yes
    Skip Publication:     No
    Force Withdraw:       No
    TTL:                  1d00h
    State:                complete
    Registration errors:
      Authentication failures:   0
      Allowed locators mismatch: 0
    ETR 172.16.1.2:39497, last registered 00:02:26, proxy-reply, map-notify
                          TTL 1d00h, no merge, hash-function sha1, nonce 0xC3706C40-0xB28079B9
                          state complete, no security-capability
                          xTR-ID 0xF180E005-0x7DEB7B41-0x6FFC3231-0xCD92F0F5
                          site-ID unspecified
                          Domain-ID unspecified
                          Multihoming-ID unspecified
                          sourced by reliable transport
      Locator     Local  State      Pri/Wgt  Scope
      172.16.1.2  yes    up           1/50   IPv4 none

  EID-prefix: 10.2.2.0/24
    First registered:     01:15:35
    Last registered:      00:00:49
    Routing table tag:    0
    Origin:               Configuration
    Merge active:         No
    Proxy reply:          Yes
    Skip Publication:     No
    Force Withdraw:       No
    TTL:                  1d00h
    State:                complete
    Registration errors:
      Authentication failures:   0
      Allowed locators mismatch: 0
    ETR 172.16.1.3:49595, last registered 00:00:49, proxy-reply, map-notify
                          TTL 1d00h, no merge, hash-function sha1, nonce 0xD00194B4-0x33546274
                          state complete, no security-capability
                          xTR-ID 0x3B292838-0x0D7337B7-0x09A588D6-0xEA0ABEB2
                          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
            

 

宛先のEIDに対応するRLOC解決時の様子

R2が10.2.2.5のRLOCを解決する際の様子を確認します。

 

以下はR1がMap Requestメッセージを受信した際のデバッグになります。R1がR2に対してMap Replyメッセージを直接返信していることが確認できます。

R1

R1#debug lisp control-plane all

*May 20 22:20:26.394: [MS]  LISP-0: Processing received Encap-Control(8) message on GigabitEthernet2 from 172.16.1.2:4342 to 172.16.1.1:4342.
*May 20 22:20:26.395: [MS]  LISP-0: Processing received Map-Request(1) message on GigabitEthernet2 from 10.2.2.5:4342 to 10.2.2.5:4342.
*May 20 22:20:26.397: [MS]  LISP-0: Received map request for IID 0 10.2.2.5/32, source_eid IID 0 10.1.1.4, ITR-RLOCs: 172.16.1.2, records 1, nonce 0xAC7AE03D-0x9E485CD3.
*May 20 22:20:26.399: [MS]  LISP-0: MS EID IID 0 prefix 10.2.2.0/24 SVC_IP_IAF_IPv4 site Site_1, Sending proxy reply to 172.16.1.2.
            

 

以下は、R2が10.2.2.5のRLOCを解決する際に発生したMap Replyメッセージになります。Map Replyメッセージの送信元アドレスが172.16.1.1なので、R1がMap Replyメッセージを返信していることが確認できます。

 

R2はMap Replyメッセージ受信後、RLOCに到達可能か確認するために、R3の172.16.1.3に対してProbeを送信します。

 

以下はProbe送信時のR2のデバックになります。R2が172.16.1.3に対してProbeを送信していることが確認できます。

R2

R2#debug lisp control-plane all

*May 20 22:20:26.209: [XTR] LISP: Send map request type remote EID RLOC
*May 20 22:20:26.210: [XTR] LISP: Send map request for EID prefix IID 0 10.2.2.0/24
*May 20 22:20:26.210: [XTR] LISP-0: Remote EID IID 0 prefix 10.2.2.0/24 [RRLOCset 0x7FC0DCCA4EC0 1/1] 172.16.1.3 pri/wei/dID/mID=1/50/0/0, Send RLOC probe (sources: , state: complete, rlocs: 1).
*May 20 22:20:26.210:       LISP-0: EID-AF IPv4, Sending probe map-request from 172.16.1.2 to 172.16.1.3 for EID 10.2.2.0/24, ITR-RLOCs 1, nonce 0x81343BC6-0x7678BB90.
*May 20 22:20:26.211: [XTR] LISP-0: Remote shrRLOC 172.16.1.3, Reachability notification, up* allow* remote.
*May 20 22:20:26.212: [XTR] LISP-0: Remote EID IID 0 prefix 10.2.2.0/24, No more RLOCs pending rwatch update, schedule deferred fwd update (sources: , state: complete, rlocs: 1).
            

 

以下はR2が172.16.1.3に対して送信したProbeになります。ProbeはP(Proxy)ビットがセットされたMap Requestメッセージであることが確認できます。

 

R3はProbeを受信後、R2に対して到達可能であることを通知するメッセージを返信します。

 

以下はR3がProbeを受信した際のデバックになります。R3がR2に対してメッセージを返信していることが確認できます。

R3

R3#debug lisp control-plane all

*May 20 22:20:26.401: [MS]  LISP-0: Processing received Map-Request(1) message on GigabitEthernet2 from 172.16.1.2:4342 to 172.16.1.3:4342.
*May 20 22:20:26.402: [MS]  LISP-0: Received map request for IID 0 10.2.2.0/24, source_eid UNSPEC, ITR-RLOCs: 172.16.1.2, records 1, nonce 0x81343BC6-0x7678BB90, probe.
*May 20 22:20:26.402:       LISP: Processing map request record for EID prefix IID 0 10.2.2.0/24
*May 20 22:20:26.403:       LISP-0: Sending map-reply from 172.16.1.3 to 172.16.1.2.
*May 20 22:20:35.517: [XTR] LISP-0: Remote EID IID 0 prefix 0.0.0.0/0, [mapping close to expire] Scheduling map requests delay 00:00:00 min_elapsed 00:00:01 (sources: , state: send-map-request, rlocs: 0).
*May 20 22:20:35.518:       LISP-0: IID 0 Request processing of remote EID prefix map requests to IPv4.
            

 

以下はR3がR2に返信したメッセージになります。Probeに対する応答メッセージはP(Proxy)ビットがセットされたMap Replyメッセージであることが確認できます。

コメント

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