คู่มือการใช้กล้อง TP-Link VIGI ดูผ่าน Cloud แบบไม่มี NVR บันทึกลง Memory Card การ Config
- ไม่มีสินค้าในตะกร้าของคุณแล้ว
- จัดส่ง
- รวมทั้งสิ้น ฿0.00
NAT Traversal คืออะไร?
NAT Traversal คืออะไร
NAT Traversal นี้เป็นหัวใจของอุปกรณ์ระบบเครือข่ายที่รองรับการ Managed ผ่าน Cloud เลยครับ
ช่วยอะไรได้?
เมื่อก่อน ถ้าเราจะ Remote เข้าไป Managed อุปกรณ์ซักตัวนึงที่ Site ฝั่ง Site จำเป็นที่ต้องมี Public-IP ที่ ขา WAN ของ Gateway เพราะเปรียบเหมือนเป็นเลขที่บ้านจริงๆ เราถึงจะส่งพัสดุหากันได้ ถ้า Remote เข้า Gateway ก็เข้าหน้า GUI ผ่าน Public-IP แต่ถ้าต่ออยู่หลัง Gateway ก็ต้องทำ Forward Port ทะลุเข้าไปยังอุปกรณ์นั้นๆ
ถ้ามีอุปกรณ์เป็นสิบๆ มันค่อนข้างวุ่นวาย และ ปัจจุบันทาง ISP ก็ไม่ค่อยอยากจะให้ Public-IP กับฝั่ง Subscriber หรือผู้ใช้แล้ว จะให้เป็น Private-IP ที่เป็น CGNAT (Carrier-Grade Network Address Translation) IP Address จะอยู่ในช่วง 100.64.0.0 – 100.127.255.255 ประมาณเลขที่ห้องในหอพักครับ หรือ ต่อให้เราได้ Public-IP มา ทาง ISP ก็เปลี่ยนเลขไปเรื่อยทุกวัน ถ้าไม่อยากให้เปลี่ยนก็ต้องสมัคร Fix-IP ได้เลขเดิมตลอดเวลา เสียเงินเพิ่มเดือนละพัน
เมื่อบ้านเลขที่เปลี่ยนไปเรื่อย ก็ต้องมีเครื่องมืออะไรซักอย่างมาผูกไว ให้รู้ว่ามันเปลี่ยนเป็นเลขอะไร เช่นพวก Service DDNS, No-IP แต่ก็เสียเงินอีก
ตัวอย่าง Ruijie Cloud ที่ใช้ NAT Traversal
อุปกรณ์ Ruiije จะมีการเชื่อมต่อเข้ากับ Ruijie Cloud ผ่าน Tunnel จริงๆก็อยากจะอธิบายเรื่อง Control plane กับ Data plane อีก
เอางี้ Control plane เป็นส่วนของการจัดการ, Monitor, Config อุปกรณ์ ในส่วน Control Plane จะวิ่งผ่าน Cloud ทั้งหมด
Data Plane เป็นส่วนของ Data เช่น Device เชื่อมต่อ Wifi ออก Internet , Device วิ่งผ่าน Router ไปยัง Website ต่างๆ ในส่วน Data Plane จะไม่ผ่าน Cloud
พอ Control Plane วิ่งผ่าน Cloud ฝั่งบ้านจะเข้า Managed อุปกรณ์ก็ทำการ Login เข้าระบบ Ruijie Cloud ที่เป็น GUI ในการจัดการ
ไม่ว่า Gateway จะได้ IP CGNAT เป็น Private IP มา ก็สามารถเชื่อมต่อไปยังอุปกรณ์ภายใต้ NAT ได้ หรือถ้าได้ Public IP ก็ต้อง Forward Port ทำกันเป็นร้อยรายการ จำ Port เข้า กันสนุกเลย หรือจะ VPN เข้าไป มันก็ไม่เห็นเป็นภาพรวมสวยๆใช้ง่ายๆแบบนี้
การทำงานของ NAT Traversal
ขอเปรียบเทียบเป็นการเชื่อมต่อ ฝั่งบ้าน กับฝั่ง Site นะครับ
Concept คือ ต้องมีตัวกลางซักอย่างที่คอยจัดการให้ข้อมูล่ฝั่งบ้าน ส่งข้อมูลไปหาฝั่ง Site และ ฝั่ง Site ส่งกลับมาหาฝั่งบ้านให้ได้
ตัวกลางที่ว่า ก็คือระบบ Cloud Controller มีกระบวนการจัดการเชื่อมต่อกับอุปกรณ์ Network ฝั่ง Site และ ฝั่งบ้าน คือ Cloud Controller จะรู้ว่าฝั่งบ้าน และ Site อยู่ตรงไหนในโลก Internet ครับ
มันรู้ได้เองมั้ย?
ไม่!! เราต้องบอกมัน รวมถึง Router ทั้ง 2 ฝั่งด้วย ที่ได้ IP WAN ที่เป็น CGNAT มา มันเองก็ไม่รู้ว่า จริงๆแล้ว IP ที่คุยกับชาวบ้านในโลก Internet คือ IP อะไร
555 เดี๋ยวจะอธิบายวิธีการบอกครับ.
หลังจากที่ Cloud Controller มันรู้ว่าทั้งสองฝั่งอยู่ตรงไหนแล้ว มันก็จะสร้างท่อ Tunnel ให้สองฝั่งส่งข้อมูลหากันได้
แต่...ท่อมันมี 2 แบบ แต่ละแบบมีเงื่อนไขในการสร้างอีก ตรงนี้อธิบายยาว ขอละไว้ก่อน เอาเป็นว่า
แบบแรก ท่อที่วิ่งผ่าน Cloud Controller
หรือเรียกว่า Cloud Relay
ทุกๆ Packet วิ่งผ่าน Cloud หมด อารมณ์ประมาณสั่งของจาก Aliexpress ทางจีนส่งผ่านขนส่งเขา มาถึงบ้านเรา มากองที่ศุลกากร รอให้ทางนั้นแกะดูมีอะไร จากนั้นก็รอขนส่งไทยมารับ และส่งต่อมาที่บ้านเรา
ข้อดี เชื่อมต่อได้ 100% จะต่อหลัง NAT ยังไง ได้ IP อะไร ไม่สน
ข้อเสีย ช้า!! ช้ามาก
แบบสอง ท่อตรง หรือเรียกว่า Hole Punching
เป็นการเชื่อมต่อแบบ P2P ข้อมูลทุกอย่างวิ่งตรงหากัน ไม่ผ่าน Cloud เหมือนสั่งของจาก AliExpress ขนส่งทางนั้น วิ่งส่งตรงมาที่บ้านเราเลย แต่มันผิด โอกาสโดนศุลกากรจับยึดของมีสูง (เปรียบเทียบเฉยๆนะครับ ^^)
ข้อดี เร็ว เร็วเลยละ เหมาะกับการทำ VPN ได้ค่า Latency ต่ำ
ข้อเสีย มีข้อจำกัดเรื่อง NAT เพราะ NAT มันมีหลายแบบอีก เดี๋ยวผมอธิบายอีกทีในส่วน SD-WAN ครับ
รูปแบบท่อของ NAT Traversal ที่ใน Ruijie Cloud จะเป็นแบบแรกครับ Cloud ทำหน้าที่เป็น Cloud Relay
ผมอยากให้อ่านในหัวข้อนี้ก่อนนะครับ หลักการทำงานของ NAT
จากรูป Diagram
[ฝั่งบ้าน]
IP WAN ของ Router : 100.64.10.10 (CGNAT)
IP LAN ของ Router : 192.168.1.1
IP LAN ของ PC : 192.168.1.2
[ฝั่ง Site]
IP WAN ของ Router : 100.64.20.20 (CGNAT)
IP LAN ของ Router : 192.168.110.1
IP LAN ของ NVR : 192.168.110.10 มี Port Managed : 443
การที่ฝั่งบ้านจะเชื่อมต่อไปยัง NVR (192.168.110.10:443) ที่ฝั่ง Site โดยทั้ง 2 ฝั่ง ตัว Gateway ได้ Private-IP (CG-NAT) ที่ขา WAN มาทั้งคู่ แทบจะเป็นไปไม่ได้
ผมจะเทียบการใช้งาน NAT Traversal ที่มีให้ Config ใน Ruijie Cloud กับลักษณะการทำงานนะครับ จะพอมองภาพ Flow ได้ง่ายมากขึ้น
ทำการ Create NAT Traversal เมื่อสร้างเรียบร้อย หน้าตาจะเป็นแบบนี้
1. หลังจาก Add Tunnel
ฝั่ง Site ทำการ Register หมายเลข IP WAN Gateway (Reyee Router) และ Service:Port (NVR) เก็บไว้ที่ Server กลาง (Cloud)
Cloud รู้แล้วว่า ฝั่ง Site อยู่ตรงไหนในโลก Internet ทำการสร้าง Tunnel ระหว่าง Cloud กับ Gateway
และ Router เราเองก็รู้ตัวเช่นกัน ว่า IP ที่คุยกับชาวบ้านในโลก Internet คือ IP อะไร เพราะมันจะคิดว่า IP CGNAT คือ IP ที่คุยกับชาวบ้าน ซึ่งมันไม่ใช่
IP WAN = 100.64.20.20:NAT Port
Service:Port = 192.168.100.3:443 (Inside Host: Port)
2. Cloud ทำการสร้าง IP-Endpoint 8.222.244.160:65171 (Outside Host: Port) ขึ้นมา เอาไว้ทำการ Map กับ ข้อมูลฝั่ง Site ที่ส่งมา Register ไว้ (ข้อ 1)
รอ...รอใครมาเรียกใช้
3. ฝั่งบ้าน เข้า Browser IP: 8.219.141.74:65329 เป็นการเรียกใช้ Cloud
ที่นี้ Cloud ก็รู้แล้วว่า บ้าน อยู่ตรงไหนในโลก Internet เมื่อครบเงื่อนไข รู้ตำแหน่งผู้ส่ง-ผู้รับ ทำการสร้าง Tunnel หากัน
มี Keep Alive ช่องทางที่เชื่อมต่อกันระหว่าง Cloud กับ Gateway ค้างไว้ (ในรูป Ruijie Cloud คือค่า Will Expire)
(Click ปุ่ม To Configure จะเป็นการเรียกครับ)
4. เมื่อ Cloud ถูกเรียกจากฝั่งบ้านผ่าน IP Endpoint เข้ามา Cloud ก็จะดูในตารางที่ map ไว้ ว่าต้องไปปลายทางที่ไหน ก็คือ IP WAN Gateway ฝั่ง Site จึงทำการส่งข้อมูลผ่านช่องทางที่เชื่อมต่อ ไปยัง Service ก็คือ NVR 192.168.110.3:443 (Inside Host: Port)
5. NVR เมื่อได้รับ Request ก็ Response กลับช่องทางเดิม ผ่านไปยัง Cloud และ ส่งต่อกลับผ่าน Connection ที่ Browser ฝั่งบ้าน ตัวอย่าง ก็เป็นหน้า web html
หลักการก็ประมาณนี้ครับ NAT Traversal ที่มีให้เล่นใน Ruijie Cloud ทำหน้าที่เป็น Cloud Relay ใช้งานได้แน่นอน เราเอาไว้เข้าหน้า Config อุปกรณ์ Network ภายใน ไม่จำเป็นต้องเร็วครับ
คร่าวๆก็ประมาณนี้ครับ เดี๋ยว Review ในส่วน VPN SD-WAN ต่อ ก็ใช้หลักการ NAT Traversal เช่นกัน
ท่อ Tunnel ที่สร้าง มีโอกาสเป็นได้ทั้ง Cloud Relay ช้า ช้ามาก และ Hole Punching ที่วิ่งตรงหากัน ได้ VPN Throughput สูง ค่า Latency ต่ำ
Facebook comment