【问题标题】:Is IPv4 used only for local networks or can be used for networking through internet?IPv4 仅用于本地网络还是可用于通过 Internet 联网?
【发布时间】:2018-08-30 17:39:57
【问题描述】:

我正在尝试通过 Internet 建立 TCP 连接。我使用我的 IPv4 地址作为服务器地址,当我使用本地网络上的机器连接到它时它可以工作。

但是,当我尝试使用不在本地网络上的机器连接到它时,它会失败。

出现问题是因为我使用的是 IPv4 地址还是其他原因?

【问题讨论】:

  • 您尝试连接的 IP 是否位于 Private IPv4 address spaces 之一中?
  • @grooveplex 我不知道如何检查。我用于服务器的 IP(所以每个人都试图连接的那个)是我在命令提示符处写入时看到标记为 IPv4 的 IP:ipconfig /all

标签: networking tcp ipv4


【解决方案1】:

不完全是。您需要使用 IP 地址。 IPv4 或 v6 或两者兼而有之。但在您的情况下,您使用的是 IPv4,这在这里不是问题。

您的问题在于两件事:NATing 和路由。可以是两者,也可以是其中任何一个。

通常您使用的是私有 IP 地址。要检查此问题,请使用 ifconfig 或 ipconfig(在 Windows 上)并查看您拥有的 IP。如果它在私有 IP 范围内(10.0.0.1 到 10.0.0.254 或 172.16.0.1 到 172.31.255.254 或 192.168.0.1 到 192.168.255.254),那么您需要我们所说的 NAT。 这些地址在 Internet 上是不可路由的。因此,您的路由器应自动将其 NAT 到您直接付费或由您的 ISP 提供的公共 IP。如果不这样做,你就不能“走出去”。

在路由部分,您需要检查您的默认网关。 如果您在 Window 机器上发出 ipconfig /all,您应该会看到路由器(ISP 之一)或云提供商等的 IP 地址。

【讨论】:

  • 您好,感谢您的回答。事实上,我的 IPv4 在 Ranger [192.168.0.1, 192.168.255.254] 中。我检查了我的默认网关号码,它也在那个范围内,我不知道这意味着什么。当我在谷歌上搜索“我的 ip 是什么”时,它会向我显示其他内容(看起来像 IPv6),并说这是我的公共 ip。我应该使用它作为我的套接字 IPAddress 吗?
  • 很好,现在看来您将流量路由到默认网关没有任何问题。你也没有公共IP。您的默认网关是什么,什么品牌或型号?你可以通过控制台或webgui连接到它吗?
  • 是的,我可以连接到控制台
  • 您的信息对我帮助很大,谢谢。在互联网上搜索这个问题以及什么是 NAT,我认为 NAT 应该是问题所在。然而,这产生了一些关于穿透的其他问题:主服务器是为了进行穿透而必须拥有的重要东西,还是我的电脑可以以某种方式扮演主服务器的角色,例如通过为其分配一个公共 ip?
  • 不客气。我只是不确定什么是主服务器,什么是穿透,所以对此无能为力
猜你喜欢
  • 1970-01-01
  • 2019-06-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-08-13
  • 1970-01-01
  • 1970-01-01
  • 2014-02-25
相关资源
最近更新 更多