Lar*_*rry 34 networking router dns routing home-networking
我有一个域(例如example.com)、静态 IP 地址(例如212.5.5.5)和本地设备,位于192.168.0.1:80, 192.168.0.2:80, 192.168.0.3:80, 192.168.0.4:80, 192.168.0.4:47(这不是网站)。
如何访问使用子域名,这些设备(例如device1.example.com,device2.example.com等)?
目前我只能得到example.com:80和example.com:47工作,它指向192.168.0.4:80和192.168.0.4:47。
我知道您无法在 DNS 服务器上设置端口。
我应该如何克服我的问题?
Dan*_*iel 69
您可以让一台面向公众的服务器运行 nginx 反向代理,根据子域将流量重定向到正确的服务器。
“主”服务器上的 nginx 配置:
server {
server_name device1.example.com;
location / {
proxy_pass http://192.168.0.1:80;
}
}
server {
server_name device2.example.com;
location / {
proxy_pass http://192.168.0.2:80;
}
}
server {
server_name device3.example.com;
location / {
proxy_pass http://192.168.0.3:80;
}
}
Run Code Online (Sandbox Code Playgroud)
除了其中一个之外,您需要为所有其他端口使用备用端口。例如,212.5.5.5:80 会转发到 192.168.0.1:80,但是 212.5.5.5:81 会转发到 192.168.0.2:80,而 212.5.5.5:82 会转发到 192.168,3,以此类推。在。这应该可以在大多数现代 NAT 设备上进行配置。
另一种方法,如果您愿意使用 IPv6,只需在您的 NAT 设备或路由器上打开 IPv6 直通。这基本上将 LAN 上的每个 IPv6 地址暴露给公共互联网,让您可以直接从外部访问它们。正如您可能想象的那样,这存在一些风险。由您决定该风险是否可以承受。
| 归档时间: |
|
| 查看次数: |
7182 次 |
| 最近记录: |