![通过动态ip访问SVN仓库](https://linux22.com/image/1263545/%E9%80%9A%E8%BF%87%E5%8A%A8%E6%80%81ip%E8%AE%BF%E9%97%AESVN%E4%BB%93%E5%BA%93.png)
我们办公室有一个局域网,我们在一台电脑上创建了一个 svn 存储库,我们通过 URL svn://10.0.0.5 访问该存储库,其中 1.0.0.5 是该电脑的 IP 地址。现在我想通过互联网访问这个存储库。那么我的 URL 是什么呢?因为我们通过 ISP 获得动态 IP 地址。所有电脑都在路由器后面,那么如何访问它呢?
答案1
按照其他人的建议,将服务器穿过防火墙,然后使用 dyndns 等服务在动态 IP 地址发生变化时更新 DNS 记录。然后,您就可以始终从 DNS 条目引用该机器。
因此,您使用 dyndns 设置 svn.yourcompanyname.org,在您的 svn 服务器上安装他们的应用程序,这样它就会使用其当前的外部 ip 地址更新 dyndns,然后您始终通过连接到 svn.yourcompanyname.org 来引用您的 svn 存储库
答案2
简短的回答是:你不能。
更长的答案是,要可靠地访问您的存储库,您首先需要从提供商处获得一个静态 IP 地址。获得静态 IP 后,您需要配置路由器和防火墙,将流量转发到该 IP,该 IP 的目的地是您已设置 SVN 的端口,以转发到您的 SVN 服务器。
答案3
您需要某种形式的稳定名称。动态域名系统或者其他提供动态 DNS 的服务器之一就足够了。不过,Rup 当然是对的:您不能在办公室网络之外使用 10.0.0.5,因为它是不可路由的地址。您的防火墙需要进行端口转发,然后您需要将客户端指向防火墙。
只需注意在防火墙上打开漏洞会带来明显的安全问题,确保 svn 服务器位于 DMZ 中(如果您目前没有 DMZ,那么请放弃这个想法或让网络管理员创建一个 - 如果他们真的考虑将端口转发到您的常规网络办公室,请找一位新的网络管理员)。
现在,如果您真正想要实现的是让您自己的开发人员从家里或从他们的笔记本电脑进行访问,那么 VPN 就是您应该做的。