您的位置:首页 > 理论基础 > 计算机网络

服务器如何找到局域网的某一个客户端?

2016-12-09 17:28 120 查看
信息怎么正确传送到局域网的主机上的。

所有的局域网内的网络应用程序都是由内网首先向一公网发送一信息开始的(不考虑局域网内主机的情况,那没意思)。至于为什么,这涉及到目前网络现状问题。

大家知道在Internet IPV4协议中一台主机拥有一全球唯一的IP用于网上通信。而电脑及网络的普及,使得这些唯一的IP不足以分配,这就使得新的协议IPV6的出现,但仍不足以解决问题。

而局域网的出现恰是为了解决这一问题,使得一局域网内的大量用户仅靠少量(至少一个)全球唯一的IP就可以实现网上通信。

网关负责管理这一切。网关处维护一张内网用户与外网IP连接所用到的IP 映射。

大家知道Ip一般是以192.  .  .  等开头的。如局域网的全球唯一IP为126.126.126.126

内网一主机一程序发一包对应内网IP为 192.192.192.192(Port 5555)  到外网的一Ip 设为125.125.125.125 (Port 8888)

则网关会接收此主机的数据包并转发给125.125.125.125(5555) 但会对数据包的IP头做一些加工

如 ,替换原内网Ip(192.192.192.192) 和Potr(5555) 改为外网IP(126.126.126.126)和Port(随机分配设为1250) .

网关会将这次包对应内网 IP Port 和使用的外网端口(5555)以及外网Ip(125.125.125.125 5555)之间的映射作为一条信息记录下来。

这样对于所有接收内网用户包的服务端(125.125.125.125 8888),并不知道接收到的主机在内网的Ip信息,而只知道是来自126.126.126.126 (5555),并将所需要回送的包发给126.126.126.126 (5555)。 网关根据记录的映射把包传给映射中记录的对应IP的主机的对应端口。

这就是为何外部服务总能把信息传送到对应的主机上。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息