De un microcontrolador de $1 a servidor web: el hosting embebido al descubierto
Servidor Web en un Microcontrolador de 8 Bits: ¿Por Qué No?
Hay proyectos locos en ingeniería que son posibles, pero absurdos. Sirven para entender cómo funciona internet de verdad. Hoy vemos cómo un desarrollador montó un sitio web real en un microcontrolador que vale lo que un chicle.
El Hardware: Algo Básico y Barato
El protagonista es el AVR64DD32. Un microcontrolador de 8 bits moderno que cuesta unos 1 dólar. Sus specs:
- CPU: Núcleo AVR de 8 bits a máximo 24 MHz.
- RAM: 8 KB de SRAM.
- Flash: 64 KB.
- Voltaje: De 1.8 a 5.5 V.
- Precio: 1 dólar. En serio.
Para un chip de 8 bits, es generoso. Supera al Atmega328 de Arduino en periféricos y facilidad de programación. El reto: conectarlo a internet.
El Problema de Red: Ethernet No Sirve
Ethernet parece ideal. Está por todos lados y es estable. Pero físicamente imposible. 10BASE-T va a 10 Mbps. Con codificación Manchester, son 20 Mbps en el cable.
Los pines GPIO del AVR llegan a 12 MHz. Ni de cerca. Podrías comprar un chip Ethernet extra, pero suma costo y complicaciones. No va con la idea.
La Solución Lista: Protocolo SLIP
Aquí entra SLIP, Serial Line Internet Protocol. De la era de los módems (RFC 1055). Súper simple: envuelve paquetes con bytes especiales y escapa caracteres raros.
- Delimitadores:
0xC0. 0xC0dentro: Se cambia por0xDB 0xDC.0xDBdentro: Por0xDB 0xDD.
Sin hardware fancy. Basta un adaptador USB-serial a 115.200 baud. Linux lo ve como interfaz de red:
stty -F /dev/ttyUSB0 115200 raw cs8
slattach -m -F -L -p slip /dev/ttyUSB0
Protocolo de los 90 que Linux aún soporta. Lo mejor: el micro se alimenta del adaptador. Un cable y listo.
La Pila de Protocolos: Todo desde Cero
Lo divertido es meter networking en 8 KB de RAM.
IP: Fácil
Cabecera IP: 40 bytes con direcciones y datos. Olvídate de fragmentación, que ya nadie usa. Truco simple: intercambia origen y destino, reinicia TTL y devuelve. El micro solo refleja paquetes.
TCP: El Infierno
TCP es otro rollo. Hay que:
- Llevar estados de conexión.
- Reenviar paquetes perdidos.
- Manejar casos raros (muchos).
- Controlar tiempos.
Días de debug. Funciona para una página simple, con sus fallos.
HTTP: Atajo Práctico
Respuesta HTTP hardcodeada. Siempre el mismo contenido estático. Una sola URL. Restricción que obliga a soluciones limpias.
Conexión Real: Ponerlo Online
El micro va por cable serial a una máquina de desarrollo. Esta se linkea a un VPS en Helsinki con IP pública.
Problema: sin IP pública propia. IPv4 escasea y caro. Serial no cruza internet fácil.
La Clave: WireGuard
VPN moderno de Linux. Crea túnel virtual que pasa NAT y obstáculos.
Flujo:
- Máquina de desarrollo se conecta al VPS por WireGuard.
- VPS redirige
/mcu/*al micro por túnel local. - Usuarios van al dominio público del VPS.
- VPS pasa tráfico al micro.
Técnica como la de streaming en Twitch, pero para chip de 1 dólar. El micro queda protegido.
Lecciones Reales
Proyecto impráctico, por eso brilla. Quita capas y obliga a protocolos básicos.
Descubres que:
- Redes son modulares. Cambia serial por Ethernet o TCP por UDP, base igual.
- Límites inspiran. 8 KB obliga código mínimo y eficiente.
- Protocolos viejos viven. SLIP de 1988, Linux lo tiene.
- Internet es simple. Sin abstracciones, solo bytes entre direcciones.
La Moraleja
En NameOcean desmenuzamos la web. Sea cloud o experimentos locos, dominar DNS, TCP y HTTP te hace mejor dev.
No reemplaza hosting cloud (obvio). Pero explica por qué el cloud mola. Reconstruir desde cero en 1 dólar vale oro.
Ahora, a evitar que alguien meta su blog en un reloj.
¿Quieres más sobre redes? Mira guías de DNS, fundamentos TCP/IP y por qué tu domain pesa más que hardware. Para hosting real (recomendado), tenemos opciones con IA sin soldadura.