如图,假设你是HostD内网的一台机器,路由器Remote3是网关。当你进行访问Server0时,你的目的地址是Server0的ip地址,源mac是HostD的而目的MAC是路由器Remote3的。当经过Remote3后,进行NAT转换公网地址,进行公网访问(这里只是简化的网络)这时候你的源mac就是路由器Remote3的了目的MAC是Corp的。当到达Corp时候,源mac就是Corp的,目的是Server0的MAC。而目的MAC则是你下一跳的MAC,源mac是当前数据包所在路由器的。而IP地址是不会变化的,在数据包源地址是你的公网地址即路由器Remote3的公网地址,而目的IP则是Server0的。
路由器Remote3是如何识别这个数据包到底是那个内网地址?
通过端口号返回给内网机器的,内网客户端通过相应的应用识别数据包。