如何将 dns 别名转发到主机名:端口?

ssc*_*ssc 16 domain-name-system port port-forwarding nameserver

可能的重复:
如何使用 DNS 将域重定向到我服务器上的特定端口

我的 Web 应用程序在 myserver.mydomain:10000 上运行 我想让它作为 mywebapp.mydomain 在 Intranet 上可用。

阅读Forward port to another Ip/port,我研究了 rinetd,但我不完全理解我如何实现我的目标:

  1. 在名称服务器上创建一个 cname 别名 mywebapp --> myserver
  2. 在 myserver 上运行 rinetd,将端口 80 重定向到 10000 ?!?

这将重定向所有http 流量。

我的理解好像有点偏差。谁能帮我 ?

Ale*_*vic 22

如果您不想创建另一个 IP,那么您所能做的就是在主 IP 上安装一个反向 http 代理和一个基于名称的虚拟主机,以使用 mod_proxy 路由流量。

下面是你如何用 apache 来做到这一点,几乎任何 http 服务器都可以做到,其他流行的替代品是 squid、nginx、lighthttpd 等。

Listen IP_ADDR:80
NameVirtualHost IP_ADDR:80

<VirtualHost IP_ADDR:80>
  ServerName  yourname.yourdomain

  ProxyPass        / http://localhost:10000/
  ProxyPassReverse / http://localhost:10000/

</VirtualHost>
Run Code Online (Sandbox Code Playgroud)


Mas*_*imo 7

DNS 只将主机名映射到 IP 地址,它对端口一无所知,也不能做任何事情。

您需要的解决方案可能是使用 NAT 路由器/防火墙将您的公共 IP 的端口 80 转发到内部服务器 IP 的端口 10000。

  • 您应该考虑使用您的网络服务器的反向代理功能。 (2认同)