Puertos alternativos en Reth y Grandine

José María Morelos y Pavón

Al correr múltiples clientes de Ethereum en una misma máquina, es importante evitar conflictos de puertos. Aquí documento cómo instalé y configuré Reth y Grandine, y cómo fui debuggeando para usar puertos alternativos correctamente.

Mi máquina ya se encontraba corriendo el cliente de ejecución Nethermind y el cliente de consenso Nimbus.


✅ Instalación de Reth

Los archivos compilados están en target/release/reth. Sin embargo, el ejecutable de reth fue instalado también.


🚀 Ejecución con puertos por defecto

⚠️ En todos los casos, el nodo arrancaba sin errores aparentes, pero no sincronizaba bloques. Aparentemente, los puertos no estaban abiertos por el firewall del sistema.


🔩 Instalación de dependencias del sistema

Esto es necesario para compilar correctamente proyectos en Rust como Reth o Grandine.


🧱 Compilación de Grandine


🔥 Configuración de puertos con UFW

Para permitir la conexión y sincronización de nodos, hay que abrir los puertos específicos utilizados:

💡 Si estás ejecutando otros clientes como Lighthouse o Grandine, también deberás permitir sus puertos correspondientes.


📝 Notas

  • El firewall (UFW) puede estar bloqueando el tráfico por defecto, incluso si el nodo corre sin errores.

  • Probar conectividad con telnet, nc o revisar logs puede ser útil.

  • Siempre que se cambien puertos, verificar que no haya conflicto con otros servicios en el sistema.


¿Quién dijo miedo? Aquí seguimos debuggeando sin parar 🛠️⚡

Last updated