我在某个服务器上安装了虚拟机,我的URL就是这样。


111.11.11.111:8002


我可以获取DNS的人吗?指向特定端口?

还有一件事。如果我不能这样做,那么服务器上的虚拟机可以成为该服务器DNS的子域吗?

#1 楼

DNS没有用于HTTP,HTTPS和SSL等旧协议的端口的概念。 DNS仅指向IP地址。

用于特定服务的连接端口由惯例确定。例如,HTTP的默认端口是80,HTTPS的默认端口是443,SSH的默认端口是22。

覆盖默认端口的唯一方法是在URL中指定它。 (或在命令行上输入类似SSH的内容)。无法在DNS中指定端口号。如果您正在运行网站,则如果您不想在URL中使用丑陋的端口号,则服务器必须在端口80上响应HTTP请求。


目前尚不清楚我正是您要完成的任务。

如果要在同一服务器上运行多个站点,通常是可以的。您可以在同一服务器中运行来自不同域或不同子域的多个站点。您需要配置虚拟主机才能正常工作。

您可能需要运行另一台运行不同技术的服务器(例如,Tomcat运行Java,Rails服务器运行Ruby)。在这种情况下,通常使用反向代理将您的附加服务器连接到主服务器,以从URL中删除端口号。

如果您要在家中托管网站和ISP阻塞了80端口,那么您就不走运了。您唯一的选择是在URL中找到不同的主机或具有端口号。


有一项更新的创新,允许DNS指定端口号:SRV记录。但是,SRV记录仅适用于在其规范中使用SRV查找的新协议。 HTTP和HTTPS等较旧的协议将继续使用其当前端口号,并且不支持SRV。

评论


我在某些主机上有虚拟机,该主机的地址为www.something.com,但是我可以获取mypage.something.com吗?该服务器大约有10个虚拟机和一个DNS,我们的虚拟机可以是子域吗?

–伊凡·沃洛维奇(IvanVulović)
13年11月13日在13:54



根据本文,每个虚拟机必须具有自己的IP地址。如果是这样,那么可以,您可以通过将IP地址作为DNS A记录放入来为虚拟机分配子域。

–斯蒂芬·奥斯特米勒(Stephen Ostermiller)
13年11月13日14:54



#2 楼

PORT设置是托管服务器端设置,与DNS无关。将域或子域指向IP时,托管服务器将通过虚拟主机文件控制端口元素。

换句话说,只需将A记录放入IP地址,然后让虚拟主机文件控制服务器在哪个端口上运行。

#3 楼

您正在寻找具有端口转发功能的动态DNS(DDNS),并且大多数DDNS服务提供商也都提供端口转发功能。然后,您可以将您的domain something.something.com设置为111.11.11.111:8002

您可以获得具有DDNS支持的路由器,如果配置正确,则该子域将指向您的家庭路由器从那里您也可以重定向端口。