IPv6 subnetting a / 64 - จะเกิดอะไรขึ้นและจะแก้ไขได้อย่างไร


27

ใน IPv6 คุณไม่ควร subnet เป็นอะไรที่เล็กกว่า / 64 (RFC 5375) เหนือสิ่งอื่นใด SLAAC ไม่ทำงานกับซับเน็ตขนาดเล็กและดูเหมือนว่าคุณสมบัติอื่น ๆ บางอย่างจะแตก

วิธีแก้ปัญหาสำหรับสถานการณ์ที่ผู้ให้บริการอินเทอร์เน็ตจะให้เพียงครั้งเดียว / 64 แต่คุณต้องการเครือข่ายย่อยหลายรายการภายในหรือไม่ คำแนะนำทั่วไปน่าจะเป็นเพียงการหา ISP อื่นที่จะส่ง a / 56 หรือ / 48 ในบางส่วนของโลกที่อาจใช้งานได้ แต่ในพื้นที่ของเรา (สหรัฐอเมริกา) นั้นไม่สามารถทำได้เนื่องจากขาดการแข่งขัน ลูกค้าของฉันส่วนใหญ่โชคดีถ้าพวกเขามี ISP เดียวที่ให้บริการพื้นที่ของพวกเขา หลายคนที่นี่ยังคงหมุนโทรศัพท์

ลูกค้าของฉันจะไม่มีสิทธิ์ได้รับ / 48 จาก ARIN ของตนเอง


9
ฉันจะไม่พยายามปรับใช้ IPv6ในสถานการณ์นั้น กด ISP ต่อไปเพื่อทำการเชื่อมต่อที่เหมาะสม ทำให้ความผิดพลาดของพวกเขาสามารถมองเห็นได้และเปิดเผยต่อสาธารณะหากจำเป็น อ้างถึงบทและข้อจาก RFC 6177 แน่นอนคุณควรตรวจสอบให้แน่ใจก่อนว่ามันเป็นความผิดพลาดและอุปกรณ์ของคุณกำลังร้องขอเครือข่ายย่อยที่ใหญ่กว่า
Michael Hampton

5
นั่นเป็นคำแนะนำที่ไม่ดี เมื่อพิจารณาถึงข้อดีทั้งหมดคนส่วนใหญ่ควรปรับใช้ IPv6 ในโอกาสแรกที่มี น่าเสียดายที่ผู้ให้บริการอินเทอร์เน็ตหลายรายทำอาหารเช้าสำหรับสุนัขโดยใช้บริการ IPv6 ของพวกเขาทำให้ไม่ฉลาดที่จะใช้
Michael Hampton

2
เราสามารถโต้เถียงได้ตลอดทั้งวันไม่ว่าจะเป็น ISP ที่ทำอาหารเช้าของสุนัข (ซึ่งพวกเขาทำอย่างแน่นอน!) หรือว่านักออกแบบ IPv6 นั้นไม่สมจริงในสมมติฐานของพวกเขาว่า ISP จะไม่ทำเช่นนั้น แน่นอนฉันไม่ได้บอกให้ลูกค้าอยู่ห่างจาก IPv6 ตลอดไปจนกว่าฝุ่นจะตกลง ฉันแน่ใจว่าห้าปีต่อจากนี้หรือก่อนหน้านี้จะมี SLAAC 2.0 ที่รองรับซับเน็ตขนาดเล็กพร้อมกับ NAT (เราเตอร์หลายตัวใช้งานได้แล้ว) และทุกอย่างที่จำเป็นเพื่อให้ IPv6 ทำงานได้เมื่อเผชิญกับความทุกข์ยาก ฉันกำลังมองหาวิธีการแก้ปัญหาในขณะนี้มากขึ้น
Kevin Keane

4
อย่าพึ่งพา IPv4 ระเบียบเช่น NAT เพื่อทำงานอย่างถูกต้องกับ IPv6 NAT เป็นสับไม่ใช่คุณลักษณะ ...
ซานเดอร์ Steffann

3
@KevinKeane NAT เป็นแฮ็คเสมอและจะเป็นเช่นนั้นเสมอ ทุกปัญหาที่ผู้คนพยายามแก้ไขโดยใช้ NAT มีวิธีแก้ปัญหาจริงซึ่งไม่เกี่ยวข้องกับ NAT แต่มีแนวโน้มว่าจะเกี่ยวข้องกับ IPv6 ความแตกแยกส่วนใหญ่ที่คุณพูดสามารถนำมาประกอบกับ NAT หรือการปรับใช้ IPv6 ที่ไม่สมบูรณ์
kasperd

คำตอบ:


28

ถ้า ISP ไม่ให้มากกว่า / 64 แสดงว่า ISP นั้น ๆ หากโล่งใจฉันสามารถบอกคุณได้ว่าฉันต้องจัดการกับ ISP ที่ดูดมากกว่านั้น รอบ ๆ ที่นี่เป็นเรื่องปกติที่จะนำที่อยู่ IPv4 สาธารณะออกห่างจากลูกค้าและทำให้พวกเขาอยู่ด้านหลัง CGN และถ้าคุณถามที่อยู่ IPv6 พวกเขาจะบอกคุณว่าพวกเขาไม่ได้เสนอ IPv6 เพราะยังไม่มีปัญหาการขาดแคลนที่อยู่ IPv4 และตราบใดที่มีเซิร์ฟเวอร์ที่ไม่มีการสนับสนุน IPv6 พวกเขาจะไม่เสนอ IPv6 เพราะมันเป็นไปไม่ได้สำหรับ ไคลเอ็นต์สแต็กคู่เพื่อเชื่อมต่อกับเซิร์ฟเวอร์ IPv4 เท่านั้น

หาก ISP ใดจะให้สิ่งที่คุณมีฉันจะใช้มันเพราะมันดูดน้อยกว่าสิ่งที่ฉันได้รับจนถึง

การก้าวไปข้างหน้ามีสองวิธีที่ฉันแนะนำให้คุณดำเนินการขนาน

สร้างแรงกดดันต่อ ISP

กดดัน ISP ให้มากที่สุดเท่าที่จะทำได้ ซึ่งรวมถึงการติดต่อ ISP อื่น ๆ และอาจเปลี่ยนหาก ISP อื่นใดสามารถให้ข้อเสนอที่ดีกว่า

ตรวจสอบให้แน่ใจว่าคุณทำการทดสอบว่าจะเกิดอะไรขึ้นถ้าเราเตอร์ของคุณร้องขอ / 48, / 52, / 56, หรือ / 60 ผ่าน DHCPv6 บน WAN ฉันจะทดสอบความยาวของคำนำหน้าทั้งสี่ในกรณีที่เซิร์ฟเวอร์ DHCPv6 ด้วยเหตุผลบางอย่างจะแจกเฉพาะความยาวของคำนำหน้าเฉพาะและละเว้นการร้องขอสำหรับความยาวของคำนำหน้าอื่น ๆ

ทำให้ดีที่สุดในสิ่งที่คุณมี

เนื่องจากคุณอาจต้องใช้ชีวิตอยู่กับแฮ็กบางตัวที่ก้าวไปข้างหน้าคุณต้องถามตัวคุณเองว่าการใช้ IPv4 กับแฮ็กหรือ IPv6 กับแฮ็กน้อยลง

มีแฮ็กจำนวนหนึ่งที่คุณสามารถใช้เพื่อยืดโฮสต์เดี่ยว / 64 ให้กับโฮสต์จำนวนมาก

เปลี่ยนคำนำหน้าลิงก์เป็นคำนำหน้าเส้นทาง

หากคุณมี / 64 เดียวบนลิงค์ WAN แต่ไม่มีการส่งคำนำหน้าไปยัง LAN ของคุณคุณสามารถเปลี่ยน / 64 นั้นเป็นคำนำหน้าเส้นทางที่มีขั้นตอนเพียงไม่กี่ขั้นตอน กำหนดค่าอินเตอร์เฟส WAN บนเราเตอร์ของคุณเป็น / 126 แทนที่จะเป็น / 64 ติดตั้ง daemon การโฆษณา daemon (เช่น ndppd) บนเราเตอร์เพื่อโฆษณาที่อยู่ MAC ของตัวเองสำหรับทุกที่อยู่ใน / 64 ยกเว้นจาก 4 ที่อยู่ใน / 126 ด้วยสองขั้นตอนเหล่านี้คุณจะมีเส้นทาง / 64 ซึ่งคุณสามารถใช้บน LAN ของคุณยกเว้นที่อยู่ 4 แห่งที่ใช้สำหรับลิงก์ WAN

แฮ็ครุ่นที่แก้ไขนี้สามารถแชร์ลิงก์ / 64 กับเราเตอร์หลายตัวได้ คำนำหน้าลิงก์จะต้องสั้นกว่า / 126 เล็กน้อยเพื่อรองรับที่อยู่ IP ของเราเตอร์แต่ละตัว a / 120 จะสั้นพอที่จะอนุญาตให้เราเตอร์สูงสุด 254 ตัว

เห็นได้ชัดว่าเราเตอร์แต่ละคนจะได้รับเพียงคำนำหน้าซึ่งจะนานกว่า / 64 ฉันขอแนะนำให้คุณทำคำนำหน้าสำหรับเราเตอร์แต่ละตัวตราบใดที่คุณยังสามารถมีที่อยู่ IP เพียงพอสำหรับ LAN บนเราเตอร์นั้น A / 112 หรือ / 120 สำหรับแต่ละเราเตอร์น่าจะเหมาะสม เราเตอร์แต่ละตัวจะตอบสนองด้วยที่อยู่ MAC ของตัวเองเพื่อค้นหาสิ่งที่อยู่ใกล้เคียงภายในคำนำหน้าของเราเตอร์

ในตัวแปรนี้เราเตอร์แต่ละคนจะมีคำนำหน้าเหมือนกันที่กำหนดค่าไว้ที่ฝั่ง WAN ของพวกเขาและจะตอบสนองต่อคำขอค้นหาเพื่อนบ้านสำหรับคำนำหน้าที่กำหนดให้กับฝั่ง LAN ของพวกเขา เห็นได้ชัดว่าไม่มีคำนำหน้า LAN ใดที่อาจทับซ้อนกันและไม่มีคำนำหน้าใดที่ทับซ้อนกันกับคำนำหน้า LAN ที่คุณกำหนดค่าไว้

ดังนั้นหากเราเตอร์ ISP ที่ทำหน้าที่เป็นเกตเวย์ของคุณอยู่ตามที่อยู่ 2001: db8 :: 1/64 คุณสามารถใช้ 2001: db8 :: / 120 เป็น WAN ของคุณและคุณสามารถกำหนด 2001: db8 :: 1: 0/112 เพื่อ เราเตอร์แรก 2001: db8 :: 2: 0/112 ไปยังเราเตอร์ที่สองเป็นต้น

บน LAN คุณสามารถขยาย a / 64 ไปยังโฮสต์จำนวนมากไม่ว่าจะโดย subnetting หรือ bridging คุณจะต้องหาว่าแบบใดที่เหมาะกับคุณที่สุด

subnetting

ถ้าคุณทำ subnet / 64 คุณอาจไปที่ส่วนนำหน้ายาวที่สุดซึ่งยังมีที่อยู่เพียงพอสำหรับโฮสต์ที่คุณต้องการ อย่าซับเน็ตเข้าไปในคำนำหน้า / 80 ให้ไปที่ / 116, / 120 หรือ / 124 ต่อซับเน็ต สิ่งที่ผิดพลาดหากคุณไม่ได้ใช้ / 64 ไม่น่าจะสนใจและไปกับ / 116 หรือนานกว่านั้นคุณจะลดผลกระทบจากการโจมตี DoS ที่เพื่อนบ้านพบ (ถ้ามีอยู่ในระบบของคุณ)

ในการกำหนดค่าเครือข่ายย่อยดังกล่าวคุณจะทำลาย SLAAC ดังนั้นคุณต้องมีเซิร์ฟเวอร์ DHCPv6 เพื่อตอบกลับในแต่ละส่วนและที่อยู่ IPv6 แบบคงที่ซึ่งกำหนดค่าไว้ในอุปกรณ์ทั้งหมดโดยไม่รองรับ DHCPv6

Bridging

การเชื่อมโยงเป็นอีกทางเลือกหนึ่ง เป็นหลักหมายความว่าคุณไม่ได้ซับเน็ต แต่ใช้ LAN ทั้งหมดของคุณเป็นเซ็กเมนต์ IPv6 เดียวพร้อมคำนำหน้า / 64 (หากคุณต้องการ / 64 สามารถขยายได้ทั้ง LAN และ WAN)

IPv6 ได้รับการออกแบบมาเพื่ออนุญาตให้บริดจ์รับรู้ว่าเครือข่ายบริดจ์ใดที่อยู่แต่ละคาสต์ใด ๆ ที่จำเป็นต้องส่งต่อไป ด้วยวิธีนี้คุณจะไม่ต้องออกอากาศแพ็กเก็ตในทุกลิงก์จริง ๆ บน LAN

บริดจ์ยังสามารถใช้ไฟร์วอลล์และการป้องกันการปลอมแปลงเพื่อนบ้านค้นพบบน LAN

ด้วยหลักการที่ชาญฉลาดบนสะพานมีหลักการไม่ จำกัด จำนวนสวิตช์ที่คุณสามารถสร้างสะพานเชื่อมเดียว / 64 ข้าม


ขอขอบคุณ! นั่นคือประเภทของคำตอบที่ฉันต้องการ! ฉันชอบความคิดของคุณโดยเฉพาะการเปลี่ยน / 64 ให้เป็นคำนำหน้าเส้นทาง กรุณาอธิบายเพิ่มเติมหน่อยได้ไหม? ก่อนอื่นฉันไม่เข้าใจว่าทำไมคุณแนะนำ a / 126 มากกว่า / 127 ที่อยู่ IP ใดที่ใช้อยู่ที่ไหน ประการที่สองที่หนึ่งในลูกค้าของฉันฉันมีสามเราเตอร์ภายในแยกต่างหาก ใน IPv4 พวกเขามีสาม IP สาธารณะที่แตกต่างกันใน / 29 โดย ISP รูปแบบของคุณจะยังคงทำงานกับเราเตอร์เหล่านี้หรือไม่
Kevin Keane

นอกจากนี้ฉันไม่แน่ใจว่าจะติดตั้ง Neighbor Advertising Daemon บนเราเตอร์ใด ๆ เราเตอร์หนึ่งตัวคือ Fortigate หนึ่งคือ Belkin และฉันคิดว่าอันที่สามคือ Linksys
Kevin Keane

@KevinKeane เหตุผลที่ฉันแนะนำให้ / 126 คือคุณมักจะต้องมีที่อยู่อย่างน้อยสามที่อยู่ภายในคำนำหน้า ในด้าน ISP เราเตอร์อาจมีคำนำหน้ากำหนดค่าเป็น 2001: db8 :: 1/64 ซึ่งหมายถึง 2001: db8 :: เป็นพิเศษและ 2001: db8 :: 1 ถูกใช้โดยเราเตอร์ ISP โดยปกติเราเตอร์ของคุณจะถูกกำหนดค่าด้วย 2001: db8 :: 2 ซึ่งหมายความว่าคุณได้ใช้ที่อยู่สามแห่งแล้วและ / 127 จะไม่เพียงพอ A / 127 อาจใช้งานได้หากคุณไม่ได้ใช้แฮ็คที่มีความยาวส่วนต่างที่กำหนดค่าไว้ที่ปลายทั้งสองด้านของลิงก์
kasperd

ขอบคุณสำหรับการอธิบาย! ดังนั้นเมื่อฉันมีเราเตอร์สามตัวที่ให้บริการเครือข่ายภายในสามเครือข่ายที่แตกต่างกันฉันควรใช้ a / 125 และเราเตอร์แต่ละคนจะโฆษณาผ่านการโฆษณาเพื่อนบ้านซึ่งเป็น MAC ของตัวเองสำหรับ IP เหล่านั้นในซับเน็ตที่สอดคล้องกันเท่านั้น
Kevin Keane

1
มีข้อมูลที่เป็น RFC, RFC 7421, การวิเคราะห์ขอบเขต 64- บิตในการกำหนดที่อยู่ IPv6ซึ่งมีการอภิปรายที่สมบูรณ์ของ/64เครือข่ายย่อยและสิ่งที่ผิดพลาดของฉันเมื่อไม่ได้ใช้มัน
Ron Maupin

10

ใช่การกด ISP ของคุณเพื่อไม่ดูดเป็นตัวเลือกที่ต้องการ นโยบายการจัดสรร RIR ถือว่าผู้ให้บริการแต่ละรายให้ 48 / a; ไม่มีเหตุผลใดที่ ISP จะไม่ทำเช่นนั้น

IPv6 ไม่ได้เป็นแฟนของซับเน็ตขนาดเล็ก แต่สิ่งเดียวที่ควรจะทำลายที่ฉันรู้คือ SLAAC คุณจะมีปัญหากับข้อบกพร่องและสมมติฐานใน IPv6 สแต็คบางตัวซึ่งเพิ่งจะถือว่า "/ 64 == subnet" แบบสุ่ม แต่นั่นเป็นข้อผิดพลาดไม่ใช่คุณลักษณะและคุณสามารถเอาชนะผู้ขายเพื่อแก้ไขได้ ไม่ว่าจะได้รับการแก้ไขก่อน ISP ของคุณจะให้ / 48 ในทางกลับกัน ...


ฉันคิดว่าบางส่วนของโปรโตคอลการค้นพบเพื่อนบ้านก็ควรที่จะทำลาย RFC 5375 มีรายการอื่นทั้งหมด แต่ฉันไม่รู้ถึงความจริงที่เป็นประโยชน์ การรับ a / 64 เท่านั้นบางครั้งอาจเป็นเรื่องของเงิน ISP ของคุณอาจให้ผู้ใช้ตามบ้านเพียง / 64 และให้ / 48s กับบัญชีธุรกิจเท่านั้น เพียงเพราะคุณต้องการแยกโฮมออฟฟิศหรือ WiFi ของคุณออกจากส่วนที่เหลือของบ้านหรือเพราะคุณต้องการให้ซับเน็ตแยกต่างหากสำหรับเครื่องเสมือน? ขออภัยเกี่ยวกับการคุยโว - ฉันพยายามจัดการกับปัญหาที่นี่ไม่พยายามเปลี่ยนสิ่งที่ฉันไม่สามารถควบคุมได้
Kevin Keane

2
หาก ISP ของคุณต้องการที่จะเป็นปุ่มหมุนรวมเกี่ยวกับมันพวกเขาจะส่ง a / 128 ให้กับผู้สมัครสมาชิกแต่ละที่อยู่อาศัย ฉันเดาว่าคุณสามารถโบก RFC 5375 ที่ ISP และบอก 'em เพื่อให้คุณ IPv6 มากกว่า IPv5.5 ...
womble

ตามจริงแล้วผู้ให้บริการอินเทอร์เน็ตอย่างน้อยหนึ่งรายที่ฉันรู้ก็ทำเช่นนั้น (Verizon Wireless) เป็นหนึ่งในเหตุผลที่ฉันยืนยันว่า NAT ยังคงต้องการใน IPv6 แต่นั่นแยกจากคำถามของฉันแน่นอน
Kevin Keane

1
คำแนะนำ / 48 จาก RFC 3177 ไม่ถูกต้องอีกต่อไป RIR ส่วนใหญ่ตอนนี้แนะนำ a / 56 สำหรับไซต์ปลายทางตามที่อธิบายไว้ใน RFC 6177: tools.ietf.org/html/rfc6177
skrause

@ skrause ไม่ใช่ว่ามันจะสร้างความแตกต่างอยู่ดี มี / 48s เพียงพอที่พวกเขาจะไม่หมด แม้ในอัตราส่วน 80% HD มันจะใช้เวลา 2 ^ 36 จัดสรร / 48s ก่อนที่ IANA จะบริโภคทั้งหมด 2000 :: / 3 และหากเว็บไซต์ปลายทางของคุณเป็นศูนย์ข้อมูลหลักแล้ว / 56 มีซับเน็ตเพียงพอสำหรับไซต์ปลายทางของคุณ
kasperd
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.