ฉันสับสนว่าอะไรคือความแตกต่างที่แท้จริงระหว่าง SNAT และ Masquerade
หากฉันต้องการแบ่งปันการเชื่อมต่ออินเทอร์เน็ตของฉันบนเครือข่ายท้องถิ่นฉันควรเลือก SNAT หรือ Masquerade หรือไม่?
ฉันสับสนว่าอะไรคือความแตกต่างที่แท้จริงระหว่าง SNAT และ Masquerade
หากฉันต้องการแบ่งปันการเชื่อมต่ออินเทอร์เน็ตของฉันบนเครือข่ายท้องถิ่นฉันควรเลือก SNAT หรือ Masquerade หรือไม่?
คำตอบ:
SNAT
เป้าหมายคุณจะต้องให้ที่อยู่ IP ที่จะนำไปใช้กับทุกแพ็คเก็ตที่ส่งออก MASQUERADE
เป้าหมายช่วยให้คุณให้อินเตอร์เฟซและที่อยู่สิ่งที่อยู่ในอินเตอร์เฟซที่เป็นที่อยู่ที่ถูกนำไปใช้กับทุกแพ็คเก็ตที่ส่งออก นอกจากนี้ด้วยSNAT
การติดตามการเชื่อมต่อของเคอร์เนลจะติดตามการเชื่อมต่อทั้งหมดเมื่ออินเทอร์เฟซถูกลบและนำกลับมา; เหมือนกันไม่เป็นความจริงสำหรับMASQUERADE
เป้าหมาย
เอกสารที่ดีรวมถึงHOWTOs บนเว็บไซต์ Netfilterและหน้าคนiptables
-j SNAT
(เมื่อเทียบกับการติดตามการรีไซเคิลด้วย-j MASQUERADE
) เมื่อการเชื่อมต่อขาออกใหม่จากโหนด LAN ใช้หมายเลขพอร์ตต้นทางเดียวกันกับการเชื่อมต่อขาออกที่ตัดออกจากโหนด LAN เดียวกัน ในกรณีนี้ฉันสามารถจินตนาการถึงแพ็กเก็ตที่เข้ามาจากการเชื่อมต่อขาออกเก่าที่ส่งไปยังโหนดทำให้เกิดความสับสนของสแต็ก TCP สำหรับประโยชน์ของ -j SNAT จะเกิดอะไรขึ้นถ้ามีการกำหนดค่ากล่อง NAT ด้วยที่อยู่ IP ภายนอกเดียวกันและเคอร์เนลจะส่งต่อแพ็กเก็ตจากการเชื่อมต่อเก่าแทนที่จะตอบกลับด้วย RST?
โดยพื้นฐานSNAT
แล้วMASQUERADE
ทำ NAT แหล่งเดียวกันในตาราง nat ภายใน POSTROUTING chain
ความแตกต่าง
MASQUERADE
ไม่ต้องการ--to-source
เนื่องจากทำงานกับ IP ที่กำหนดแบบไดนามิก
SNAT
ทำงานได้กับ IP คงที่เท่านั้นนั่นเป็นสาเหตุ --to-source
MASQUERADE
มีค่าใช้จ่ายเพิ่มเติมและช้ากว่าSNAT
เนื่องจากแต่ละครั้งที่MASQUERADE
เป้าหมายโดนแพ็คเก็ตจะต้องตรวจสอบที่อยู่ IP ที่จะใช้
หมายเหตุ : กรณีการใช้งานทั่วไปสำหรับMASQUERADE
: อินสแตนซ์ AWS EC2 ใน VPC มี IP ส่วนตัวภายใน VPC CIDR (เช่น 10.10.1.0/24) - 10.10.1.100 ตัวอย่างเช่นยังมี IP สาธารณะเพื่อสื่อสารกับ อินเทอร์เน็ต (สมมติว่ามันอยู่ในซับเน็ตสาธารณะ) ถึง IP ส่วนตัว 1: 1 NAT IP สาธารณะอาจเปลี่ยนแปลงได้หลังจากการรีบูตอินสแตนซ์ (หากไม่ใช่ EIP) MASQUERADE
เป็นตัวเลือกที่ดีกว่าในกรณีที่ใช้งานนี้
สำคัญ: ยังคงเป็นไปได้ที่จะใช้MASQUERADE
เป้าหมายที่มี IP คงที่เพียงแค่ตระหนักถึงค่าใช้จ่ายเพิ่มเติม
อ้างอิง