Skip to main content

DMVPN ( Dynamic Multipoint Virtual Private Network ) Part-1


DMVPN ( Dynamic Multipoint Virtual Private Network ) သို႔မဟုတ္ Flexible Dynamic Mesh VPN
DMVPN ဟာ Multipoint Overlay VPN Network တည္ေဆာက္တဲ့ေနရာမွာ အသံုးျပဳတဲ့ နည္းပညာတစ္ခုပဲ ျဖစ္ပါတယ္။ Cisco IOS ကိုအေျခခံေသာ Router မ်ား၊ Huawei router မ်ားႏွင့္ Unix-like OS မ်ားမွာ ၄င္း DMVPN နည္းပညာကို အသံုးျပဳႏိုင္ရန္ အေထာက္အပံ့ေတြေပးပါတယ္။


ဘာေၾကာင့္ DMVPN လို႔ေခၚဆိုရတာလဲ?
DMVPN network ဟာစတင္တည္ေဆာက္တဲ႔အခ်ိန္မွာ သူ႕ရဲ႕ topology ဟာ hub and spoke design ျဖစ္ပါတယ္။ဆိုလိုခ်င္တာက spoke router တစ္လံုးခ်င္းစီဟာ ့hub router ဆီသို႔ပဲ always on tunnel ေဆာက္ထားဖို႔လိုပါတယ္။spoke router တစ္လံုးကေန အျခား spoke router မ်ားအားလံုးဆီကို always on tunnel တည္ေဆာက္ထားစရာမလိုပါဘူး။ spoke to spoke tunnel ဟာ လိုအပ္ေသာအခါမွသာ တည္ေဆာက္မွာျဖစ္ျပီး မလိုအပ္တဲ႔အခါမွာလည္း အလိုအေလ်ာက္ ၄င္း tunnel ကိုျပန္ျဖဳတ္ခ်မွာျဖစ္ပါတယ္။
ထိုကဲ႔သို႔ spoke router ေတြရဲ႕ၾကားမွာ လိုအပ္တဲ႔ direct tunnel ကို dynamic tunnel မ်ားအျဖစ္ လိုသလိုတည္ေဆာက္တဲ႔နည္းပညာျဖစ္တဲ႔အတြက္ DMVPN လို႔ေခၚဆိုရျခင္းပဲျဖစ္ပါတယ္။ DMVPN Network တစ္ခုဟာ Running State မွာေတာ႔ Dynamic Mesh VPN Network တစ္ခုအၿဖစ္ေၿပာင္းလဲသြားမွာၿဖစ္ပါတယ္။




    • ထို႔အျပင္ spoke router မ်ားမွာ မလိုအပ္တဲ့ tunnel ေတြမေဆာက္ထားတဲ့အတြက္္ processing power (CPU,RAM) အသုံးျပဳမႈ အေတာ္သက္သာသြားပါတယ္။

      Spoke to spoke direct tunnel တည္ေဆာက္နိုင္တဲ့အတြက္ branch office ႏွစ္ခုၾကားသြားတဲ့ traffic ေတြဟာ main office(DMVPN HUB Router)ကိုျဖတ္သြားစရာမလိုေတာ့ပါဘူး။

      ထိို႔ေၾကာင့္ branch office ႏွစ္ခုရဲ့ၾကားမွာ delay ပမာဏ နည္းနည္းနဲ႔ data ေတြကိုပို႔နိုင္သြားပါတယ္။

    DMVPN Network တစ္ခုတည္ေဆာက္ဖို႔အတြက္ ေအာက္ပါနည္းပညာမ်ားကို ေပါင္းစပ္အသံုးျပဳေပးရမွာ ျဖစ္ပါတယ္။
    1. Multipoint GRE (mGRE)
    2. NHRP (Next Hop Resolution Protocol)
    3. IPSec (Internet Protocol Security)
    4. IP Based Dynamic Routing Protocol (EIGRP,BGP,OSPF,RIPv2)
    ၄င္း protocols အားလုံးဟာ IETF ရဲ႕Standard Protocols ေတြပဲၿဖစ္ပါတယ္။
    1. mGRE (Multipoint Generic Routing Encapsulation)
    DMPVN network မွာ spoke to spoke dynamic tunnel တည္ေဆာက္နိုင္ဖို႔ဆိုရင္ DMVPN Router အကုန္လံုးမွာ mGRE Tunnel interface ကိုသံုးစြဲေပးရမွာျဖစ္ပါတယ္။ဘာေၾကာင့္လဲဆိုေတာ့ အကယ္၍သာ Point to Point GRE သာအသံုးျပဳခဲ့မယ္ဆိုရင္ Router ၂ လံုးကိုသာ VPN ခ်ိတ္ဆက္ႏုိင္မွာျဖစ္ပါတယ္။
    တစ္ခုသတိျပဳရမွာက P2P GRE Configuration ျပဳလုပ္စဥ္အခါက tunnel source ip နဲ႕ destination ip ႏွစ္ခုစလံုးကို ပံုေသသတ္မွတ္ေပးဖို႕လိုေပမယ့္ MGRE configuration မွာေတာ့ tunnel source ip ကိုပဲ ပံုေသေျပာထားဖို႔လိုုမွာျဖစ္ပါတယ္။ MGRE interface ကေန dynamic tunnel ေဆာက္ဖို႔အတြက္ destination ip address ကို NHRP protocol ရဲ႕အကူအညီနဲ႔ ရယူႏိုင္မွာျဖစ္ပါတယ္။
    1. DMVPN network မွာ NHRP Protocol  ကိုဘာေၾကာင့္သံုးဖို႔လိုမလဲ?
    DMVPN network ခ်ိတ္ဆက္တဲ့အခါမွာ Internet ေပၚကေန ျဖတ္ျပီး ခ်ိတ္ဆက္ၾကရာတြင္ Internet connection ရဖို႔ အသံုးျပဳရတဲ့ public ip address ကို NBMA address (သို႔) physical address လို႔ေခၚပါတယ္။ *(Physical internet connection မွာ သုံးေနရတဲ့ ip address ျဖစ္တဲ့အတြက္ပါ၊)
    ၄င္း internet connection မ်ားကို အသံုးျပဳၿပီး တည္ေဆာက္လို႔ရလာတဲ့ DMVPN overlay network ျဖစ္ေပၚလာဖို႔ၾကေတာ့ DMVPN router တိုင္းမွာ mGRE interface ရွိေနမွာ ျဖစ္ပါတယ္။ ၄င္း mGRE tunnel interface မွာ ေပးထားတဲ့ ip address မ်ားကို tunnel ip လို႔ေခၚဆိုမွာ ျဖစ္ပါတယ္။
    ကဲ လာပါၿပီဗ်ာ…NHRP ရဲ႕အသုံး၀င္ပုံကို ရွင္းျပလို႔ရပါၿပီ။
    • NHRP ဟာ client server model အေနနဲ႔ အလုပ္လုပ္မွာ ျဖစ္ပါတယ္။
    • DMVPN HUB ကို NHRP Server (NHS) အေနနဲ႔ ထားေပးရမွာ ျဖစ္ပါတယ္။
    • NHRP client ေတြဟာ သူတို႔ရဲ႕ NBMA address နဲ႔ tunnel ip address တို႔ကို GRE tunnel ေပၚကေန NHRP Server ဆီသို႔ register ျပဳလုုပ္ေပးလိုက္မွာပါ။ ၄င္းနည္းျဖင့္ NHRP client အားလုံးရဲ႕ NBMA ip address နဲ႔ tunnel ip address ေတြကို NHRP Server ထဲမွာ database တစ္ခုအေနနဲ႔ တည္ေဆာက္လို႔ရသြားမွာျဖစ္ပါတယ္။ ဒီအခါမွာ NHRP Server ဆိုတဲ့ DMVPN Hub Router ဟာ DMVPN Spoke Router အားလံုးရဲ႕ NBMA ip address နဲ႔ Tunnel ip ေတြကို အလိုအေလ်ာက္သိရွိသြားပါလိမ့္မယ္။



    အႏွစ္ခ်ဳပ္အေနနဲ႔ကေတာ့ “NHRP ဆိုတာ NBMA ip address နဲ႔ Tunnel ip address ကို NHC မွ NHS ဆီသို႔ အလိုအေလ်ာက္ register ျပဳလုပ္ေစေသာ protocol တစ္ခုသာလ်ွင္ ျဖစ္ပါတယ္။”



    1. Dynamic Routing For DMVPN Network
    Dynamic Routing Protocol ေတြျဖစ္တဲ့ EIGRP,RIPv2,BGP နဲ႔ OSPF တို႔ကို DMVPN Network ေပၚမွာ ip network ေတြရဲ႕ routing update ေတြကို အျပန္အလွန္ ဖလွယ္ဖို႔ရာအတြက္အသုံးၿပဳဖို႔ ပဲျဖစ္ပါတယ္။
    1. IPsec IP Security Protocol
    IPsecurity protocol ဟာ DMVPN Network မွာ essential မဟုတ္ပါဘူး။ Optional Protocol တစ္ခုသာလ်ွင္ ျဖစ္ပါတယ္။ IPsec Protocol မပါဘဲနဲ႔လည္း DMVPN Network ကို တည္ေဆာက္ႏိုင္မွာ ျဖစ္ပါတယ္။ DMVPN Network မွာ ဘာေၿကာင္႔ IPSec Protocol ကိုသံုးသလဲလို႔ေမးရင္ေတာ႔ ၄င္း DMVPN Network ေပၚမွာသြားတဲ႔ IP Packets ေတြကို Secure ၿဖစ္ေစဖို႔ပဲၿဖစ္ပါတယ္။ ဒီေနရာမွာ IPsec protocol က အဓိကလုပ္ေပးတာက IP packet ေတြ ပို႔လြတ္တဲ့အခါမွာ ၄င္း IP packet တစ္ခုခ်င္းစီကို encrypted packet အေနျဖင့္ ပို႔လႊတ္ႏိုင္တဲ့အတြက္ Network Layer မွာ secure transmission ကိုရရွိေစပါတယ္။
    IPsec ရဲ႕ Main Functions ေတြကေတာ့…
    • Data Confidentiality
    • Data Integrity
    • Data Authentication
    • Anti Replay Protection တို႔ပဲျဖစ္ပါတယ္။
    ထို႔ေၾကာင့္ DMVPN Network ေပၚမွာသြားတဲ့ traffic ေတြကို IPsec နဲ႔ protection မလုပ္ထားဘူးဆိုရင္ေတာ့ plaintext အေနျဖင့္သာ GRE Encapsulation Packet ေတြကို ပို႔လႊတ္မွာျဖစ္တဲ့အတြက္ secure ျဖစ္မွာမဟုတ္ပါဘူး။

    Ref:
    https://en.wikipedia.org/wiki/IPsec

    Best Regards,
    Aung Cho Htwe











    Unicode Version 
    DMVPN ( Dynamic Multipoint Virtual Private Network ) သို့မဟုတ် Flexible Dynamic Mesh VPN
     
        DMVPN ဟာ Multipoint Overlay VPN Network တည်ဆောက်တဲ့နေရာမှာ အသုံးပြုတဲ့ နည်းပညာတစ်ခုပဲ ဖြစ်ပါတယ်။ Cisco IOS ကိုအခြေခံသော Router များ၊ Huawei router များနှင့် Unix-like OS များမှာ ၄င်း DMVPN နည်းပညာကို အသုံးပြုနိုင်ရန် အထောက်အပံ့တွေပေးပါတယ်။

    ဘာကြောင့် DMVPN လို့ခေါ်ဆိုရတာလဲ? 
     
     DMVPN network ဟာစတင်တည်ဆောက်တဲ့အချိန်မှာ သူ့ရဲ့ topology ဟာ hub and spoke design ဖြစ်ပါတယ်။ဆိုလိုချင်တာက spoke router တစ်လုံးချင်းစီဟာ ့hub router ဆီသို့ပဲ always on tunnel ဆောက်ထားဖို့လိုပါတယ်။spoke router တစ်လုံးကနေ အခြား spoke router များအားလုံးဆီကို always on tunnel တည်ဆောက်ထားစရာမလိုပါဘူး။ spoke to spoke tunnel ဟာ လိုအပ်သောအခါမှသာ တည်ဆောက်မှာဖြစ်ပြီး မလိုအပ်တဲ့အခါမှာလည်း အလိုအလျောက် ၄င်း tunnel ကိုပြန်ဖြုတ်ချမှာဖြစ်ပါတယ်။
     ထိုကဲ့သို့ spoke router တွေရဲ့ကြားမှာ လိုအပ်တဲ့ direct tunnel ကို dynamic tunnel များအဖြစ် လိုသလိုတည်ဆောက်တဲ့နည်းပညာဖြစ်တဲ့အတွက် DMVPN လို့ခေါ်ဆိုရခြင်းပဲဖြစ်ပါတယ်။ DMVPN Network တစ်ခုဟာ Running State မှာတော့ Dynamic Mesh VPN Network တစ်ခုအဖြစ်ပြောင်းလဲသွားမှာဖြစ်ပါတယ်။
    ထို့အပြင် spoke router များမှာ မလိုအပ်တဲ့ tunnel တွေမဆောက်ထားတဲ့အတွက်် processing power (CPU,RAM) အသုံးပြုမှု အတော်သက်သာသွားပါတယ်။
    Spoke to spoke direct tunnel တည်ဆောက်နိုင်တဲ့အတွက် branch office နှစ်ခုကြားသွားတဲ့ traffic တွေဟာ main office(DMVPN HUB Router)ကိုဖြတ်သွားစရာမလိုတော့ပါဘူး။
    ထိို့ကြောင့် branch office နှစ်ခုရဲ့ကြားမှာ delay ပမာဏ နည်းနည်းနဲ့ data တွေကိုပို့နိုင်သွားပါတယ်။
    DMVPN Network တစ်ခုတည်ဆောက်ဖို့အတွက် အောက်ပါနည်းပညာများကို ပေါင်းစပ်အသုံးပြုပေးရမှာ ဖြစ်ပါတယ်။
    (1) Multipoint GRE (mGRE)
    (2) NHRP (Next Hop Resolution Protocol)
    (3) IPSec (Internet Protocol Security)
    (4) IP Based Dynamic Routing Protocol (EIGRP,BGP,OSPF,RIPv2)
    ၄င်း protocols အားလုံးဟာ IETF ရဲ့Standard Protocols တွေပဲဖြစ်ပါတယ်။

    (1) mGRE (Multipoint Generic Routing Encapsulation)
    DMPVN network မှာ spoke to spoke dynamic tunnel တည်ဆောက်နိုင်ဖို့ဆိုရင် DMVPN Router အကုန်လုံးမှာ mGRE Tunnel interface ကိုသုံးစွဲပေးရမှာဖြစ်ပါတယ်။ဘာကြောင့်လဲဆိုတော့ အကယ်၍သာ Point to Point GRE သာအသုံးပြုခဲ့မယ်ဆိုရင် Router ၂ လုံးကိုသာ VPN ချိတ်ဆက်နိုင်မှာဖြစ်ပါတယ်။
    တစ်ခုသတိပြုရမှာက P2P GRE Configuration ပြုလုပ်စဉ်အခါက tunnel source ip နဲ့ destination ip နှစ်ခုစလုံးကို ပုံသေသတ်မှတ်ပေးဖို့လိုပေမယ့် MGRE configuration မှာတော့ tunnel source ip ကိုပဲ ပုံသေပြောထားဖို့လိုုမှာဖြစ်ပါတယ်။ MGRE interface ကနေ dynamic tunnel ဆောက်ဖို့အတွက် destination ip address ကို NHRP protocol ရဲ့အကူအညီနဲ့ ရယူနိုင်မှာဖြစ်ပါတယ်။

    (2) DMVPN network မှာ NHRP Protocol ကိုဘာကြောင့်သုံးဖို့လိုမလဲ?
    DMVPN network ချိတ်ဆက်တဲ့အခါမှာ Internet ပေါ်ကနေ ဖြတ်ပြီး ချိတ်ဆက်ကြရာတွင် Internet connection ရဖို့ အသုံးပြုရတဲ့ public ip address ကို NBMA address (သို့) physical address လို့ခေါ်ပါတယ်။ *(Physical internet connection မှာ သုံးနေရတဲ့ ip address ဖြစ်တဲ့အတွက်ပါ၊)
    ၄င်း internet connection များကို အသုံးပြုပြီး တည်ဆောက်လို့ရလာတဲ့ DMVPN overlay network ဖြစ်ပေါ်လာဖို့ကြတော့ DMVPN router တိုင်းမှာ mGRE interface ရှိနေမှာ ဖြစ်ပါတယ်။ ၄င်း mGRE tunnel interface မှာ ပေးထားတဲ့ ip address များကို tunnel ip လို့ခေါ်ဆိုမှာ ဖြစ်ပါတယ်။
    ကဲ လာပါပြီဗျာ…NHRP ရဲ့အသုံးဝင်ပုံကို ရှင်းပြလို့ရပါပြီ။
    NHRP ဟာ client server model အနေနဲ့ အလုပ်လုပ်မှာ ဖြစ်ပါတယ်။
    DMVPN HUB ကို NHRP Server (NHS) အနေနဲ့ ထားပေးရမှာ ဖြစ်ပါတယ်။
    NHRP client တွေဟာ သူတို့ရဲ့ NBMA address နဲ့ tunnel ip address တို့ကို GRE tunnel ပေါ်ကနေ NHRP Server ဆီသို့ register ပြုလုုပ်ပေးလိုက်မှာပါ။ ၄င်းနည်းဖြင့် NHRP client အားလုံးရဲ့ NBMA ip address နဲ့ tunnel ip address တွေကို NHRP Server ထဲမှာ database တစ်ခုအနေနဲ့ တည်ဆောက်လို့ရသွားမှာဖြစ်ပါတယ်။ ဒီအခါမှာ NHRP Server ဆိုတဲ့ DMVPN Hub Router ဟာ DMVPN Spoke Router အားလုံးရဲ့ NBMA ip address နဲ့ Tunnel ip တွေကို အလိုအလျောက်သိရှိသွားပါလိမ့်မယ်။

    အနှစ်ချုပ်အနေနဲ့ကတော့ “NHRP ဆိုတာ NBMA ip address နဲ့ Tunnel ip address ကို NHC မှ NHS ဆီသို့ အလိုအလျောက် register ပြုလုပ်စေသော protocol တစ်ခုသာလျှင် ဖြစ်ပါတယ်။”

    (3) Dynamic Routing For DMVPN Network
    Dynamic Routing Protocol တွေဖြစ်တဲ့ EIGRP,RIPv2,BGP နဲ့ OSPF တို့ကို DMVPN Network ပေါ်မှာ ip network တွေရဲ့ routing update တွေကို အပြန်အလှန် ဖလှယ်ဖို့ရာအတွက်အသုံးပြုဖို့ ပဲဖြစ်ပါတယ်။

    (4) IPsec IP Security Protocol
    IPsecurity protocol ဟာ DMVPN Network မှာ essential မဟုတ်ပါဘူး။ Optional Protocol တစ်ခုသာလျှင် ဖြစ်ပါတယ်။ IPsec Protocol မပါဘဲနဲ့လည်း DMVPN Network ကို တည်ဆောက်နိုင်မှာ ဖြစ်ပါတယ်။ DMVPN Network မှာ ဘာကြောင့် IPSec Protocol ကိုသုံးသလဲလို့မေးရင်တော့ ၄င်း DMVPN Network ပေါ်မှာသွားတဲ့ IP Packets တွေကို Secure ဖြစ်စေဖို့ပဲဖြစ်ပါတယ်။   ဒီနေရာမှာ IPsec protocol က အဓိကလုပ်ပေးတာက IP packet တွေ ပို့လွတ်တဲ့အခါမှာ ၄င်း IP packet တစ်ခုချင်းစီကို encrypted packet အနေဖြင့် ပို့လွှတ်နိုင်တဲ့အတွက် Network Layer မှာ secure transmission ကိုရရှိစေပါတယ်။
    IPsec ရဲ့ Main Functions တွေကတော့…
    Data Confidentiality
    Data Integrity
    Data Authentication
    Anti Replay Protection    တို့ပဲဖြစ်ပါတယ်။
    ထို့ကြောင့် DMVPN Network ပေါ်မှာသွားတဲ့ traffic တွေကို IPsec နဲ့ protection မလုပ်ထားဘူးဆိုရင်တော့ plaintext အနေဖြင့်သာ GRE Encapsulation Packet တွေကို ပို့လွှတ်မှာဖြစ်တဲ့အတွက် secure ဖြစ်မှာမဟုတ်ပါဘူး။

    Ref:
    https://en.wikipedia.org/wiki/IPsec

    Best Regards,
    Aung Cho Htwe



    Comments

    Popular Posts

    Cisco ASA Firewall Configuration (Part-2)

    Cisco ASA Firewall Configuration (Part-2)     OSPFv2 Dynamic IP Routing on the Cisco ASA Firewall ကဲဒီေန႔ေတာ့ ASA Firewall နဲ႔ OSPFv2 တြဲစမ္းၾကတာေပါ့ .... အေပၚကပုံမွာျပထားတဲ့  OSPF Configuration Commands ေတြအတိုင္း လက္ေတြ႕လုပ္ႏွိုင္ၿပီျဖစ္ပါတယ္။ Cisco ASA Firewall နဲ႔ OSPF Routing Protocol အေျခခံအနည္းငယ္ေတာ႔သိထားရမွာျဖစ္ပါတယ္။ ospfv2 verification commands for cisco asa firewall ASA1# show interface ip brief ASA1# show route ASA1# show ospf interface ASA1# s how ospf neighbor ASA1# show ospf database Supported Routing Protocols for ASA Firewall Dynamic IP Routing •Enhanced Interior Gateway Routing Protocol (EIGRP) Enhanced Interior Gateway Routing Protocol (EIGRP) is an advanced distance-vector routing protocol that is used on a computer network to help automate routing decisions and configuration. The protocol was designed by Cisco Systems as a proprietary protocol, available only on Cisco routers. Partial functionality of EIGRP was converted to