Подсекция IPv6 a /64 - что сломается и как обойти это?

В IPv6 вы не должны подсеть ни на что меньшее, чем a /64 (RFC 5375). Помимо прочего, SLAAC не работает с небольшими подсетями, и, по-видимому, некоторые другие функции будут ломаться.

Каковы обходные пути для ситуаций, когда интернет-провайдеры будут предоставлять только один /64, но вам нужно много внутренних подсетей внутри? Общий совет, похоже, заключается в том, чтобы просто найти другого интернет-провайдера, который выдает /56 или /48. В некоторых частях мира, которые могут работать, но в нашей области (США), это невозможно по причине отсутствия конкуренции. Большинство моих клиентов повезло, если у них есть один интернет-провайдер, обслуживающий свою область. Многие люди здесь все еще находятся на dial-up.

Мои клиенты не смогут претендовать на свои собственные /48 из ARIN.

21 голос | спросил Kevin Keane 18 AM00000070000004731 2015, 07:00:47

2 ответа


24

Если интернет-провайдер не даст вам больше, чем /64, то этот провайдер отстой. Если это какое-то облегчение, я могу сказать вам, что мне приходится иметь дело с интернет-провайдерами, которые сосут даже больше. Вокруг здесь совершенно нормально принимать публичные IPv4-адреса от клиентов и помещать их за CGN. И если вы спросите их о IPv6-адресах, они скажут вам, что они не предлагают IPv6, поскольку пока нет недостатка в адресах IPv4, и пока есть серверы без поддержки IPv6, они не будут предлагать IPv6, потому что это невозможно для клиент двойного стека для подключения к серверу с поддержкой IPv4.

Если какой-либо интернет-провайдер даст мне то, что у вас есть, я бы взял его, потому что он отстой меньше, чем я смог до сих пор.

Двигаясь вперед, есть два подхода, которые я рекомендую вам проводить параллельно.

Надавить на провайдера

Положите такое же давление на ISP, как вы можете. Это включает в себя обращение к другим интернет-провайдерам и, возможно, переключение, если любой другой интернет-провайдер может предложить вам лучшую сделку.

Убедитесь, что вы проверили, что произойдет, если ваш маршрутизатор запрашивает делегированные /48, /52, /56 или /60 через DHCPv6 в WAN. Я проверил бы все четыре длины префикса на всякий случай, если сервер DHCPv6 по какой-то причине будет передавать только конкретную длину префикса и игнорирует запросы для других длин префикса.

Сделайте лучшее из того, что у вас есть

Учитывая, что вам, вероятно, придется жить с некоторыми хаками, двигающимися вперед, вы должны спросить себя, что заставляет меньше IPv4 с хаками или IPv6 с помощью хаков.

Есть несколько хаков, которые вы можете использовать, чтобы растянуть один /64 на множество хостов.

Превращение префикса ссылок в перенаправленный префикс

Если у вас есть одна /64 на WAN-ссылке, но префикс не перенаправлен в вашу локальную сеть, вы можете повернуть этот /64 в маршрутизированный префикс несколькими шагами. Настройте интерфейс WAN на маршрутизаторе как a /126, а не a /64. Установите демон-рекламу соседей (например, ndppd) на маршрутизаторе, чтобы рекламировать свой собственный MAC-адрес для каждого адреса в /64, за исключением четырех адресов в /126. С этими двумя шагами вы будете иметь маршрутизируемый /64, который вы можете использовать в своей локальной сети, за исключением 4 адресов, используемых для ссылки WAN.

Измененная версия этого хака может совместно использовать ссылку /64 на нескольких маршрутизаторах. Затем префикс связи должен быть немного короче, чем /126 для размещения IP-адреса для каждого маршрутизатора, a /120 будет достаточно коротким, чтобы обеспечить до 254 маршрутизаторов.

Каждый маршрутизатор, очевидно, получит только префикс, который будет длиннее, чем /64. Я рекомендую вам сделать префикс для каждого маршрутизатора до тех пор, пока вы можете, хотя у вас достаточно IP-адресов для локальной сети на этом маршрутизаторе. A /112 или /120 для каждого маршрутизатора, вероятно, будет подходящим. Каждый маршрутизатор отвечает своим собственным MAC-адресом для обнаружения соседом чего-либо в этом префиксе маршрутизатора.

В этом варианте каждый маршрутизатор будет иметь одинаковые префиксы, настроенные на своей стороне WAN, и будет отвечать на запросы поиска соседей для префикса, назначенного их стороне локальной сети. Очевидно, ни один из префиксов LAN не может перекрывать друг друга, и ни один из них не может перекрывать префикс, настроенный на стороне WAN.

Итак, если маршрутизатор ISP, действующий как ваш шлюз, находится по адресу 2001: db8 :: 1/64, тогда вы можете использовать 2001: db8 :: /120 как свою WAN, и вы можете назначить 2001: db8 :: 1: 0 /112 к первому маршрутизатору, 2001: db8 :: 2: 0/112 ко второму маршрутизатору и т. Д.

В локальной сети вы можете растянуть /64 на множество хостов либо по подсети, либо по мостовой схеме. Вам нужно будет решить, какая из двух работ будет лучше для вас.

Subnetting

Если вы выполняете подсеть в /64, вы также можете перейти к самым длинным префиксам, которые по-прежнему имеют достаточно адресов для хостов, которые вам нужны. Не подключайте подсеть в префиксы /80, а переходите с /116, /120 или /124 в подсеть. Вещи, которые нарушают работу, если вы не используете /64, вряд ли позаботятся, и, перейдя с /116 или дольше, вы уменьшите воздействие определенных DoS-атак соседей (если они присутствуют в любом из вашихсистем).

В такой конфигурации подсети вы сломаете SLAAC, так что вам нужен сервер DHCPv6 для ответа на каждый сегмент и статические адреса IPv6, настроенные на всех устройствах без поддержки DHCPv6.

Bridging

Еще одна альтернатива - мост. По сути, это означает, что вы не подсети, а всю свою локальную сеть используете как отдельный сегмент IPv6 с префиксом /64. (Если вам нужно, это /64 может охватывать как LAN, так и WAN.)

IPv6 предназначен для того, чтобы мосты могли распознавать, какая из мостовых сетей должна быть перенаправлена ​​на каждый адрес anycast. Таким образом, вам не нужно передавать пакеты по каждой физической ссылке в вашей локальной сети.

Мосты могут также применять брандмауэры и защиту от спуфинга соседей в локальной сети.

Имея достаточный интеллект на мостах, в принципе нет предела тому, сколько коммутаторов вы можете подключить через один /64.

ответил kasperd 18 AM000000100000005831 2015, 10:59:58
9

Да, давление на вашего провайдера, чтобы не сосать, является предпочтительным вариантом. Политика распределения RIR предполагает, что провайдер предоставляет каждому клиенту a /48; для ISP нет абсолютно никакой причины, чтобы этого не делать.

IPv6 не является поклонником небольших подсетей, однако единственное, что предполагается сломать, что я знаю, это SLAAC. У вас будут проблемы с ошибками и предположениями в некоторых стеках IPv6, которые просто вслепую предполагают «/64 == подсеть», но это ошибка, а не функция, и вы можете победить поставщика, чтобы исправить ее. Будет ли он исправлен до того, как ваш интернет-провайдер даст вам /48, с другой стороны ...

ответил womble 18 AM00000080000003031 2015, 08:02:30

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132