ทำความรู้จักกับ DMVPN ตอนที่ 1 (mGRE)

รอบก่อน ผมได้เขียนเรื่อง GRE Tunneling ไปแล้ว สำหรับท่านใดที่ยังไม่รู้จัก GRE สามารถอ่านได้ที่นี่ก่อนครับ
>> GRE Tunneling <<
เพื่อจะได้นำมาต่อยอดในบทความนี้ได้ เพราะรอบนี้ผมจะมาพูดถึง Dynamic Multipoint VPN (DMVPN) กันนะครับ

Dynamic Multipoint VPN (DMVPN) เป็นการทำ VPN โดยที่เราสามารถเชื่อมต่อหลายๆ Site เข้าหากันได้ ซึ่ง DMVPN จะใช้ topology แบบ Hub and Spoke และอย่างที่เราทราบกันโดยปกติ ถ้า Spoke ต้องการจะคุยกับ Spoke แล้ว traffic จะต้องผ่าน Hub ก่อน แต่ถ้าเราต้องการให้ Spoke คุยกับ Spoke ได้โดยไม่ผ่าน Hub เราจำเป็นจะต้องมาสร้าง tunnel เอง แต่เมื่อเราใช้งาน DMVPN แล้ว มันจะทำการสร้าง tunnel ระหว่าง Spoke กับ Spoke ขึ้นมาให้อัตโนมัติ โดยที่เราไม่ต้องไปตั้งค่าแบบ manual นั่นเองครับ
dmvpn-1
ปกติแล้ว ถ้าเราต้องการจะเชื่อมต่อหลายๆ Site เข้าหากัน ขอแค่แต่ละ Site มี internet ของตัวเอง (ไม่ต้องไปเสียเงินเช่า private link ราคาแพงๆ) แล้วเราก็ทำ VPN โดยใช้ GRE เพื่อให้แต่ละ Site เชื่อมต่อกันได้ เปรียบเสมือน Router ของแต่ละ Site มีสายต่อกันตรงๆ
.
ในการเชื่อมต่อระหว่าง Site (Hub to Spoke หรือ Spoke to Spoke) โดยใช้แบบ Point-to-Point เราจะต้องสร้าง GRE ตามจำนวน Site ทั้งฝั่ง Hub และ Spoke และอนาคตถ้ามี Site (Spoke) เพิ่มขึ้น เราก็ต้องเข้าไปสร้าง GRE tunnel ทั้งฝั่ง HQ (Hub) และ Branch (Spoke) ขึ้นมาใหม่ หรือ ถ้าต้องการให้สามารถคุยกันระหว่าง Site ได้ (Spoke to Spoke) ก็ต้องไปตั้งค่าเพื่อสร้าง GRE tunnel ขึ้นมาอีก ทำให้เกิดความยุ่งยากเมื่อมีการเพิ่ม Site หรือ ต้องการจะให้ traffic ระหว่าง Site คุยกันได้
.
ที่ผมเกริ่นขึ้นมาแบบนี้ เพื่อให้ทุกท่านมองเห็นภาพเดิมก่อนที่จะทำ DMVPN ซึ่งการทำ DMVPN นั้น จะใช้หลายๆ เทคโนโลยีเข้ามาประกอบกัน ดังนี้
  • mGRE (Multipoint GRE)
  • Next Hop Resolution Protocol (NHRP)
  • Dynamic Routing Protocol (OSPF , EIGRP etc.)
  • IPSec (ถ้าต้องการ encryption ข้อมูล)
  • Cisco Express Forwarding (CEF)
โอเคครับ พอเราจะทำ DMVPN แล้ว GRE ที่เราจะใช้จะเป็น Multipoint GRE (mGRE) ไม่ใช่ Point-to-Point แบบที่ผมพูดถึงในตอนแรกแล้ว การทำ Multipoint มีข้อดีคือ ไม่ว่าเราจะเพิ่ม Router เข้ามาอีกกี่ Site ก็ตาม โครงข่ายตรงกลางที่เราทำ Tunneling จะใช้เพียง subnet เดียว ไม่เหมือนกับ Point-to-Point ที่ต้องใช้ 1 subnet ต่อ 1 tunnel ซึ่งสามารถทำให้ง่ายต่อการเพิ่มขยาย
dmvpn-2
จะเห็นว่าถ้าทำ Point-to-Point เราจะมี subnet และ interface tunnel ตามจำนวน tunnel ที่เกิดขึ้น แต่ถ้าเป็น multipoint บน Router แต่ละตัว จะมี Interface tunnel เดียวเท่านั้น
และเมื่อเป็น DMVPN ในส่วนของ traffic ที่คุยกันระหว่าง Site (Spoke-to-Spoke) โดยตรง มันจะสร้าง GRE tunnel แบบ Point-to-Point ให้อัตโนมัติเลย (ถ้าไม่ใช้ DMVPN แล้วเราอยากให้ Spoke คุยกับ Spoke เราก็จะต้องไปทำการตั้งค่า GRE ระหว่าง Site นั้นเองแบบ manual)
dmvpn3
จากรูป ถ้า traffic จาก BR-1 ต้องการจะส่งไปฝั่ง BR-2 แล้ว DMVPN จะทำการสร้าง GRE tunnel ระหว่าง BR-1 กับ BR-2 ขึ้นมาให้โดยอัตโนมัติ
.
ในส่วนต่อมา ถ้าใช้ DMVPN แล้ว traffic ที่ต้องการคุยกันระหว่าง Site (Spoke-to-Spoke) จะทำการสร้าง GRE tunnel ให้อัตโนมัตินั้น ก็จะมีกลไลและวิธีการสร้าง โดยใช้งานผ่าน Next Hop Resolution Protocol (NHRP) นั่นเอง . . .
.
.
โอเคครับ ในบทความนี้ผมก็หวังว่าทุกท่านน่าจะพอมองภาพของ DMVPN ออกบ้างแล้วนะครับ และ ในบทความต่อไป ผมจะมาพูดถึงกลไลของ NHRP นะครับ แล้วพบกันครับ . . .

Facebook Comments

comments