Windows配置DNS解析临时域名

Windows Server 自带 DNS 服务(推荐,局域网统一域名,所有人不用改 hosts)

搭建内网 DNS,全局域网电脑 DNS 填192.168.1.66,直接访问 http://hub.local:5005,所有网段自动解析,一台服务器统一管理。

步骤 1:安装 DNS 服务器角色

  1. 打开【服务器管理器】→【添加角色和功能】
  2. 一路下一步,勾选 DNS 服务器 → 添加所需功能,完成安装(无需重启)

步骤 2:创建内网域名解析

(1)打开 DNS 管理器控制台

  1. 看截图右上角,点击 工具 (T) 下拉按钮
  2. 在弹出的工具列表里,找到并点击 DNS,打开独立 DNS 管理器窗口

(2)创建内网域名区域(hub.local)

  1. 新打开的 DNS 管理器左侧树结构: WIN-RN52RIM866A(你的服务器名)→ 正向查找区域
  2. 右键【正向查找区域】→ 新建区域
  3. 新建区域向导操作:
    1. 区域类型:主要区域 → 下一步
    2. 区域名称:输入 local → 下一步
    3. 创建区域文件:默认文件名,直接下一步
    4. 动态更新:选择 不允许动态更新(内网静态域名不需要)→ 完成

(3)添加 A 记录(hub.local 指向 192.168.1.66)

  1. 展开刚创建的 local 区域,右键 → 新建主机 (A 或 AAAA)
  2. 名称:hub
  3. IPv4 地址:192.168.1.66
  4. 勾选「创建相关的指针 (PTR) 记录」→ 点击添加主机

遇到提示:

解决办法:忽略

(4)局域网客户端配置 DNS

所有跨网段电脑,网卡 IPv4 首选 DNS 服务器填写:192.168.1.66 验证命令(CMD):

复制代码
nslookup hub.local

能解析出192.168.1.66即代表 DNS 配置完成,浏览器直接访问 https://hub.local

nslookup hub.local 192.168.1.66

开放后端项目端口

复制代码
netsh advfirewall firewall add rule name="Flask5005" dir=in action=allow protocol=TCP localport=5005 profile=private,domain enable=yes

步骤 3:局域网所有电脑设置 DNS

所有跨网段电脑,网卡 IPv4 DNS 首选填:192.168.1.66 验证:nslookup hub.local 解析出服务器 IP。

进阶优化(不带端口访问,http://hub.local

服务器安装 Nginx 反向代理,80 端口转发 5005,访问不用带:5005,文末附 Nginx 配置。

优缺点

✅ 全局域网统一域名,所有电脑无需手动改 hosts,跨网段完美解析 ❌ 需要在所有客户端网卡修改 DNS 地址


Nginx 反向代理(最优,不带端口访问域名 http://hub.local

解决痛点:不想每次输入:5005,直接域名访问,同时配合方案二 DNS 实现全网统一解析。

1. Windows Nginx 下载

官网下载 Windows 版 Nginx,解压到 D:\nginx

2. 修改 conf/nginx.conf 配置

复制代码
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;

    server {
        listen       80;
        server_name  hub.local;

        # 反向代理到你的Flask 5005端口
        location / {
            proxy_pass http://127.0.0.1:5005;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
    }
}

3. 放行 80 端口防火墙

复制代码
netsh advfirewall firewall add rule name="Nginx80" dir=in action=allow protocol=TCP localport=80 profile=private enable=yes

4. 启动 Nginx

CMD 进入 nginx 目录执行:

复制代码
nginx.exe

停止命令:nginx.exe -s stop

最终访问地址

  • 配 DNS:http://hub.local
  • 不配 DNS 仅 hosts:http://hub.local

测试域名解析(已验证正常)

复制代码
nslookup hub.local 192.168.1.66

访问域名解析

三种方案选择建议

  1. 临时测试、仅 2-3 台电脑 → 方案一(hosts)最快
  2. 公司多人、长期局域网使用 → 系统 DNS+ Nginx80 端口,直接域名不带端口访问
  3. 不想改客户端 DNS、电脑数量少 → 只用方案一 hosts

常见跨网段排查问题

  1. ping 不通192.168.1.66:路由器缺少跨网段静态路由,联系网管配置
  2. 域名 ping 通但浏览器打不开:防火墙 5005/80 端口未放行
  3. Flask 只能本机访问:启动参数host=0.0.0.0未配置
  4. DNS 解析失败:客户端 DNS 未指向 Windows Server 的192.168.1.66