【问题标题】:Accessing mac localhost from an iPhone (iOS 10)从 iPhone (iOS 10) 访问 mac localhost
【发布时间】:2017-11-12 07:09:58
【问题描述】:

我已经尝试了 Stack Overflow 对此主题的所有现有答案,但它们对我不起作用。我尝试在 Squidman 中使用 http 代理,在我的 iPhone 和我的 mac 之间使用静态 IP 创建本地网络,然后使用我的机器 IP 地址访问它。我也试过用我的 Windows 电脑 ping 我的 mac,它无法 ping 到我的 mac,但我的 Mac 可以 ping 我的 Windows,两个防火墙都被禁用了。

我错过了什么配置?

【问题讨论】:

  • 您能否详细说明您是想通过 ssh 进入 Mac 还是通过 http 或其他机制访问?问题不清楚。
  • 如果您使用 NGROK (ngrok.com/download) 通过 http 进行评估,您可以创建隧道
  • @Sairam 我只想通过 http 访问它。
  • @OluwafemiSule 我试过 localtunnel,但加载速度太慢。 NGROK 和 localtunnel 不是有相同的目的和机制吗?
  • ngrok 和 localtunnel 是一样的。 ngrok 是用 Go 编写的,而 localtunnel 是用 python 编写的。他们都使用互联网/外部服务器来隧道和反向代理请求。

标签: ios windows macos networking firewall


【解决方案1】:

如果您的桌面是 (192.168.0.101),您需要以 0.0.0.0:8080(示例端口)运行您的服务。通常端口绑定到127.0.0.1

这样,您的路由器可以将来自 192.168.0.101:8080 的请求定向到您的应用程序。确保您撤消此操作,以防您泄露敏感数据。

【讨论】:

  • 问题解决了哥们,谢谢你的建议。
【解决方案2】:

假设您的 mac ip 是 $ip,您可以执行以下操作以使端口 $port 可从您的本地网络访问:

$ ssh -R $ip:$port:localhost:$port localhost

它将所有来自$ip:$port的请求中继到本地主机服务器。

例子:

$ ssh -R 172.16.0.111:3000:localhost:3000 localhost

【讨论】:

  • 我找到了主要问题,尽管防火墙已禁用,但我的 mac (osx) 阻止了来自其他设备的任何 ping。你知道是什么导致了这个问题吗?
  • 理论上你的路由器可以阻止 pings
  • 问题解决了哥们,谢谢你的建议。
【解决方案3】:

(代表 OP 发布)

导致我的 Mac 无法被其他设备访问的主要问题是防火墙阻止了 ICMP。然后我使用以下命令禁用它:

pfctl -d

我的防火墙规则列表:

【讨论】:

    猜你喜欢
    • 2013-02-14
    • 2011-02-10
    • 1970-01-01
    • 1970-01-01
    • 2016-09-11
    • 1970-01-01
    • 2011-08-05
    • 1970-01-01
    • 2018-10-28
    相关资源
    最近更新 更多