Paseo por Akihabara y obtención de una IPv6 global con Starlink + OpenWrt
Hola, soy Munou.
Finalmente obtuve una dirección IP global usando el modo Bypass de Starlink, algo que había estado prometiendo hacer durante mucho tiempo.
Paseo por Akihabara
Pasé por varias tiendas de chatarra, pero no encontré nada interesante, así que simplemente seguí caminando.
Los SSD han subido de precio, ¿verdad? Como colecciono PCs de chatarra, tengo docenas de SSD de cientos de GiB, así que pensé que no necesitaba ninguno ahora, pero me arrepiento de no haber comprado SSD de TB cuando estaban baratos.
Supongo que el alto precio de los semiconductores continúa.



Y luego, pensé que esto parecía barato...

¿Oh?
Al investigar, vi que tenía:
Qualcomm IPQ5018 2Core
RAM 512MB
Y aunque es un modelo relativamente reciente, parecía ser compatible con OpenWrt.
[OpenWrt Wiki] Techdata: Linksys MX2000
Ya no entiendo mucho de SoCs para routers, pero como es de 2 núcleos, pensé "está bien"... con esa actitud.
No hay muchos routers por menos de 10,000 yenes que soporten OpenWrt y tengan 512MB de RAM, así que decidí comprarlo.
Linksys MX2000


Es pequeño y lindo. Tiene 4 terminales RJ45: 3 puertos LAN y 1 WAN.
Así que, procedí a instalar (flashear) OpenWrt. Este artículo fue de gran ayuda porque lo resume de manera muy sencilla.
Linksys MX2000 - OpenWrt
Instalé la imagen del enlace que aparece en la Wiki de OpenWrt más reciente.
Para escribir la imagen sysupgrade, simplemente la subí a través de la interfaz web LuCI.
Hice lo siguiente para completar la configuración básica:
Permitir solo SSH con llave pública
Denegar SSH desde el lado WAN
Ajustar un poco los parámetros del kernel
Reactivar y configurar el Wi-Fi, que estaba desactivado por defecto
Activar irqbalance
etc.
El uso de memoria fue más o menos el esperado, habiendo confirmado previamente que habría margen suficiente.
~# free -h
total used free shared buff/cache available
Mem: 442860 203588 180296 2224 58976 186768
Swap: 0 0 0Una vez terminado esto, con la configuración mínima lista, lo conecté a Starlink, activé el modo Bypass para detener las funciones de router de Starlink y usar el otro router, en este caso, el router OpenWrt MX2000.
Distribución de direcciones IPv6
Sé que IPv4 no es posible debido a las direcciones compartidas de CGNAT, así que no lo intentaré.
/etc/config/network
~~omitido~~
config interface 'lan'
option device 'br-lan'
option proto 'static'
list ipaddr '192.168.1.1/24'
option ip6assign '64'
~~omitido~~
config interface 'wan6'
option device 'wan'
option proto 'dhcpv6'
option reqaddress 'try'
option reqprefix 'auto'Después de eso, solo queda verificar la dirección IPv6 en el lado del cliente y demás con lo siguiente:
ip -6 addrCon esto, probé permitiendo una página HTTP en el puerto correspondiente usando la dirección IPv6 en el lado de OpenWrt, y funcionó, así que ya está listo.
Lo que queda es anunciar periódicamente la dirección IP de este router, vincularla a un registro AAAA y configurar un servidor WireGuard.
De esta manera, para el endpoint del servidor en el cliente WireGuard, solo bastará con especificar el dominio vinculado al registro AAAA para conectarse al servidor WireGuard de casa.
La ventaja de esto es que puedo vivir sin temer a las limitaciones de ancho de banda; actualmente tengo un servidor WireGuard alojado en ConoHa, pero el ancho de banda está limitado a un máximo de 100 Mbps. Aunque, al ser una conexión Starlink, ya no hay una diferencia de velocidad que valga la pena notar...
En realidad, la implementación fue más fácil de lo que pensaba, y me pareció que operar desde la interfaz web (WebUI) es muy sencillo.
Ahora entiendo un poco mejor a las personas que compran específicamente un router compatible con OpenWrt para instalarlo, en lugar de hacerlo solo para prolongar la vida útil de un router viejo.