Estoy intentando crear un servidor Half Life reenviando puertos a través de mi enrutador. No funcionó, lo verifiqué y mi IP pública y mi IP WAN eran diferentes, luego me di cuenta de que estaba en una red de nivel de operador. Llamé al ISP, les pregunté si había alguna manera de hacer que esto sucediera sin que tuvieran que reenviar el puerto a mi enrutador y me dijeron que sí, el tipo hizo que mi enrutador fuera un host DMZ. Eso era lo que necesitaba, las solicitudes a mi IP pública a cualquier puerto se pasaban a través de mi enrutador y luego mi enrutador reenviaba solo el puerto en el que estaba interesado, el puerto 27015, el puerto UDP predeterminado del servidor Half-Life.
Pero no funcionó, me aseguré de que mi host local tuviera una IP estática y configuré el DHCP para reservarme una, hice reglas de firewall para permitir el tráfico en el puerto 27015 y estaba usando todas las direcciones IP correctas para mi host local. , mi puerta de enlace predeterminada, mi dirección wan y mi dirección pública.
El chico del ISP y yo volvimos a hablar y llegamos a la conclusión de que el puerto estaba cerrado de alguna manera, configuré muy rápido un servidor Filezilla (reenvié el puerto 27015, como puerto de escucha y un rango 11000-12000, para transferir archivos, ambos en el enrutador y regla de firewall), y le pregunté si podía enumerar mi directorio personal desde mi IP pública y puerto 27015, FUNCIONÓ, así que todo estaba bien, verifiqué con Wireshark.
Ahora estoy en una situación en la que quiero que esto funcione, pero no estoy seguro de qué está pasando, el ISP no ayuda mucho y creo que la DMZ que configuró de alguna manera no permite paquetes UDP, ya que Filezilla usa TCP. y el servidor Half-life usó UDP, o hay un firewall en el enrutador ISP que bloquea los paquetes UDP o detecta que el puerto 27015 no es un servicio común.
Soy nuevo en el mundo de las redes, intento configurar esto más como un desafío, aprendí mucho haciendo y leyendo cómo hacer las cosas, no dude en señalar cualquier error y sugerir soluciones. También intento hacerlo de esta manera específica, si no puedo hacerlo, probablemente intentaré usar ngrok para que el servidor del juego funcione.