服务器如何找到局域网的某一个客户端?
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的主机的对应端口。
这就是为何外部服务总能把信息传送到对应的主机上。
所有的局域网内的网络应用程序都是由内网首先向一公网发送一信息开始的(不考虑局域网内主机的情况,那没意思)。至于为什么,这涉及到目前网络现状问题。
大家知道在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的主机的对应端口。
这就是为何外部服务总能把信息传送到对应的主机上。
相关文章推荐
- 如何在客户端避免繁冗的服务器GUID定义及导入?
- C#中如何获取服务器IP,名称,操作系统,客户端IP,名称!
- 在C#中服务端如何获取客户端的IP地址、端口号以及客户端和服务器连接的时间
- 如何统一局域网中服务器的时间
- 绝对酷,如何解决asp.net中javascript脚本的问题(使用服务器控件执行客户端脚本)
- 如何生成可从 COM 客户端调用的 .NET 服务器
- C#下如何实现服务器+客户端的聊天程序
- C#中如何获取服务器IP,名称,操作系统,客户端IP,名称!
- 求助:C/S模式下,如何从客户端将文件上传到domino服务器的某个目录下?(急!急!急!)
- 关于如何在windows环境下建立SFTP服务器和客户端
- 如何在客户端通过MSSQL执行某操作删除服务器的指定文件
- Domino服务器在局域网内如何收发邮件(配置自己的DOMINO服务器)?
- 如何在重装SAV10.1/SCS3.1服务器后继续管理原来的客户端
- C#下如何实现服务器+客户端的聊天程序
- ICE专题:在客户端中如何定位服务器(即如何寻找代理)
- c#如何检查局域网内服务器是否连通
- 如何获取局域网中的所有 SQL Server 服务器
- Domino服务器在局域网内如何收发邮件(配置自己的DOMINO服务器)?
- 客户端如何获取服务器控件的值(原理与实例)
- 局域网内如何检测某一台机器已经联网