IPv6 chia mạng a / 64 - cái gì sẽ phá vỡ và cách khắc phục?


27

Trong IPv6, bạn không được yêu cầu mạng con tới bất cứ thứ gì nhỏ hơn a / 64 (RFC 5375). Trong số những thứ khác, SLAAC không hoạt động với các mạng con nhỏ hơn và rõ ràng cũng có một số tính năng khác sẽ bị hỏng.

Giải pháp cho các tình huống trong đó các ISP sẽ chỉ cung cấp cho bạn một đơn / 64 nhưng bạn cần nhiều mạng con trong nội bộ? Lời khuyên phổ biến dường như là chỉ cần tìm một ISP khác sẽ đưa ra / 56 hoặc / 48. Ở một số nơi trên thế giới, điều đó có thể hoạt động, nhưng ở khu vực của chúng tôi (Hoa Kỳ), điều đó không khả thi do thiếu cạnh tranh. Hầu hết khách hàng của tôi đều may mắn nếu họ có một ISP phục vụ khu vực của họ. Nhiều người ở đây vẫn đang quay số.

Khách hàng của tôi sẽ không đủ điều kiện cho riêng họ / 48 từ ARIN.


9
Tôi sẽ không cố gắng triển khai IPv6 trong kịch bản đó. Tiếp tục gây áp lực cho ISP để cung cấp kết nối thích hợp. Làm cho sai lầm của họ rất rõ ràng và công khai, nếu cần thiết. Trích dẫn chương và câu thơ từ RFC 6177. Tất nhiên, trước tiên bạn nên đảm bảo rằng đó lỗi của họ và thiết bị của bạn đang yêu cầu một mạng con lớn hơn.
Michael Hampton

5
Đó cũng là lời khuyên tồi. Với tất cả các lợi thế của nó, hầu hết mọi người nên triển khai IPv6 ở cơ hội có sẵn đầu tiên. Thật không may, nhiều ISP đã thực hiện một bữa sáng hoàn chỉnh cho dịch vụ IPv6 của họ, khiến nó không được sử dụng.
Michael Hampton

2
Chúng ta có thể tranh luận cả ngày về việc các ISP có làm bữa sáng cho chó hay không (điều mà họ chắc chắn đã làm!), Hoặc liệu các nhà thiết kế IPv6 có thực tế không khi cho rằng các ISP sẽ không làm điều đó. Tất nhiên, tôi không nói với khách hàng của mình tránh xa IPv6 mãi mãi, cho đến khi bụi đã lắng xuống. Tôi chắc chắn năm năm nữa, hoặc thậm chí sớm hơn, sẽ có một SLAAC 2.0 hỗ trợ các mạng con nhỏ hơn, cùng với NAT (nhiều bộ định tuyến đã triển khai nó) và mọi thứ khác cần thiết để IPv6 hoạt động khi đối mặt với nghịch cảnh. Tôi đã tìm kiếm nhiều hơn cho các giải pháp ngay bây giờ, mặc dù.
Kevin Keane

4
Đừng tin vào sự lộn xộn của IPv4 như NAT để hoạt động đúng với IPv6. NAT là một hack, không phải là một tính năng ...
Sander Steffann

3
@KevinKeane NAT luôn là một hack và sẽ luôn như vậy. Mọi vấn đề mọi người đã cố gắng giải quyết bằng NAT đều có một giải pháp thực sự không liên quan đến NAT - nhưng có khả năng nó liên quan đến IPv6. Phần lớn các sự cố mà bạn nói có thể được quy cho các triển khai IPv6 hoặc chưa hoàn chỉnh.
kasperd

Câu trả lời:


28

Nếu ISP sẽ không cung cấp cho bạn nhiều hơn a / 64, thì ISP đó sẽ tệ. Nếu có bất kỳ sự giải thoát nào tôi có thể nói với bạn rằng tôi phải đối phó với các ISP còn hút hơn thế nữa. Xung quanh đây, việc lấy địa chỉ IPv4 công khai khỏi khách hàng là điều hoàn toàn bình thường và đặt họ phía sau một CGN. Và nếu bạn hỏi họ về địa chỉ IPv6, họ sẽ nói với bạn rằng họ không cung cấp IPv6 vì vẫn chưa có địa chỉ IPv4 và miễn là có máy chủ không hỗ trợ IPv6, họ sẽ không cung cấp IPv6 vì không thể một máy khách ngăn xếp kép để kết nối với máy chủ chỉ có IPv4.

Nếu bất kỳ ISP nào cung cấp cho tôi những gì bạn có, tôi sẽ lấy nó vì nó hút ít hơn những gì tôi có thể có được cho đến nay.

Tiến về phía trước có hai cách tiếp cận tôi khuyên bạn nên theo đuổi song song.

Tạo áp lực lên ISP

Đặt càng nhiều áp lực lên ISP càng tốt. Điều đó bao gồm liên hệ với các ISP khác và có thể chuyển đổi nếu bất kỳ ISP nào khác có thể cung cấp cho bạn một thỏa thuận tốt hơn.

Đảm bảo rằng bạn kiểm tra xem điều gì xảy ra nếu bộ định tuyến của bạn yêu cầu ủy nhiệm / 48, / 52, / 56 hoặc / 60 thông qua DHCPv6 trên mạng WAN. Tôi sẽ kiểm tra tất cả bốn độ dài tiền tố chỉ trong trường hợp máy chủ DHCPv6 vì một số lý do sẽ chỉ đưa ra một độ dài tiền tố cụ thể và bỏ qua các yêu cầu cho các độ dài tiền tố khác.

Tận dụng tốt nhất những gì bạn có

Cho rằng bạn có thể sẽ phải sống với một số hack tiến về phía trước, bạn phải tự hỏi mình hút ít IPv4 hơn với hack hay IPv6 với hack.

Có một số hack bạn có thể sử dụng để kéo dài một / 64 đến rất nhiều máy chủ.

Biến tiền tố liên kết thành tiền tố định tuyến

Nếu bạn có một / 64 trên liên kết WAN nhưng không có tiền tố nào được định tuyến đến mạng LAN của bạn, bạn có thể biến / 64 đó thành một tiền tố được định tuyến với một vài bước. Định cấu hình giao diện WAN trên bộ định tuyến của bạn là / 126 thay vì / 64. Cài đặt trình nền quảng cáo hàng xóm (chẳng hạn như ndppd) trên bộ định tuyến để quảng cáo địa chỉ MAC của chính nó cho mọi địa chỉ trong / 64 ngoại trừ 4 địa chỉ trong / 126. Với hai bước đó, bạn sẽ có một định tuyến / 64 mà bạn có thể sử dụng trên mạng LAN của mình ngoại trừ 4 địa chỉ được sử dụng cho liên kết WAN.

Phiên bản sửa đổi của bản hack này có thể chia sẻ liên kết / 64 trên nhiều bộ định tuyến. Tiền tố liên kết sau đó sẽ phải ngắn hơn một chút so với / 126 để phù hợp với địa chỉ IP cho mỗi bộ định tuyến, a / 120 sẽ đủ ngắn để cho phép tối đa 254 bộ định tuyến.

Mỗi bộ định tuyến rõ ràng sẽ chỉ nhận được một tiền tố dài hơn / 64. Tôi khuyên bạn nên tạo tiền tố cho mỗi bộ định tuyến miễn là bạn có thể trong khi vẫn có đủ địa chỉ IP cho mạng LAN trên bộ định tuyến đó. A / 112 hoặc / 120 cho mỗi bộ định tuyến có thể sẽ phù hợp. Mỗi bộ định tuyến phản hồi với địa chỉ MAC riêng để phát hiện hàng xóm bất kỳ thứ gì trong tiền tố của bộ định tuyến đó.

Trong biến thể này, mỗi bộ định tuyến sẽ có các tiền tố giống hệt nhau được cấu hình ở phía mạng WAN của họ và sẽ đáp ứng các yêu cầu khám phá hàng xóm cho tiền tố được gán cho phía LAN của họ. Rõ ràng không có tiền tố LAN nào có thể trùng nhau và không có tiền tố nào có thể trùng lặp với tiền tố mà bạn đã cấu hình ở phía mạng WAN.

Vì vậy, nếu bộ định tuyến ISP đóng vai trò là cổng của bạn ở địa chỉ 2001: db8 :: 1/64, thì bạn có thể sử dụng 2001: db8 :: / 120 làm mạng WAN của mình và bạn có thể gán 2001: db8 :: 1: 0/112 cho bộ định tuyến đầu tiên, 2001: db8 :: 2: 0/112 đến bộ định tuyến thứ hai, v.v.

Trên mạng LAN, bạn có thể kéo dài a / 64 đến rất nhiều máy chủ bằng cách chia mạng con hoặc bằng cách bắc cầu. Bạn sẽ phải tìm ra cái nào phù hợp nhất với bạn.

Chia nhỏ

Nếu bạn thực hiện mạng con / 64, bạn cũng có thể chuyển đến các tiền tố dài nhất vẫn có đủ địa chỉ cho các máy chủ bạn cần. Không đặt mạng con thành / 80 tiền tố, thay vào đó là / 116, / 120 hoặc / 124 trên mỗi mạng con. Những thứ bị hỏng nếu bạn không sử dụng / 64 dường như không quan tâm và bằng cách đi với / 116 hoặc lâu hơn, bạn sẽ giảm tác động của các cuộc tấn công DoS phát hiện hàng xóm nhất định (nếu có trong bất kỳ hệ thống nào của bạn).

Trong cấu hình mạng con như vậy, bạn sẽ phá vỡ SLAAC, do đó bạn cần máy chủ DHCPv6 để phản hồi trên từng phân đoạn và địa chỉ IPv6 tĩnh được định cấu hình trên tất cả các thiết bị mà không cần hỗ trợ DHCPv6.

Cầu nối

Cầu nối là sự thay thế khác. Về cơ bản, điều đó có nghĩa là bạn không mạng con nhưng chạy toàn bộ mạng LAN dưới dạng một phân đoạn IPv6 duy nhất với tiền tố / 64. (Nếu bạn cần, 64 / đó có thể mở rộng cả LAN và WAN.)

IPv6 được thiết kế để cho phép các cầu nối nhận ra mạng nào được bắc cầu mà mỗi địa chỉ anycast cần được chuyển tiếp đến. Bằng cách đó, bạn tránh phải phát các gói trên mọi liên kết vật lý trên mạng LAN của mình.

Cầu cũng có thể áp dụng tường lửa và bảo vệ chống lại việc phát hiện hàng xóm giả mạo trên mạng LAN.

Với sự thông minh đầy đủ trên các cây cầu, về nguyên tắc không có giới hạn đối với số lượng công tắc mà bạn có thể bắc cầu qua một / 64.


Cảm ơn bạn! Đó chính xác là loại câu trả lời tôi đang tìm kiếm! Tôi đặc biệt thích ý tưởng của bạn về việc biến / 64 thành tiền tố được định tuyến. Bạn có thể giải thích một chút về điều đó không? Đầu tiên, tôi không hiểu tại sao bạn đề xuất a / 126, thay vì a / 127? Địa chỉ IP nào được sử dụng ở đâu? Thứ hai, tại một trong những khách hàng của tôi, tôi thực sự có ba bộ định tuyến nội bộ riêng biệt. Trong IPv4, họ có ba IP công cộng khác nhau trong / 29 do ISP cung cấp. Đề án của bạn vẫn sẽ làm việc với các bộ định tuyến?
Kevin Keane

Ngoài ra, tôi không chắc chắn cách cài đặt Daemon Quảng cáo Hàng xóm trên bất kỳ bộ định tuyến nào. Một bộ định tuyến là Fortigate, một là Belkin và tôi nghĩ thứ ba là Linksys.
Kevin Keane

@KevinKeane Lý do tôi đề xuất a / 126 là bạn thường sẽ cần ít nhất ba địa chỉ trong tiền tố. Về phía ISP, bộ định tuyến có thể có tiền tố được cấu hình là 2001: db8 :: 1/64, có nghĩa là 2001: db8 :: là đặc biệt và 2001: db8 :: 1 được sử dụng bởi bộ định tuyến ISP. Bộ định tuyến của riêng bạn thường sẽ được cấu hình với 2001: db8 :: 2, có nghĩa là sau đó bạn đã sử dụng ba địa chỉ và a / 127 sẽ không đủ. A / 127 có thể đã hoạt động nếu bạn chưa sử dụng hack với độ dài tiền tố khác nhau được định cấu hình ở hai đầu của liên kết.
kasperd

cảm ơn bạn đã giải thích điều đó Vì vậy, khi tôi có ba bộ định tuyến phục vụ ba mạng nội bộ khác nhau, tôi nên sử dụng a / 125 và mỗi bộ định tuyến sẽ quảng cáo, thông qua quảng cáo hàng xóm, MAC của riêng nó chỉ dành cho các IP đó trong mạng con tương ứng?
Kevin Keane

1
Có một RFC thông tin, RFC 7421, Phân tích Ranh giới 64 bit trong Địa chỉ IPv6 , trong đó có một cuộc thảo luận đầy đủ về /64mạng con và tôi đã sai khi không sử dụng nó.
Ron Maupin

10

Có, ép ISP của bạn để không hút là lựa chọn ưu tiên. Các chính sách phân bổ của RIR cho rằng ISP cung cấp cho mỗi khách hàng a / 48; hoàn toàn không có lý do gì để ISP không làm điều đó.

IPv6 không phải là một fan hâm mộ của các mạng con nhỏ hơn, tuy nhiên điều duy nhất được cho là sẽ phá vỡ, mà tôi biết, là SLAAC. Bạn sẽ gặp vấn đề với các lỗi và giả định trong một số ngăn xếp IPv6, chỉ giả định một cách mù quáng "/ 64 == mạng con", nhưng đó là một lỗi, không phải là một tính năng và bạn có thể đánh bại nhà cung cấp để sửa nó. Liệu nó có được sửa hay không trước khi ISP cung cấp cho bạn / 48, mặt khác ...


Tôi nghĩ rằng một số phần của giao thức khám phá hàng xóm cũng được cho là sẽ phá vỡ. RFC 5375 có toàn bộ danh sách những thứ khác nhưng tôi không thực sự biết ý nghĩa thực tế. Chỉ nhận được a / 64 đôi khi đơn giản chỉ là vấn đề tiền bạc. ISP của bạn chỉ có thể cung cấp cho người dùng gia đình a / 64 và chỉ cung cấp / 48 giây cho các tài khoản doanh nghiệp. Chỉ vì bạn muốn tách văn phòng tại nhà hoặc WiFi của bạn khỏi phần còn lại của nhà hoặc vì bạn muốn có một mạng con riêng để sử dụng cho các máy ảo? Xin lỗi về những lời tán tỉnh - Tôi đang cố gắng giải quyết một vấn đề ở đây, không cố gắng thay đổi những thứ tôi không thể kiểm soát.
Kevin Keane

2
Nếu ISP của bạn muốn trở thành một người hoàn hảo về vấn đề này, họ sẽ trao / 128 cho mỗi thuê bao dân cư. Tôi đoán bạn có thể phát sóng RFC 5375 tại ISP và bảo họ cung cấp cho bạn IPv6, thay vì IPv5.5 ...
womble

Thực tế, ít nhất một ISP mà tôi biết đã làm điều đó (Verizon Wireless). Đó là một trong những lý do tôi cho rằng NAT vẫn cần thiết trong IPv6. Nhưng đó là tách biệt với câu hỏi của tôi, tất nhiên.
Kevin Keane

1
Đề xuất / 48 từ RFC 3177 không còn hiệu lực, hầu hết các RIR hiện khuyến nghị a / 56 cho các trang cuối như được mô tả trong RFC 6177: tools.ietf.org/html/rfc6177
skrause 23/8/2015

@skrause Không phải là nó làm cho một sự khác biệt nào. Có đủ / 48 giây mà họ sẽ không hết. Ngay cả ở tỷ lệ HD 80%, sẽ mất 2 ^ 36 phân bổ / 48 giây trước khi IANA tiêu thụ hết 2000 :: / 3. Và trừ khi trang web cuối của bạn là một trung tâm dữ liệu lớn, thì a / 56 có đủ mạng con cho trang web cuối của bạn.
kasperd
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.