从外部访问 LAN IP 地址

从外部访问 LAN IP 地址

我有一台连接到办公室 LAN 的 SCM 服务器,该服务器运行 git、svn 等 SCM 工具。办公室路由器已配置“端口转发”,以便可以从家里、外面等通过公共(外部)IP 访问 SCM 服务器。在办公室时,我可以使用本地 IP 地址访问 SCM 服务器。但在家时,我需要使用端口转发 IP 来访问 SCM 服务器。

我觉得处理两个 IP 地址很麻烦。现在,有没有办法无论我身在何处,都只需使用一个 IP 地址即可无缝访问 SCM 服务器?

答案1

如果路由器支持发夹式 NAT,那么是的,只需从各处使用公共 IP。

如果不是,那就不行。从外部,您必须使用内部 IP 才能从外部进入内部。从内部,您不能使用外部 IP,因为它仅在外部有效。因此,没有一个 IP 可以在任何地方使用。

答案2

您的 /etc/hosts 文件可以包含名称和 IP 对。

因此,添加:

myscm internal.i.p.address
myscm external.i.p.address

在您的 /etc/hosts 文件中,然后当您尝试通过名称 (myscm) 进行解析时,它将自动解析。但是,这是作弊行为,可能有更好的方法来跨网络保留 DNS 地址。

答案3

这可能是因为办公网络内部和外部将使用不同的 DNS 服务器。如果您将办公网络内部的 DNS 服务器配置为提供内部 IP 地址,将外部 DNS 服务器配置为提供外部 IP 地址,那么理论上您的笔记本电脑应该能够从办公网络内部和外部无缝使用 SCM 服务器的 DNS 名称。

警告:我不确定以这种方式重载 DNS 名称是否会引起某种冲突。

相关内容