DMVPN ဟာ NHRP ကိုအခြေခံထားတဲ့ Multipoint GRE၊ IPSec VPN နဲ့Dynamic routing protocols တို့ပေါင်းစပ်ဖွဲ့စည်းထားတဲ့ VPN လို့ဆိုရမှာဖြစ်ပါတယ်။ များသောအားဖြင့် MPLS VPN ရဲ့ Backup အနေနဲ့အသုံးပြုလေ့ရှိပါတယ်။ MPLS မရတဲ့ တစ်ချို့နေရာတွေမှာတော့ DMVPN ကိုပဲ အဓိကအနေနဲ့အသုံးပြုပီး Internet ပေါ်ကနေကိုယ်ပိုင် Private Network များကို တည်ဆောက် ထားလေ့ရှိပါတယ်။ ဒါဆို GRE Tunnel တွေနဲ့ ဘာကွာလဲလို့မေးကြမှာ ဖြစ်ပါတယ် ဒီတော့ သူ့ရဲ့ အလုပ်လုပ်ပုံ ကိုလေ့လာခြင်းအားဖြင့် ဘာကြောင့် အသုံးပြုကြတယ်ဆိုတာ သိလာမှာပါ။
GRE အစွမ်းထက်ပုံကိုသိထားပီဆိုရင် GRE ကိုအသုံးပြူပီး အထက်ကပြောခဲ့တဲ့ လိုအပ်ချက်ကို ရအောင်လုပ်ယူလို့ရပါတယ်၊ ဒါပေမယ့် GRE Tunnel ဟာ Point to point ဖြစ်တဲ့အတွက် ကိုယ့် မှာ ရုံးခွဲ ၁၀ ခုလောက်သာရှိခဲ့မယ်၊ အဲဒီ ရုံးခွဲတွေအားလုံဟာ HQ ရုံးချုပ်ကို ချိတ်ဆက်ဖို့လိုခဲ့မယ်ဆိုရင် HQ မှာ Tunnel ၁၀ ခုဆောက်ရပါမယ်၊ Branch ရုံးခွဲတွေဘက်ကလဲ HQ ကို Tunnel တစ်ခုစီ ဆောက်ရပါမယ်၊ အဲဒီ Tunnel တစ်ခုစီအတွက် IP address အတွဲ ၁၀ ခုလဲလိုမှာပေါ့၊ ဒီအထိ ပြဿနာ မရှိသေးပါဘူး၊ ဒါပေမယ့် နောက်ထပ် ရုံးခွဲ ၁ဝခုထပ်တိုးလာမယ်ဆိုရင်ဖြင့် လိုအပ်လာမည့် Tunnel နဲ့IP address အရေအတွက်တွေ၊ အဲဒါတွေကို Configuration လုပ်ပေးဖို့အတွက်ကို တွေးကြည့်ရင်တော့ သိပ်မလွယ်တော့တာ တွေ့ရမှာပါ၊ ဒါလဲရပါသေးတယ်၊ သေချာစနစ်တကျ စီမံခဲ့မယ်ဆိုရင် အဆင်ပြေနိုင်ပါသေးတယ်။ ပြဿနာက Branch/Spoke အချင်းချင်းဆက်သွယ်ဖို့လိုလာပီ၊ HQ/Hub ကနေအမြဲမသွားပဲ သီးသန့် Spoke to Spoke Tunnel တွေကနေသွားချင်တယ်ဆိုရင်တော့ နာပီပေါ့၊ Branch အခု ၂၀ ကို Full Mesh Tunnel ဆောက်ဖို့အတွက် လိုအပ်မည့် Tunnel နဲ့IP address အရေအတွက်ကို ကြည့်တာနဲ့တင် အတော်ခေါင်းခဲနိုင်တယ်ဆိုတာ သိသာပါတယ်။
ဒီတော့ GRE ကသူ့မှာ နောက်ထပ် Mode တစ်ခုရှိသေးတယ် mGRE (Multipoint mode) ဆိုပီးတော့ ဒီကိစ္စကိုပြေလည်အောင် စီစဉ်ထားပါတယ်၊ အဲဒီမှာလည်း ပုံစံအမျိုးမျိုးနဲ့Hub မှာပဲ mGRE သုံး၊ Spoke တွေမှာတော့ ပုံမှန် GRE ပဲသုံးပေါ့၊ ဒါပေမယ့် Spoke to Spoke Tunnel အတွက်ကတော့ ၂ ဖက်စလုံးမှာ mGRE သုံးမှသာ အဆင်ပြေမှာဖြစ်ပါတယ်၊ mGRE မှာ configuration ပိုင်းအရ ကွာခြားချက်ကတော့ Tunnel Source address ပဲပါတယ်၊ Tunnel Destination ကိုတော့ NHRP(Next Hop Resolution Protocol) သုံးပီး အလိုအလျှောက် ရှာဖွေသွားနိုင်ပါတယ်။ ဒီနေရာမှာ Hub က NHS server အနေနဲ့ရှိပီး ကျန်တဲ့ Spoke တွေက Client တွေအဖြစ် Register လုပ်ရပါတယ်၊ အဲဒီ စာရင်းကို Hub ကမှတ်ထားပီး Spoke တွေကမေးလာရင် ဘယ် Spoke ကိုချိတ်ချင်ရင် ဘယ် IP ကို သုံးပါဆိုပီးတော့ ပြန်ပြောနိုင်တာပေါ့၊ Hub အနေနဲ့လည်း Spoke တစ်ခုချင်းကို Configuration လိုက်လုပ်မနေတော့ပဲ ငါက NHS ဖြစ်တယ်၊ ချိတ်ချင်ရင် ဒီကိုလာ Register လုပ်ဆိုပီး နေယုံပဲ၊ Spoke တွေကတော့ Tunnel Configuration မှာ NHS ဘယ်သူဖြစ်တယ်ဆိုတာ အတိအကျထည့်ပေးရပါတယ်၊ Hub ကပေးထားတဲ့ Network ID နဲ့ Authentication ပိုင်းကိုထည့်ပီးရင်တော့ Client တစ်ခုအနေနဲ့Hub ကို register လုပ်လို့ရပါပီ။ ဒါကြောင့် Show ip nhrp brief ဆိုပီးခေါ် ကြည့်ရင် Hub ဘက်မှာ Spoke အားလုံးကို Dynamic လို့ပြပီး Spoke ဘက်မှာတော့ Hub ကိုချိတ်ထားတဲ့ Tunnel ကို Static လို့ပြထားတာတွေ့ရ ပါလိမ့်မယ်။ ပီးရင်တော့ Dynamic Routing protocol ကို Hub နဲ့ Spoke ကြားမှာ Configure လုပ်ပေးရမှာဖြစ်ပါတယ်၊ ဒီအတွက်တော့ Protocol တစ်ခုချင်းစီအတွက် လိုအပ်ချက်လေးတွေဖြစ်တဲ့ Split-Horizon EIGRP တို့ OSPF Network Type တို့ စတာတွေကို အနည်းငယ် ထပ်ထည့်ပေးရပါလိမ့်မယ်။ (DMVPN အတွက် Routing protocol/ GRE/IPsec စတာတွေကို သိထားပီးသားဖြစ်ရပါမယ်)။ IPsec ကတော့ Tunnel Protection အတွက်သုံးတာဖြစ်ပီး Configuration ကလဲအတူတူပါပဲ၊ တကယ်တော့ IPsec မပါလဲ အလုပ်ဖြစ်ပါတယ်။
Hub နဲ့ Spoke ကြားမှာ Dynamic Routing ရပီဆို Spoke to Spoke စမ်းကြည့်လို့ရပါပီ။ ဥပမာ Spoke A ဟာ Spoke B ရဲ့ Route တစ်ခုကို Hub ကနေတဆင့် သိထားပါတယ်၊ Spoke A နေ အဲဒီ Route ကို PING ကြည့်လိုက်ရင် Hub က Spoke B ရဲ့ IP address ကိုပေးလိုက်ပါတယ်၊ ဒီမှာ Spoke A ကနေ Spoke B ကို Dynamic Tunnel ဆောက်သွားပီး သူတို့အချင်းချင်းတိုက်ရိုက် ချိတ်ဆက်ပီးပြောပါတော့တယ်၊ Hub ကနေဖြတ်သွားစရာ မလိုတော့ဘူးပေါ့၊ အဲဒီအချိန်မှာ Spoke ကနေ Show ip nhrp brief ဆိုပီးခေါ် ကြည့်လိုက်ရင် Hub ကိုချိတ်ထားတဲ့ Tunnel အပြင် Spoke B ကိုချိတ်ထားတဲ့ Tunnel နောက်ထပ်တစ်ခုကိုပါ တွေ့ရမှာ ဖြစ်ပါတယ်။ Tunnel mode ဟာ Dynamic လို့ပြနေတာသတိထားမိပါလိမ့်မယ်။ Traffic မရှိတော့ရင်လည်း သတ်မှတ်တဲ့ အချိန်ကျော်သွားရင် သူ့အ လိုလို Tunnel ကိုပြန်ပီးဖြုတ်ချပေးပါတယ်။ ဒီတော့မလိုအပ်ပဲ Router ပေါ်မှာ resource တစ်ခုအနေနဲ့ရှိမနေတော့ဘူးပေါ့၊ Lab အတွက်စမ်းသပ်ရုံသပ်သပ်ဆို တခြားအသေးစိတ်တွေမလိုပါဘူး ဒါပေမယ့် လုပ်ငန်းခွင်မှာသုံးရင် Tunnel Interface မှာ NHRP holdtime တို့၊ NHRP registration timeout တို့ကို Cisco recommendation အရ အနည်းငယ်ပြောင်းပေးရပါလိမ့်မယ်။ အကယ်၍ Spoke အသစ်တခုတိုးလာရင်လဲ Hub မှာဘာမှလုပ်စရာမလိုပဲ Spoke ဖက်ကနေ အတိအကျ Configure လုပ်ပေးလိုက်တာနဲ့ Client တစ်ခုအနေနဲ့ ပါဝင်ပက်သက်လို့ရသွားပါပီ၊ ဒီတော့ Admin ရဲ့အားစိုက်ထုတ်မှုဟာလဲသိသာစွာနည်းသွားတာကို တွေ့ရမှာပါ။
အထက်ကပြောခဲ့တာတွေပိုပီးမြင်သာသွားအောင် ဒီ ရလဒ်အချို့ကနေကြည့်ကြရအောင်၊ သေချာပိုပီးနားလည်ချင်ရင် Lab လုပ်တဲ့အခါမှာ Debug ကိုအသုံးပြုပီး ကြည့်ကြရင်တော့အကောင်းဆုံးပေါ့။
Hub ကနေမြင်ရတဲ့ NHRP အခြေအနေ၊ NBMA IP က Router တွေရဲ့ ISP ကိုချိတ်ထားတဲ့ IP ပါ၊ Mode ကို Dynamic ဆိုပီးတွေ့မှပါ
Hub#sh ip nhrp brief
Target Via NBMA Mode Intfc Claimed
192.168.1.3/32 192.168.1.3 100.100.111.2 dynamic Tu0 < >
192.168.1.4/32 192.168.1.4 200.100.111.2 dynamic Tu0 < >
192.168.1.5/32 192.168.1.5 200.100.100.2 dynamic Tu0 < >
SpokeA ကနေ တခြား Spoke တွေကို Dynamic Tunnel ဆောက်ပီး တွေ့ရတဲ့အချိန်၊ Hub ကိုချိတ်ထားတဲ့ Tunnel Mode ကို Static ဆိုပီးတော့ သတိထားမိပါလိမ့်မယ်၊
SpokeA#sh ip nhrp brief
Target Via NBMA Mode Intfc Claimed
192.168.1.1/32 192.168.1.1 100.100.100.2 static Tu0 < >
192.168.1.4/32 192.168.1.4 200.100.111.2 dynamic Tu0 < >
192.168.1.5/32 192.168.1.5 200.100.100.2 dynamic Tu0 < >
Hub ကနေမြင်ရတဲ့ NHRP registration တစ်ခုပါ၊
NHRP: Receive Registration Request via Tunnel0 vrf 0, packet size: 68
NHRP: Send Registration Reply via Tunnel0 vrf 0, packet size: 88
ဒါကတော့ Spoke တစ်ခုကနေနောက်တစ်ခုကိုသွားဖို့အတွက် NHS ကိုလှမ်းပို့တဲ့အချိန်ပေါ့၊ ပီးတော့ Dynamic Tunnel အတွက် IP မေး၊ Hub ကနေ Resolution ပြန်ရတဲ့အချိန်မှာ တခြားဖက်က Tunnel ကိုသိသွားတဲ့အချိန်
NHRP: Checking for delayed event 0.0.0.0/192.168.1.3 on list (Tunnel0).
NHRP: No node found.
NHRP: Sending packet to NHS 192.168.1.1 on Tunnel0
NHRP: Send Resolution Request via Tunnel0 vrf 0, packet size: 68
src: 192.168.1.5, dst: 192.168.1.3
NHRP: Receive Resolution Reply via Tunnel0 vrf 0, packet size: 96
NHRP: No need to delay processing of resolution event nbma src:200.100.100.2 nbma dst:100.100.111.2
အခုလောက်ဆို ဆက်ပီးလေ့လာဖို့အတွက်လုံလောက်ပီလို့ထင်ရတာပဲ၊ Cisco ရဲ့ DMVPN Design and implementation guide ကတော့အကောင်းဆုံးပဲ ဒါပေမယ့် ဒီလင့်ကပိုပီးရှင်းမယ်ထင်တယ်၊ Configuration အတွက်လဲ ပြည့်စုံပါတယ်။
http://www.cisco.com/c/en/us/support/docs/security-vpn/ipsec-negotiation-ike-protocols/29240-dcmvpn.html
ကိုဖြိုး
No comments:
Post a Comment