En el caso de querer abrir un puerto para Zandronum, tuve que usar Windows para maximizar compatibilidad de Cliente y Servidor, debido que la Raspberry Pi no se instala una versión de 3.1 totalmente adecuada a día de hoy, ni tampoco se alínea bien las configuraciones de versiones, por esa razón, existirán pasos dispersos en el que se pueden compartir puertos, que en este caso, será el puerto 10666.

He probado con Minecraft, pero funciona si solo el servidor es Exclusivamente Java. De otra forma, si tienes GeyserMC y Chat de Voz, hostea a través del que está expuesto.

Activación de Puerto Necesario en Router

<aside> 💡

La idea de este proceso es poder habilitar el Reenvío de puertos para redirigir tráfico externo al dispositivo en cuestión en la Red Interna.

</aside>

Los datos que se basan serán ejemplos, y no datos reales.

  1. Acceder al Router
    1. Vamos, que es fácil acceder al router con el IP por defecto que tiene incluido, o la IP de “Puerta de Enlace”
  2. Ubica la configuración de NAT/Port Forwarding en el Router.
    1. No todos los modelos son iguales, por lo que debe tener uno de esos nombres, ambos o algo relacionado.
  3. Configurar el Reenvío de puertos:
    1. Puerto externo e interno: 10666
    2. IP Interna: a la máquina Server que levanta el Host hacia el IP público, que en mi caso es la Raspberry Pi. (Debe ser la máquina que hostea, caso contrario, no hay conexión)
    3. Protocolo: Uso ambos (TCP/UDP) para que funcione si es que el TCP lo necesite, aunque más utiliza UDP por lo observado.

Durante el proceso, utilizamos DNS Checker para verificar si el puerto está habilitado. Y si no está activado por ahora, no te preocupes, porque lo habilitaremos dentro de poco.

Configuración del Servidor para Redirigir Información

Recordemos que estamos configurando esto en el Servidor Linux.

Desde /etc/sysctl.conf vamos a configurar el archivo y descomentamos o agregamos net.ipv4.ip_forward=1

Aplicamos los cambios con sudo sysctl -p

Agregamos una regla para reenviar el tráfico de esta manera:

De esta manera es posible cambiar:

sudo iptables -t nat -A PREROUTING -p tcp --dport 10666 -j DNAT --to-destination 192.168.X.A:10666
sudo iptables -t nat -A PREROUTING -p udp --dport 10666 -j DNAT --to-destination 192.168.X.A:10666
sudo iptables -A FORWARD -p tcp -d 192.168.X.A --dport 10666 -j ACCEPT
sudo iptables -A FORWARD -p udp -d 192.168.X.A --dport 10666 -j ACCEPT
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Verificamos con sudo iptables -L -n -v

Y luego, si se tiene instalado iptables-persistent puedes guardar y recargar de inmediato todo.