我在我的 Mac 上使用 VPN 访问互联网。
当我尝试通过命令行从 github.com git clone 一个 repo 时,我收到以下错误:
ssh: connect to host github.com port 22: Operation timed out
fatal: Could not read from remote repository.
连接超时。
我认为这是 VPN 问题,因此我禁用了 VPN 并重试。这一次,我能够 git clone 存储库。
我也试过在VPN环境下通过GitHub.app git clone repo。(GitHub.app是Mac用户可以轻松使用GitHub的应用程序,下载地址在这里:https://mac.github.com/)这次,我能够也可以 git 克隆 repo 协议(protocol)。
这是我的问题:
- VPN 是问题的根本原因吗?如果是 VPN 阻止了我来自命令行的 git 请求,为什么它没有阻止来自 GitHub.app 的 git 请求?
- 如果 VPN 是根本原因,为什么?
我在 Stack Overflow 中搜索过类似的问题。 这是我发现的:
然而,这个问题的答案只是建议“通过你的以太网(我假设)接口(interface)而不是通过 VPN 将流量路由回 github”。我相信这会起作用,但我仍然不知道为什么 VPN 可能会导致这个问题。此外,GitHub.app 为什么在 VPN 环境下工作是一个谜。
我们将不胜感激您提供的任何帮助。
谢谢。
最佳答案
对我来说 - 每当我使用 OS X 内置的 VPN 连接到 VPN 时,我的所有互联网流量都会断开连接。
OS X 的内置 VPN 允许您通过 VPN 连接路由整个网络流量(VPN 配置选项选项卡中的复选框)。
首先 - 确保此复选框处于关闭状态。
下一步 - 切换到 TCP/IP 选项卡并切换到手动 IP 配置: - 定义您的 IP 和路由器(从自动状态复制) 定义一个子网掩码,它将仅将指定的子网流量转移到 VPN - 通常为 255.0.0.0 如果您的 VPN 子网和您的 LAN 位于不同的子网(例如 10.x.x.x 和 192.168.x.x),这应该可以正常工作
这解决了我的问题。希望这会有所帮助。
关于macos - VPN 阻止 Git 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25860264/