我现在了解了私网使用nat对于公网的访问,但是还有一个问题,如果我需要从公网获取数据,那么我发送给公网的ip一定是公网ip,所以这个数据是如何从公网定位到我们的私网设备上的呢
是这样的,你pc是一个私网地址,访问一个公网地址时会在你的出口路由器上做源地址转换,这时候你的源地址由私网地址变成你出口路由器的公网地址了,所以你访问的这个公网地址回包时可以根据路由器的公网地址找到你的路由器,然后路由器上有你nat的记录,知道是哪个IP的哪个端口去访问的这个公网地址,所以又回把地址由你路由器的公网地址转回你的pc地址
1,在私网中做一个设备代理服务,通过TCP主动向公网服务端发起连接,连接上后,使用TCP长链接,两个服务就可以双向通信了
2,私网代理服务接入所有设备即可
MAC地址?
你可以看看IP协议,路由器/网关根据数据包中的IP地址来决定把数据包转发到哪个网络里,经过一系列路由器/网关转发,数据包最终到达目标IP的机器上。