最近,我在www.active-domain.com上购买了一个域名 我将它用于我的家庭网络,所以我们谈论的是NAT和动态IP。 由于我的IP是动态的,我无法创建使用自己的DNS服务器的委派。 active-domain充当DNS服务器,因此我只能创建:A,CNAME,URL重定向,URL帧和TXT记录。
那就是说,这是我的问题:因为我支持NAT,是否有可能在同一个IP后面创建多个主机?
示例:
我希望srv1.mydomain.com指向我网络中的192.168.0.101。
我希望srv2.mydomain.com在我的网络中指向192.168.0.102
但是从外部来看,都指向(例子)74.0.0.1
简而言之:
srv1.mydomain.com - > 74.0.0.1 - > 192.168.0.101
srv2.mydomain.com - > 74.0.0.1 - > 192.168.0.102
感谢。
答案 0 :(得分:0)
在任何情况下,yourhost.example.com
和anotherhost.example.net
的外部DNS都会指向防火墙的外部地址(此处为IN A 74.0.0.1
),或指向防火墙的主机名(例如IN CNAME yourfirewall.example.org.
)
但请注意,DNS(域名到IP地址解析)与连接处理和路由分开进行。这意味着什么:
某些协议(例如HTTP)可能使用数据包的数据部分中的主机名(使用HTTP,它是Host:
标头),但不是每个协议都这样做。这些是可能性:
如果您有两台服务器将在不同的端口上运行 ,这不是一个真正的问题:我引荐您转到Q&A on port forwarding on SuperUser。
如果您需要在同一端口上运行两台服务器 ,这将变得很困难,即使不是不可能:也可能反向代理流量(并将数据分开一个)来自另一个数据的服务器);如果有问题的协议没有这样做(例如SMTP或SSH),那么你就是SOL。
74.0.0.1
)上运行某种反向代理。使用Apache,最简单的配置可能看起来像这样: <VirtualHost *:80>
ServerName yourhost.example.com
ProxyPass / http://192.168.0.101/
ProxyPassReverse / http://192.168.0.101/
</VirtualHost>
<VirtualHost *:80>
ServerName anotherhost.example.net
ProxyPass / http://192.168.0.102/
ProxyPassReverse / http://192.168.0.102/
</VirtualHost>