วันศุกร์ที่ 23 กันยายน พ.ศ. 2559

กำหนดค่าคอนฟิค ubuntu และ kvm แบบ nat ให้ทำการ forward port

ลองกำหนดค่าคอนฟิคให้กับระบบเซิร์ฟเวอร์เวอร์ชวลแมชชีน โดยใช้ ubuntu และ kvm ผู้เขียนได้ทดลองรันระบบเวอร์ชวลแมชชีนโดยใช้ระบบปฏิบัติการลินุกส์มาหลายปีที่ผ่านมา พบว่าระบบมีการทำงานที่มีเสถียรภาพดีมาก ๆ ในวันนี้ผู้เขียนจะได้แนะนำวิธีการฟอร์เวิร์ดพอร์ตเซอร์วิสต่าง ๆจากโฮสต์(host) ไปยังเกสต์(guest) ที่กำหนดค่าการ์ดแลนด์เป็นแบบแน็ท(nat)ในขณะเดียวกันระบบก็มีการกำหนดการ์ดอินเทอร์เฟสยังเวอร์ชวลแมชชีน(guest)ที่กำหนดค่าอินเตอร์เฟสแบบบริดจ์(bridge)ด้วย

การรันเกสต์แบบบริดจ์จะสามารถแม็พไอพีจริง(public ip address) ไปยังเครื่องเกสต์ได้โดยตรง ส่วนการแม็พไอพีจริงแบบแน็ทนั้นจะต้องการสร้างเทคนิคการทำ port forwarding รวมถึง การทำ destination และ source masquarade ไปด้วยกัน

จากโจทย์ของผู้เขียน หากเครื่องไคลเอ้นท์ต้องการติดต่อกับเครื่องเกสต์แบบแน็ทพอร์ต 80 ต้องดำเนินการดังนี้

iptables -t nat -A PREROUTING -p tcp -d 1.2.3.4 -dport 80 -j DNAT --to-destination 192.168.122.2:80
iptables -t nat -A PREROUTING -p tcp -d 1.2.3.4 -dport 22 -j DNAT --to-destination 192.168.122.2:22




 

หลังจากนั้นต้องทำการฟอร์เวิร์ดแพคเกจไปด้วย โดยจะทำการตรวจสอบเฉพาะสถานะ New, Related และ Established เท่านั้น

iptables -I FORWARD -m state -d 192.168.122.0/24 --state NEW,RELATED,ESTABLISHED -j ACCEPT


สิ่งสำคัญอีกเรื่องก็คือการกำหนดค่าให้เคอร์เนลทำหน้าที่ฟอร์เวิร์ดไอพีแอดเดรส

sysctl -w net.ipv4.ip_forward=1
cat /proc/sys/net/ipv4/ip_forward
sysctl -p /etc/sysctl.conf

เนื้อหาดี ๆเหล่านี้จะสำเร็จลงไม่ได้หากไม่ได้รับการสนับสนุนจาก บจก.ไทย พรอสเพอรัส ไอที ผู้นำด้านการให้บริการ ระบบ จีพีเอสติดตามรถ รู้ลึก รู้จริง ตอบปัญหาได้ทุกเรื่อง ต้องใช้บริการที่นี่เท่านั้น

ไม่มีความคิดเห็น:

แสดงความคิดเห็น