Tuesday 25 April 2017

EIGRP on XR

EIGRP ရဲ့ သဘောတရားကတော့ အတူတူပါပဲ ဒါပေမယ့် XR ရဲ့ ကန့်သတ်ချက်လေး တွေရှိနေတာကိုတော့ သတိပြုရပါမယ်။ IOS XR ပေါ်မှာ EIGRP Configuration လုပ်တဲ့ ပုံစံကိုဆက်ကြည့်ရအောင်။ သိသိသာသာ ပြောင်းသွားတာကတော့ Address-family အောက်မှာ အသုံးပြုရတဲ့ပုံစံပါ။ Auto summary က Default အနေနဲ့ ပိတ်ထားတဲ့ အတွက် no auto summary မလိုပါဘူး။ Neighbors up/down status ကိုကြည့်ဖို့ ရာအတွက် ထည့်ရေးပေးရပါတယ်။ အဲဒါမပါရင် Neighbor up/down အခြေအနေကို Log မှာ မမြင်ရပါဘူး။

RP/0/0/CPU0:XR1#conf t
RP/0/0/CPU0:XR1(config)#router eigrp 1
RP/0/0/CPU0:XR1(config-eigrp)#address-family ipv4
RP/0/0/CPU0:XR1(config-eigrp-af)#log-neighbor-changes


RP/0/0/CPU0:XR1(config-eigrp-af)#interface g0/0/0/0
RP/0/0/CPU0:XR1(config-eigrp-af-if)#exit
RP/0/0/CPU0:XR1(config-eigrp-af)#exi
RP/0/0/CPU0:XR1(config-eigrp)#exit
RP/0/0/CPU0:XR1(config)#commit

RP/0/0/CPU0:Apr 23 12:44:17.626 : eigrp[1002]: %ROUTING-EIGRP-5-NBRCHANGE : EIGRP-1: default-v4 1: Neighbor 192.168.1.2 (GigabitEthernet0/0/0/0) is up: new adjacency

Show IP Protocols နဲ့ ကြည့်ရင် သူရဲ့  Default setting/ timers တွေကို အလွယ်တကူ သိနိုင်ပါတယ်။

RP/0/0/CPU0:XR1#sh ip protocols
Routing Protocol: EIGRP, instance 1
 Default context AS: 1, Router ID: 192.168.1.1
  Address Family: IPv4
   Logging neighbor changes
   Default networks not flagged in outgoing updates
   Default networks not accepted from incoming updates
   Distance: internal 90, external 170
   Maximum paths: 4
   EIGRP metric weight K1=1, K2=0, K3=1, K4=0, K5=0, K6=0


   EIGRP metric rib scale 128
   EIGRP metric version 64-bit
   EIGRP maximum hopcount 100
   EIGRP maximum metric variance 1
   EIGRP NSF: enabled
    NSF-aware route hold timer is 480s
    NSF signal timer is 20s
    NSF converge timer is 300s
    Time since last restart is 00:00:11
   SIA Active timer is 180s
   Interfaces:
    GigabitEthernet0/0/0/0

RP/0/0/CPU0:XR1#sh eigrp nei
IPv4-EIGRP Neighbors for AS(1) VRF default

H   Address                 Interface       Hold Uptime   SRTT   RTO  Q  Seq
                                            (sec)         (ms)       Cnt Num
0   192.168.1.2             Gi0/0/0/0         11 00:01:30   59   354  0  2

Commit လုပ်တဲ့အချိန်မှာ အမှားပါသွားရင် လက်မခံပါဘူး။ ဘာကြောင့် လက်မခံသလဲဆိုတာကို failed config ကနေပြန်ကြည့်နိုင်ပါတယ်။ ဒီနမူနာမှာဆိုရင် load sharing အတွက် Maximum paths ကို 32 အထိရတယ်ဆိုပြီး ဆိုပါတယ် ဒါပေမယ့် တကယ် ကိုယ်သုံးတဲ့ Platform က လက်မခံနိုင်ရင်တော့ မရပါဘူး။ 

RP/0/0/CPU0:XR1#conf t
RP/0/0/CPU0:XR1(config)#router eigrp 1
RP/0/0/CPU0:XR1(config-eigrp)#address-family ipv4
RP/0/0/CPU0:XR1(config-eigrp-af)#maximum-paths 32
RP/0/0/CPU0:XR1(config-eigrp-af)#commit

% Failed to commit one or more configuration items during a pseudo-atomic operation. All changes made have been reverted. Please issue 'show configuration failed [inheritance]' from this session to view the errors

RP/0/0/CPU0:XR1(config-eigrp-af)#show configuration failed inheritance
!! SEMANTIC ERRORS: This configuration was rejected by
!! the system due to semantic errors. The individual
!! errors with each failed configuration command can be
!! found below.


router eigrp 1
 address-family ipv4
  maximum-paths 32
!!% 'eigrp' detected the 'warning' condition 'C12000 Platform can support only 16 maximum-paths'
 !
!
End


ပြန်ပြင်ပြီး သုံးလိုက်ရင် အဆင်ပြေသွားပါတယ်။

RP/0/0/CPU0:XR1(config-eigrp-af)#maximum-paths 16
RP/0/0/CPU0:XR1(config-eigrp-af)#commit
RP/0/0/CPU0:XR1(config-eigrp-af)#
RP/0/0/CPU0:XR1#sh ip protocol | i path
   Maximum paths: 16

Load sharing မှာ unequal load အတွက် Variance သုံးရတယ်ဆိုတာ သိကြမှာပါ။ အများဆုံး 128 အထိလက်ခံတယ်။

RP/0/0/CPU0:XR1(config)#router eigrp 1
RP/0/0/CPU0:XR1(config-eigrp)#address-family ipv4
RP/0/0/CPU0:XR1(config-eigrp-af)#variance ?
  <1-128>  Metric variance multiplier
RP/0/0/CPU0:XR1(config-eigrp-af)#variance 128
RP/0/0/CPU0:XR1(config-eigrp-af)#commit
RP/0/0/CPU0:XR1(config-eigrp-af)#

RP/0/0/CPU0:XR1#sh ip protocol | i variance
   EIGRP maximum metric variance 128

မူလပုံစံအတိုင်း ပြန်ထားလိုက်မယ်။

RP/0/0/CPU0:XR1#conf t
RP/0/0/CPU0:XR1(config)#router eigrp 1
RP/0/0/CPU0:XR1(config-eigrp)#address-family ipv4
RP/0/0/CPU0:XR1(config-eigrp-af)#no variance
RP/0/0/CPU0:XR1(config-eigrp-af)#no maximum-paths
RP/0/0/CPU0:XR1(config-eigrp-af)#commit
RP/0/0/CPU0:XR1(config-eigrp-af)#

RP/0/0/CPU0:XR1#sh ip protocol | i "path|variance"
   Maximum paths: 4
   EIGRP maximum metric variance 1

Route ကြည့်တဲ့ပုံစံ ပြောင်းသွားတယ်။ အရင်အတိုင်းလည်း ရပါသေးတယ် ဒါပေမယ့် သူပုံစံနဲ့ ကြည့်ရင် အနောက်က အသေးစိတ် ထပ်ပြီး ကြည့်လို့ရတာတွေ ပိုများတယ်။

RP/0/0/CPU0:XR1#sh ip route eigrp

D    2.2.2.2/32 [90/10752] via 192.168.1.2, 00:07:25, GigabitEthernet0/0/0/0

RP/0/0/CPU0:XR1#show route eigrp

D    2.2.2.2/32 [90/10752] via 192.168.1.2, 00:07:10, GigabitEthernet0/0/0/0

Authentication အတွက် Key ကို activate လုပ်တာနဲ့ မရသေးဘူး။ Cryptographic-algorithm ကို md5 အသုံးပြုမှရတယ်။

RP/0/0/CPU0:XR1(config)#
RP/0/0/CPU0:XR1(config)#key chain E-KEY
RP/0/0/CPU0:XR1(config-E-KEY)#key 1
RP/0/0/CPU0:XR1(config-E-KEY-1)#key-string clear cisco

RP/0/0/CPU0:XR1#show key chain E-KEY
Key-chain: E-KEY/ -

Key 1 -- text "045802150C2E"
  cryptographic-algorithm -- Not configured
  Send lifetime: Not configured
  Accept lifetime: Not configured

RP/0/0/CPU0:XR1(config)#router eigrp 1
RP/0/0/CPU0:XR1(config-eigrp)#address-family ipv4
RP/0/0/CPU0:XR1(config-eigrp-af)#interface g0/0/0/0
RP/0/0/CPU0:XR1(config-eigrp-af-if)#authentication keychain E-KEY
RP/0/0/CPU0:XR1(config-eigrp-af-if)#commit

RP/0/0/CPU0:XR1#show eigrp interfaces g0/0/0/0 detail | i "Key|key"
  Authentication mode: MD5  Key chain: E-KEY
  No active key found in keychain database
  Packets dropped due to wrong keychain config: 0

Neighbour ပြုတ်သွားလိမ့်မယ်။ တစ်ဖက်က ဒီအတိုင်းလိုက်ပြောင်းရင်လည်း ရမှာ မဟုတ်။

RP/0/0/CPU0:Apr 23 13:20:51.565 : eigrp[1002]: %ROUTING-EIGRP-5-NBRCHANGE : EIGRP-1: default-v4 1: Neighbor 192.168.1.2 (GigabitEthernet0/0/0/0) is down: authentication mode changed

ဒီအခြေအနေအထိ မရသေးဘူး။ Key activate လုပ်ဖို့အတွက် Lifetime ထည့်ပြီး  md5 ပြောင်းမယ်။

RP/0/0/CPU0:XR2#conf t
RP/0/0/CPU0:XR2(config)#key chain E-KEY
RP/0/0/CPU0:XR2(config-E-KEY)# key 1
RP/0/0/CPU0:XR2(config-E-KEY-1)#send-lifetime 00:00:00 22 April 2017 infinite
RP/0/0/CPU0:XR2(config-E-KEY-1)#accept-lifetime 00:00:00 22 April 2017 infinite
RP/0/0/CPU0:XR1(config-E-KEY-1)#cryptographic-algorithm md5


RP/0/0/CPU0:XR1(config-E-KEY-1)#commit
RP/0/0/CPU0:XR1(config-E-KEY-1)#

ဒီပုံစံအတိုင်း နှစ်ဖက်စလုံးမှာ ထည့်လိုက်ရင်တော့ Key active ဖြစ်သွားပြီး Neighbor ပြန်တက်လာမှာဖြစ်ပါတယ်။

RP/0/0/CPU0:XR1#show eigrp interfaces g0/0/0/0 detail | i "Key|key"
  Authentication mode: MD5  Key chain: E-KEY
  Current active key id: 1

RP/0/0/CPU0:XR1#sh eigrp nei

IPv4-EIGRP Neighbors for AS(1) VRF default

H   Address                 Interface       Hold Uptime   SRTT   RTO  Q  Seq
                                            (sec)         (ms)       Cnt Num
0   192.168.1.2             Gi0/0/0/0         11 00:00:22   35   210  0  6

အခုလောက်ဆို IOS XR ပေါ်မှာ Basic EIGRP Configuration ကို အလုပ်ဖြစ်အောင်လုပ်လို့ ရသွားပါပြီ။ Route policy တွေ ဘာတွေနဲ့ တွဲသုံးလိုက်ရင်တော့ ပိုပြီး အဆင်ပြေသွားပါလိမ့်မယ်။

ကိုဖြိုး

No comments:

Post a Comment