Llevo algunos meses intentando hacer funcionar el IPv6 de Digi en OPNsense, pero sin éxito. Durante el camino he aprendido mucho acerca del funcionamiento de IPv6, pero sigue sin funcionar y creo que no es por mi culpa.
Configuración en OPNsense
El procedimiento que he seguido es:
- Instalación limpia de OPNsense en una VM para trastear
- Dejar todo por defecto, excepto cambiar
net.inet6.ip6.dad_count
a 10 (de lo contrario OPNsense pierde el bloque asignado) - Configurar la VLAN 20 y el PPPoE para IPv4
- Ajustar DHCPv6 con los siguientes parámetros:
- Use VLAN priority: [ ]
- Configuration Mode: Basic
- Prefix delegation size: 56
- Request prefix only: [ x ]
- Send prefix hint: [ x ]
El motivo para habilitar las últimas dos opciones son:
- Digi me asigna un /128 para la WAN, el cual parece no funcionar, no puedo hacer pings a ningún sitio, así que pienso que sería buena idea desactivarlo, aunque no afecta en nada.
- Inspeccionando los paquetes, si no se habilita "Send prefix hint", OPNsense no manda nada en el Request al server de Digi, y por ende, no recibe ni prefijo, ni IP, ni DNS.
Resultado
Una vez hecho esto, el router recibe su /56, y podemos decirle al LAN que coja un /64 para ella.
Si vamos al menú de Overview todo está correcto. Si vamos a un dispositivo en la LAN, este recibe su dirección IPv6 temporal y dinámica. Todo parece estar correcto.
Sin embargo, no se puede salir de la red local, ping6 LAN->Router
funciona perfectamente, pero ping6 LAN->ipv6.google.com
falla. En los logs del firewall se ve como los pings salen del router, pero nunca hay respuesta.
Ningún paquete IPv6 llega al Firewall
Desde fuera de la red (por ej. una conexión móvil con IPv6) hago ping hacia la dirección LAN del router 2a0c:5a85:7700:7100:bf74:12fe:ff4e:da92
, sin embargo, en los logs del firewall no aparece nada.
Para comprobar que no estuviese loco, hago lo mismo hacia un OPNsense bajo Starlink, y efectivamente aparecen los pings llegando al firewall.
Traceroute al router con Digi
## Traceroute desde O2 (móvil con IPv6) hacia la dirección LAN del OPNsense con Digi
traceroute6 2a0c:5a85:7700:7100:bf74:12fe:ff4e:da92
traceroute6 to 2a0c:5a85:7700:7100:bf74:12fe:ff4e:da92 (2a0c:5a85:7700:7100:bf74:12fe:ff4e:da92) from 2a02:9130:fc08:ad44:2946:b36e:7c2e:7ece, 64 hops max, 28 byte packets
1 2a02-9130-fc08-ad44-d4bd-d0a8-356b-b93c.red-2a02-9130.customerbam.ipv6.rima-tde.net 4.208 ms 4.198 ms 3.746 ms
2 * * *
3 2a02-9002-0002-f012-0000-0000-0000-0001.red-2a02-90.customer.ipv6.rima-tde.net 56.280 ms
2a02-9002-0002-f011-0000-0000-0000-0001.red-2a02-90.customer.ipv6.rima-tde.net 54.986 ms
2a02-9002-0002-f012-0000-0000-0000-0001.red-2a02-90.customer.ipv6.rima-tde.net 55.339 ms
4 * * *
5 2a02-9002-0400-0000-0000-0000-0000-0006.red-2a02-90.customer.ipv6.rima-tde.net 53.263 ms * * #### Red de Movistar
6 2001:1498:1:84a::1 60.808 ms *
2001:1498:1:82d::1 72.864 ms #### Red de Telxius (Telefonica Global)
7 lag-18.ear1.mad2.sp.lumen.tech 66.656 ms 42.435 ms 38.159 ms
8 2001:1900:5:2:2::6482 45.464 ms 62.086 ms 40.753 ms #### Red de Lumen
9 *
2a02:2f00:8700::b 73.048 ms
2a02:2f00:8700::115 41.807 ms #### Red de Digi RO
10 * * *
11 * * *
12 * * *
El traceroute deja de avanzar, y en los logs del firewall no aparece nada.

Traceroute al router con Starlink (para comparar)
## Traceroute desde O2 (móvil con IPv6) hacia la dirección LAN del OPNsense con Starlink
traceroute6 2a0d:3344:237f:5d00:bf24:12fe:fd81:a015
traceroute6 to 2a0d:3344:237f:5d00:bf24:12fe:fd81:a015 (2a0d:3344:237f:5d00:bf24:12fe:fd81:a015) from 2a02:9130:fc08:ad44:2946:b36e:7c2e:7ece, 64 hops max, 28 byte packets
1 2a02-9130-fc08-ad44-d4bd-d0a8-356b-b93c.red-2a02-9130.customerbam.ipv6.rima-tde.net 6.486 ms 3.373 ms 3.879 ms
2 * * *
3 2a02-9002-0002-f011-0000-0000-0000-0001.red-2a02-90.customer.ipv6.rima-tde.net 63.086 ms
2a02-9002-0002-f012-0000-0000-0000-0001.red-2a02-90.customer.ipv6.rima-tde.net 26.236 ms
2a02-9002-0002-f011-0000-0000-0000-0001.red-2a02-90.customer.ipv6.rima-tde.net 37.322 ms
4 * * *
5 *
2a02-9002-0400-0000-0000-0000-0000-0006.red-2a02-90.customer.ipv6.rima-tde.net 53.618 ms * #### Red de Movistar
6 2001:1498:1:84a::1 67.526 ms 46.763 ms 38.039 ms
7 * *
2001:1498:1:84b::1 45.010 ms #### Red de Telxius (Telefonica Global)
8 * * *
9 spacex-ic-372407.ip.twelve99-cust.net 58.076 ms * *
10 spacex-ic-372407.ip.twelve99-cust.net 47.457 ms 47.138 ms #### Red de Arelion
host.starlinkisp.net 41.798 ms
11 host.starlinkisp.net 64.573 ms
host.starlinkisp.net 63.090 ms
host.starlinkisp.net 40.315 ms
12 host.starlinkisp.net 41.194 ms * 44.994 ms
13 host.starlinkisp.net 36.988 ms * 60.423 ms #### Red de Starlink
14 * * *
15 * * *

Conclusión
Con estas pruebas concluyo que el problema se encuentra en el lado de Digi, ya que no está direccionando correctamente el bloque que te asigna su servidor. Quizá me estoy dejando algo y no me doy cuenta, si alguien se le ocurre algo sería de gran ayuda. Gracias!