การวางแผนการเข้าถึงส่วนตัว IKEv2 แบบสองสแตกด้วย strongSwan
การขนส่งภายนอก พูลไคลเอนต์ และคำนำหน้าที่ได้รับการป้องกันเป็นสามการตัดสินใจแยกกัน ตอบแต่ละข้อและแยกการกำหนดที่อยู่ส่วนตัวออกจากทางออก
อุโมงค์สองสแตกไม่ใช่การตัดสินใจเดียวแต่เป็นสาม และสามารถตอบได้ต่างกัน อุโมงค์ภายนอกวิ่งบนตระกูลใด ไคลเอนต์ได้รับตระกูลใดภายใน และบริการที่ได้รับการป้องกันตอบบนตระกูลใดจริง ๆ การออกแบบที่ถือว่าทั้งสามเป็นทางเลือกเดียวจะพา IPv6 ที่ไม่เคยจำเป็น หรือแจกจ่ายที่อยู่ที่ไม่มีอะไรสามารถกำหนดเส้นทางกลับได้ แยกทั้งสามออก แล้วส่วนที่เหลือของการกำหนดค่าจะกลายเป็นเกือบอัตโนมัติ
ที่อยู่สามประเภท ตัดสินแยกกัน
ที่อยู่ภายนอกคือวิธีที่เกตเวย์ทั้งสองเข้าถึงกัน และอาจเป็น IPv4 ขณะที่การรับส่งภายในพาทั้งสองตระกูล ที่อยู่เสมือนภายในคือตัวตนของไคลเอนต์ภายในอุโมงค์ และ แต่ละตระกูลต้องมีพูลของตัวเอง คำนำหน้าที่ได้รับการป้องกันคือสิ่งที่ไคลเอนต์เข้าถึงได้ และเป็นของบริการไม่ใช่อุโมงค์ การสับสนระหว่างที่สามกับที่สองทำให้เกิดข้อผิดพลาดในการวางแผนส่วนใหญ่ เพราะทั้งสองดูเหมือนช่วงส่วนตัว
การขนส่งภายนอกแบบ IPv4 เท่านั้นกับการรับส่งภายในแบบสองสแตกเป็นการจัดวางปกติและได้รับการสนับสนุนอย่างดี
ตัดสินแต่ละข้ออย่างชัดเจนและจดการตัดสินใจไว้ หากเส้นทางภายนอกเป็น IPv4 เท่านั้น ให้บอกเช่นนั้นและเลิกกังวลเกี่ยวกับการเข้าถึงจุดสิ้นสุด IPv6 หากตระกูลหนึ่งถูกจัดสรรภายในแต่ไม่มีอะไรตอบบนตระกูลนั้น ให้เอาออกจากแผนหรือทำให้บริการเหล่านั้นเป็นสองสแตกจริง ๆ
จัดสรรที่อยู่เสมือนในแต่ละตระกูล
ในการกำหนดค่า swanctl ไคลเอนต์ขอที่อยู่เสมือน และไวลด์การ์ดในแต่ละตระกูลขอให้ผู้ตอบจัดสรรหนึ่งรายการจากแต่ละตระกูล ผู้ตอบดึงจากพูล และพูลเป็นออบเจกต์แยกจากเครือข่ายหลังเกตเวย์ เก็บแยกในแผนด้วย เพราะพูลที่ทับซ้อนกับคำนำหน้าของบริการจะสร้างการกำหนดเส้นทางที่ดูถูกต้องจนถึงวินาทีที่การรับส่งไปลงในที่ที่ไม่ต้องการ
ขอทั้งสองตระกูลเมื่อต้องการทั้งสอง และขอเพียงหนึ่งเมื่อไม่ต้องการ เพราะที่อยู่ที่ไม่ได้ใช้เป็นพื้นผิวของนโยบายโดยไม่มีประโยชน์ คำขอเฉพาะเจาะจงเป็นคำขอไม่ใช่การจอง และผู้ตอบอาจคืนค่าอื่นตามนโยบายของตน รายละเอียดนั้นสำคัญทุกที่ที่ที่อยู่ถูกเขียนตายตัวในกฎไฟร์วอลล์หรือการตรวจสอบการเฝ้าระวัง อ้างถึงพูลด้วยชื่อในการเชื่อมต่อและเก็บเครือข่ายบริการไว้นอกพูล
vips = 0.0.0.0, ::สร้างคำนำหน้าท้องถิ่นเฉพาะของคุณเองสำหรับพูล IPv6 แทนการรับค่าตัวอย่างสั้น ๆ ตัวอย่างแสดงรูปร่างของการตั้งค่า ไม่ใช่ค่าเริ่มต้นที่จะสืบทอด
อธิบายปลายทางแยกจากพูล
ตัวเลือกการรับส่งอธิบายสิ่งที่แต่ละฝ่ายคาดว่าจะแลกเปลี่ยน ดังนั้นตัวเลือกภายในของเกตเวย์ควรระบุคำนำหน้าของบริการที่ได้รับการป้องกัน ไม่ใช่พูลไคลเอนต์ ตัวเลือกระยะไกลของไคลเอนต์สะท้อนเจตนานั้น เมื่อรายการทั้งสองอธิบายออบเจกต์ต่างกัน อุโมงค์อาจขึ้นได้และยังไม่พาสิ่งที่มีประโยชน์ไป
คำนำหน้าเดียวกันต้องมีเส้นทางกลับและการส่งต่อที่ได้รับอนุญาตภายในเครือข่ายของเกตเวย์ สำหรับทุกตระกูลที่คุณเปิดใช้งาน
นี่คือจุดที่แผน IPv6 ส่วนตัวหยุดเพียงพอ การกำหนดที่อยู่ท้องถิ่นเฉพาะซื้อการเข้าถึงส่วนตัวและไม่ได้สร้างทางออก IPv6 สาธารณะ ดังนั้นการออกแบบที่สมมติว่าตระกูลที่ไม่มีหมายเลขจะทำตามกฎการพราง IPv4 ง่าย ๆ จะทำให้ผู้ใช้ผิดหวัง หากการเข้าถึง IPv6 สาธารณะเป็นส่วนหนึ่งของข้อกำหนด ต้องมีแผนที่กำหนดเส้นทางและต้นน้ำที่เห็นด้วย มิฉะนั้นจงบอกชัดเจนว่าฝั่ง IPv6 เป็นส่วนตัวเท่านั้น ซึ่งเป็นขอบเขตที่ซื่อสัตย์ไม่ใช่ข้อจำกัดที่ต้องซ่อน
ทำให้ DNS และเส้นทางกลับเป็นเจตนา
การแก้ชื่อไม่ตามการขนส่ง ตัวแก้ชื่อสามารถคืนระเบียน A และ AAAA ผ่านอุโมงค์ IPv4 เท่านั้น และไคลเอนต์จะลองตระกูลที่คุณไม่เคยวางแผน ตัดสินว่าชื่อบริการใดควรมีคำตอบสองสแตกที่ใช้งานได้และทำให้ทั้งสองเส้นทางเป็นเจตนา ชื่อที่แก้เป็นตระกูลที่ไม่มีเส้นทางทำงานทำให้เกิดการค้างแทนที่จะเป็นข้อผิดพลาดที่สะอาด และการค้างวินิจฉัยยากกว่ามาก
บันทึกการเข้าถึงจุดสิ้นสุดภายนอกแยกต่างหาก รวมถึงว่ามีการข้าม NAT ใด ๆ หรือไม่และใช้ตระกูลใด
จากนั้นเขียนแผนเป็นหกบรรทัด: จุดสิ้นสุดภายนอก พูล IPv4 พูล IPv6 คำนำหน้าบริการ IPv4 คำนำหน้าบริการ IPv6 และเราเตอร์ที่เป็นเจ้าของคำตอบของแต่ละรายการ แผนในรูปนั้นตอบคำถามที่ผู้ปฏิบัติงานถามจริงตอนตีสาม สิ่งที่สั้นกว่านั้นปล่อยให้สองสแตกเป็นที่อยู่ที่สองที่ยึดติดกับนโยบาย IPv4 เท่านั้น และนั่นคือวิธีที่มันมักจบลงด้วยการทำงานครึ่งเดียว