我有一台 Windows Server 2012 R2 机器,名为[mine-1234]
。
我安装了 IIS 8.5,并且防火墙上的 80 和 443 端口存在漏洞。
我已经创建了 2 个测试站点
- 一个具有默认绑定的
:80
:80
一个包含两个与主机标头的绑定。[foo.mine-1234]
和[foo.mine.local]
我配置了主机文件以解析和mine.local
本地引用站点,并解析正常。我遇到的问题是当我尝试在 LAN 上使用外部绑定时。foo.mine.local
127.0.0.1
来自本地主机的请求
http://mine.local/index.html
在浏览器中加载http://foo.mine.local/index.html
在浏览器中加载。
来自 LAN 客户端的请求
http://mine-1234/index.html
在浏览器中加载。http://foo.mine-1234/index.html
无法在浏览器中加载。
但是,对于我的 LAN 上位于我的机器之外的其他呼叫者,主机头无法解析。
3 个问题(第 2 和第 3 个问题取决于第 1 个问题的答案)
- 无需修改 DNS就可以
foo
在我的 LAN 上使用吗? [if: 1=yes]
什么是正确的绑定,才能foo
使mine-1234
我的 LAN 无需修改 DNS 即可访问它?[if: 1=no]
foo
修改 DNS 以使其可供我的 LAN 使用的最直接的方法是什么?
答案1
艾伦·贝茨,
一般来说,是的,您需要修改您的 DNS,以便网络中的其他 LAN 客户端知道如何访问该网站。
一个简单的思考方式是,您在 IIS 中创建的设置会告诉 Web 服务器您的网站要响应哪个 IP 地址和主机名。它不会告诉其他 LAN 客户端如何访问您的网站。
LAN 客户端将主机名发送到 DNS 服务器,DNS 服务器将主机名解析为 IP 地址(要使其正常工作,您需要 A 记录),然后 LAN 客户端将请求发送到该 IP 地址(您的 Web 服务器),该服务器检查请求的主机名,如果与 IIS 中的设置匹配,则显示网站。
因此,您有两个部分。
我该如何回应(IIS 设置)
如何访问该网站(DNS 记录)
最佳做法是为每个网站设置一个静态 IP 地址,并将每个网站的 IIS 绑定设置为其对应的静态 IP 地址。然后在 DNS 服务器上添加 DNS A 和 PTR 记录,以便您的 LAN 客户端知道如何访问您的网站。
如果您还有其他问题,请告诉我。