端口转发不适用于仅连接同一 wifi 的设备

端口转发不适用于仅连接同一 wifi 的设备

所以我的桌面上运行着一个.NET 服务器。 https://192.168.0.xxx:7089/WeatherForecast

192.168.0.xxx 也是我的 ipv4 地址。

现在,我尝试从外部世界访问它。我对网络知之甚少,但我知道 192 是私有 IP 地址,因此不会暴露给互联网。所以现在的问题是,我如何从外部访问它?

这就是我配置端口转发的方式。隐藏的 IP 是运行 Web 服务器的计算机的动态 IPv4。

端口转发配置

我尝试访问https://192.168.0.xxx:8181/WeatherForecast但我不能。

所以我尝试了路由器的 IP 100.71.xx.xx,成功了!我能够从家里使用同一 wifi 的另一台设备(智能手机)访问 API。但是,一旦我关闭 wifi 并切换到蜂窝数据,它就会停止工作。

我刚刚快速查询了我的 IP,发现 IP 以 1.186.xxx 开头......然后试了一下。也没用。:/

答案1

现在,我正尝试从外部世界访问它。我对网络知之甚少,但我知道 192 是私有 IP 地址,因此不会暴露给互联网

更准确地说是 192.168.xx,而不是整个 192.xxx

(它是私有的,因为它在全球范围内没有任何意义,只在你自己的局域网内有意义——互联网的其余部分不知道在哪里是的,而且隐藏它也没有意义,因为该地址实际上没有任何识别信息。

我尝试访问https://192.168.0.xxx:8181/WeatherForecast但我不能。

再次强调,这永远不会适用于 192.168.x 地址,因为它是一个私有地址 - 存在数百万个使用相同私有地址范围的 LAN,因此外部网络不知道您的 192.168.0.xxx 应该在哪里找到。

(另一方面,这如何使用 IPv6 地址,因为这些地址通常是全局分配的。

“端口转发”最好命名为“地址转换”。使用端口转发时,您必须访问路由器的公共地址并将连接转换为指定的内部地址。

所以我尝试了路由器的 IP 100.71.xx.xx

这实际上是还有一个私人地址。它只在 ISP 的网络内有意义,但同样无法从 ISP 外部访问。100.64.xx – 100.127.xx 范围(又名 100.64.0.0/10)是中央国家机关事务管理局私有地址范围。

换句话说,您的 ISP 可能用完了公共 IPv4 地址,并且不再直接将其发布给用户;网站看到的地址(即通过“我的 IP 是什么”网站报告的地址)是临时分配的,在极端情况下甚至可能在多个客户之间共享。

您需要联系 ISP,看看他们是否可以为您提供专用的 IPv4 地址;如果不能,那么您进行入站 IPv4 访问的唯一可能性是通过第三方代理或 VPN 隧道(一些商业 VPN 提供此功能,有些人为此目的设置个人 VPN,还有纯粹用于 HTTP 的 Ngrok 等)。

如果两个 ISP(家庭和蜂窝)都支持 IPv6,则您可以通过 IPv6 进行连接(检查您的计算机是否具有全局 IPv6 地址)。

答案2

不过,还有一个问题。如果您的外部 IP 地址不是静态的,那么您从外部连接会很困难,您需要使用动态 DNS 服务。此外,如果您有多个路由器,您必须决定将设备连接到哪一个路由器,并相应地配置端口转发。理想情况下,您希望将设备连接到主路由器。

相关内容