如何从仅支持 IP 号码的设备访问具有已知主机名的主机?

如何从仅支持 IP 号码的设备访问具有已知主机名的主机?

问题:服务器上有一个服务,其 IP 地址不断变化,但主机名不变(Dyndns 或类似)。但想要使用该服务的客户端设备只能通过 IP 访问它,而不能通过主机名访问。如何解决这个问题?

简单的部分是设备位于本地网络中,具有 Windows 服务器(恒定 IP)和 Mikrotik 路由器(也是恒定 IP)。所以我在考虑两种可能的解决方案:Mikrotik magic 端口转发到外部主机(有类似的东西吗?)或 Windows 机器上的一个小应用程序将端口转发到已知主机(它存在吗?)。请指教。

答案1

经过几个晚上的挖掘,它看起来比我想象的要容易:socatwindows 机器上的 good'ol 就是答案。因此,windows 机器成为端口转发器(并且其 IP 可以在设备中使用):

socat tcp-l:local-port,fork,reuseaddr tcp:remote-host:remote-port

例如:

socat tcp-l:80,fork,reuseaddr tcp:google.com:80

模式下的 Socattcp-listen按需建立连接,显然每次都将主机名解析为地址(检查修改 hosts 文件)。forkreuseaddr选项tcp-listen不是硬核需要的,使命令在出现问题时更顺畅地运行。

适用于 Windows 的 Socat 就在这里

相关内容