5

Я пытаюсь заставить IPv6 работать в моей локальной сети. Я знаю, что мой провайдер (Comcast) поддерживает его, потому что все, что связано с комбо-модемом / роутером, который я арендую у них, получает IPv6-адрес и связывается по протоколу (может подключиться к ipv6.google.com и получает 20/20 по http:/ /test-ipv6.com/).

Однако, когда я подключаю свой собственный маршрутизатор (Netgear WNDR3800, если он уместен), работающий под управлением DD-WRT, к комбинированному модему / маршрутизатору Comcast, ни один из хостов не может обмениваться данными через IPv6, хотя им назначаются адреса IPv6 в префиксе, который я делегировал Comcast.

Кажется, что он выходит из строя еще до того, как покидает ЛВС. Попытка пропинговать IPv6-адрес маршрутизатора возвращает "Узел назначения недоступен". Я предполагаю, что где-то пропущен маршрут, но я недостаточно знаком с IPv6 или маршрутизацией, чтобы знать, как проверить эту теорию или как ее решить.

Технические детали:

Маршрутизатор: WNDR3800 под управлением DD-WRT v24-sp2. Его конфигурация IPv6 выглядит следующим образом:

Маршрутизатор ifconfig:

root@DD-WRT:~# ifconfig
ath1      Link encap:Ethernet  HWaddr [redacted]
          inet6 addr: fe80::224e:7fff:fe74:13da/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:188122 errors:0 dropped:0 overruns:0 frame:0
          TX packets:227134 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:26587839 (25.3 MiB)  TX bytes:211385503 (201.5 MiB)

br0       Link encap:Ethernet  HWaddr [redacted]
          inet addr:192.168.2.1  Bcast:192.168.2.255  Mask:255.255.255.0
          inet6 addr: fe80::224e:7fff:fe74:13d8/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:190093 errors:0 dropped:0 overruns:0 frame:0
          TX packets:217213 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:24491040 (23.3 MiB)  TX bytes:204922896 (195.4 MiB)

br0:0     Link encap:Ethernet  HWaddr [redacted]
          inet addr:169.254.255.1  Bcast:169.254.255.255  Mask:255.255.0.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

eth0      Link encap:Ethernet  HWaddr [redacted]
          inet6 addr: fe80::224e:7fff:fe74:13d8/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1989 errors:0 dropped:0 overruns:0 frame:0
          TX packets:21615 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:569599 (556.2 KiB)  TX bytes:3297349 (3.1 MiB)
          Interrupt:4

eth1      Link encap:Ethernet  HWaddr [redacted]
          inet addr:10.0.0.59  Bcast:10.0.0.255  Mask:255.255.255.0
          inet6 addr: 2601:601:XXXX:XXXX:XXXX:XXXX:XXXX:13d9/64 Scope:Global
          inet6 addr: fe80::224e:7fff:fe74:13d9/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:216381 errors:0 dropped:0 overruns:0 frame:0
          TX packets:181622 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:202350364 (192.9 MiB)  TX bytes:25482727 (24.3 MiB)
          Interrupt:5

ipconfig с хоста Windows 8.1, подключенного к маршрутизатору:

C:\Users\seth>ipconfig

Windows IP Configuration


Wireless LAN adapter Wi-Fi:

   Connection-specific DNS Suffix  . :
   IPv6 Address. . . . . . . . . . . : 2601:601:XXXX:XXXX:XXXX:XXXX:XXXX:75c3
   Temporary IPv6 Address. . . . . . : 2601:601:XXXX:XXXX:XXXX:XXXX:XXXX:2b13
   Link-local IPv6 Address . . . . . : fe80::18b5:93d6:d9db:75c3%4
   IPv4 Address. . . . . . . . . . . : 192.168.2.100
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . : 192.168.2.1

(несвязанные интерфейсы удалены из вывода. вот, VMWare и т. д.)

1 ответ1

2

На основании вашего вопроса и разъяснений в комментариях мы узнали, что у вас есть /64 делегированный вашим провайдером модему. Модем использует этот /64 качестве префикса канала при подключении к маршрутизатору DD-WRT. И если в этом соединении есть переключатель (возможно, встроенный в модем), то вы можете подключить к этой ссылке больше устройств.

Чего у вас нет, так это префикса, делегированного DD-WRT. Приставка так далеко не делегирована.

Вы вручную ввели префикс в конфигурацию DD-WRT, как если бы он был делегирован. Однако это не так, по сути вы настроили все устройства, подключенные к DD-WRT, для подмены IP-адресов, которые не принадлежат сегменту сети, к которому они подключены. Может быть, они смогут отправлять пакеты в Интернет, но они никогда не получат ответ.

Как это решить

У вас есть несколько вариантов. Самым чистым решением было бы иметь несколько уровней делегирования префиксов. Интернет-провайдер должен передать более короткий префикс вашему модему. Для использования, которое вы описываете, не имеет значения, какой длины этот префикс, если он /63 или короче. В следующем примере я предполагаю, что интернет-провайдер делегировал 2001:db8:feed::/48 вашему модему.

Модем может разделить /48 на подсети и отправлять объявления маршрутизатора за 2001:db8:feed::/64 и делегировать 2001:db8:feed:100::/56 в DD-WRT. Затем DD-WRT может использовать это делегирование для отправки объявлений маршрутизатора за 2001:db8:feed:100::/64 . Это оставило бы оба маршрутизатора с большим количеством свободных блоков адресного пространства, которые они могут подделегировать или использовать для дополнительных интерфейсов. Например , если у вас есть Ethernet с несколькими VLAN или Wi - Fi с несколькими SSID, вы бы иметь в общей сложности /64 , который DD-WRT может послать объявления маршрутизатора для.

Что делать, если модем не поддерживает его

Многоуровневое делегирование префиксов (AFAIK) широко не поддерживается. Так что, если ваш модем не поддерживает его, решение выше не будет работать. Также возможно, что ваш провайдер игнорирует RFC о том, какую длину префикса делегировать, и дает вам /64 тогда, когда он должен был дать вам что-то более короткое, и в этом случае вы также не сможете использовать решение, описанное выше. Но есть альтернатива.

Если вы настроите один из двух маршрутизаторов для работы в качестве моста, а не маршрутизатора, у вас будет на один меньше IP-сегмент на пути между вашей локальной сетью и Интернетом. Это означает, что вам нужен только один делегированный /64 для получения рабочей конфигурации, и у вас будет только один уровень делегирования префиксов, поэтому поддержка нескольких уровней делегирования префиксов больше не требуется.

Судя по вашему вопросу, это звучит так, как будто это модем, где вы хотели бы соединиться. Затем провайдер может делегировать префикс непосредственно вашему маршрутизатору DD-WRT, который он может использовать в локальной сети.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .