Ste*_*fan 4 networking router dns
我有一个 SSH 服务器在我的本地网络上运行,它通过我的路由器的端口转发暴露给公共互联网。我还在我的机器上本地(通过etc/hosts)和远程(通过动态 DNS)为主机设置了一个名称,让我们说:
ip name
locally 192.168.0.5 myhost
remotely 11.22.33.44 myhost.example.com
Run Code Online (Sandbox Code Playgroud)
在我的本地网络内,我可以通过ssh 192.168.0.5/访问服务器,ssh myhost而从我的网络外部我可以通过ssh 11.22.33.44/访问它ssh myhost.example.com。
到那时,一切正常。但是,为同一服务器使用两个不同的主机名有点麻烦。我想以统一的方式访问服务器,即只使用一个在本地和远程都可以使用的 IP/主机名。
这个问题有简单的解决方案吗?如果这很重要,我在 macOS 上。
顺便说一句:我无法使用其公共 IP 从本地网络访问我的路由器。
小智 8
由于您设置了动态 DNS,您无需更改 /etc/hosts 文件。
对于外部访问,您将使用 DNS 进行主机到 IP 的解析,并且您希望本地网络也使用 DNS。
大多数路由器确实支持 DNS 注入。您需要检查您的路由器配置并分配 192.168.0.5 IP 地址以对应相同的动态 DNS 主机名,就好像它来自外部网络一样。然后当你在内部网络中,并使用你的路由器作为 DNS 服务器时,路由器会将 myhost.example.com 解析为本地地址。当你出去尝试外部访问时,动态 DNS 将轮流解析到外部 IP。
如果您在设置路由器时遇到问题,请发布品牌和型号,以便我们查看它是否支持所需的设置。