我们都知道局域网上的PC使用私有IP地址,例如192.168.2.3,等。
现在我的问题是,PC 怎么能说我的私有地址192.168.2.3与其他具有私有地址的 LAN PC 通信,192.168.2.5因为并非每台 PC 都有公共地址。
为了更清楚,假设我想 ping 到具有 IP 地址的 PC 192.168.2.5。
那么我的 PC 或路由器如何知道它必须将消息发送到哪台 PC,因为可能有许多 PC 具有相同的私有 IP 地址192.168.2.5.
我们都知道局域网上的PC使用私有IP地址,例如192.168.2.3,等。
现在我的问题是,PC 怎么能说我的私有地址192.168.2.3与其他具有私有地址的 LAN PC 通信,192.168.2.5因为并非每台 PC 都有公共地址。
为了更清楚,假设我想 ping 到具有 IP 地址的 PC 192.168.2.5。
那么我的 PC 或路由器如何知道它必须将消息发送到哪台 PC,因为可能有许多 PC 具有相同的私有 IP 地址192.168.2.5.
无法从公共互联网访问私有IP 范围内的PC 。
连接到 Internet 的私有范围内的设备使用代理或路由器/NAT设备,该设备将本地源 IP 替换为在您的路由器/NAT 中重新放置的单个公共 IP 地址。
但是,您可以例外,在路由器中打开一个端口,并允许将流量定向到您的公共IP 地址和该特定端口(例如,80)通过路由器并最终到达您的 PC。
现在您的 PC 至少在端口上是公开的80。Internet 知道如何使用公共地址访问您的 PC ,路由器将该公共IP 转换为您的设备使用的私有IP 。
一个例子:
您的 PC 具有私有IP 地址192.168.2.3并连接到具有公共IP的 Internet 路由器54.239.25.200。
现在,如果您打开80路由器中的端口,那么公共互联网中的任何人都可以使用 URL http://54.239.25.200:80连接到您的 PC
公共互联网不知道您的私有 IP,他们知道您的公共IP 地址。
如果您真的想使用私有 IP 地址与远程 PC/网络、ping 等完全通信,则跨公共 Internet,您将需要一个隧道,通常是 VPN 连接。
正如您指出的原因,互联网不会路由私有 IP 地址。因此,您需要隐藏 = 将私有 IP 数据包封装在公共 IP 数据包中。在发送方的数据包被封装,在接收方的原始数据包被提取并路由到目的地。
我认为最好的方法是像Zac67所说的那样创建一个 VPN ,但是你的问题有点笼统,所以如果没有涉及设备的拓扑,就很难回答。基本上,您需要为每个主机配置一个公共对等点,因此您将拥有一个私有 ip 和一个公共对等点,这将是互联网上的面孔。此外,这将是一种更安全的方式,因为所有流量都将被加密。不建议在路由器上打开像 http/80 这样的端口并通过 inet 访问它。
这称为静态路由。以下是它如何工作的示例:
“我的私人地址为 192.168.2.3”
“其他局域网 PC 的私有地址为 192.168.2.5”
协议[静态[路由192.168.2.0/24[下一跳192.168.2.2[]]]]