example.org
我在公司中使用我的域名。我可以用www.example.org
它查看我的网站。如果我http://example.org
从公司外部尝试,则没有问题,但如果我从公司内部尝试,我的 Windows DNS 服务器会提供域控制器的 IP。
我该如何解决这个问题?我可以阻止我的 DCexample.org
在我的 DNS 中注册吗?这会对我的环境造成问题吗?
答案1
如果您已命名 Active Directory example.org
,则无法阻止这种情况。您违反了 Microsoft 命名 AD 的最佳实践,并且看到了其中一个症状。
您有以下几种选择:
迁移到正确命名的 AD。例如
corp.example.org
。在每个 DC 上安装一个 Web 服务器,并将其配置为将 Web 请求转发到
example.org
。www.example.org
这很不道德,不应该这样做,但无论如何这仍是一种选择。培训您的用户进行
www.example.org
内部操作。
我曾多次在博客中介绍 AD 命名最佳实践,并链接到 Microsoft 官方资源。您应该阅读它们:
- http://web.archive.org/web/20200214122247/http://www.mdmarra.com/2013/04/best-practices-for-configuring-new.html
- http://web.archive.org/web/20191201074255/www.mdmarra.com/2012/11/why-you-shouldnt-use-local-in-your.html
- http://web.archive.org/web/20200122002118/www.mdmarra.com/2013/07/more-documentation-from-microsoft-about.html
如果你想要简短版本:
不要创建与外部 DNS 名称同名的新 Active Directory 林。例如,如果您的 Internet DNS URL 是 http://contoso.com,您必须为内部林选择不同的名称,以避免将来出现兼容性问题。该名称应唯一且不太可能用于 Web 流量。例如:corp.contoso.com。
-http://technet.microsoft.com/en-us/library/jj574166.aspx
答案2
如果您在 DC 上运行 Exchange,请不要设置 PortProxy - 这可能不言而喻,但它会破坏端口 80 上托管的 Exchange 服务。
我知道这篇文章已经很老了,但你仍然可以在不安装 IIS 的情况下在 DC 上执行此操作。在每个 DC 上运行以下命令将 portproxy 端口 80 连接到外部 Web 服务器。
netsh interface portproxy add v4tov4 listenport=80 listenaddress={Static IP v4 address of DC) connectport=80 connectaddress={IP Address of public Web Server}
答案3
因此,我不知道是否有人遇到了这个问题,但解决这个问题的最佳方法可能就是获取具有不同后缀的辅助域,特别是如果您由于 Exchange 在 DC 上而无法使用 PortProxy(或者由于您的网络主机的主机头问题)。
例如:如果内部 AD 域是EXAMPLE.com- 那么您只需购买示例.NET供内部使用。
这是内部网络访问最便宜、最简单的解决方法。
这对我们很有帮助。
答案4
您可以在 DNS 设置中创建新的主机(A 或 AAAA),并将网站的 IP 设置为它。例如,在内部网络中,通过 www2.example.org 地址访问网站,而不是www.example.org。