当我在本地网络(子网?)上时,我希望转到sub1.myserver.com
并使其工作方式与转到相同192.168.1.99:1234
- 即目标是使用我公开用于该服务器的相同域名,同时获得例如 LAN 下载速度。
我的设置:
我在不同的端口上运行多个服务,例如:192.168.1.99:1234
在192.168.1.99:5678
我的 Debian Bookworm 服务器上。
我的 DNS(porkbun)有A
我的公共 IP ->(子)域名的记录。
我有一个 nginx 代理执行类似->和-> 的proxy_pass
操作。sub1.myserver.com
0.0.0.0:1234
sub2.myserver.com
0.0.0.0:5678
这很有效,我可以通过公开访问我的服务器sub1.myserver.com
。
当然,我也可以192.168.1.99:1234
直接通过 LAN 连接到同一个应用程序。
我如何才能实现对本地局域网连接重新使用同一个域名,如果不可能/不可取,下一个最佳解决方案是什么?
你有两个选择;
1 - 拆分 DNS 方案。您托管一个内部 DNS 服务器,该服务器将本地 IP 解析到使用该 DNS 服务器的计算机。公共 DNS 不会改变,但这会使本地区域与互联网上的区域重复。
2 - 一些商务级路由器可以实现反向 NAT 方案。路由器上的规则是,如果计算机从 LAN 转到指定的公共 IP,路由器会重写数据包以转到本地 LAN IP。即使用户尝试 ping dns 的名称,该方案对用户来说也更加透明。