如何确定一个局域网内的用户的IP?

http://zhidao.baidu.com/question/322220606.html
我们用QQ向一个处于局域网内的好友发送消息。这位好友通过一个宿舍的路由器和外网连接,那么他的IP是192.168开头的,我们在外界无法访问到。那么我们如何向其QQ发送消息呢,我们/QQ服务器如何确定他的IP呢?

你这个问题很简单。。不要去向QQ是怎么确认对方地址这么复杂的思考。
说白了,腾讯做即时聊天服务,那么他就会有个服务端,然后我们安装QQ,那这个就是客户端。然后我们使用QQ登陆,我们的QQ号码就是客户端标识,然后我们登陆进来后,这个客户端和服务端就建立通信。当然这个服务端的作用除了登陆外,还有就是能够将两个QQ号码的通信信息经过服务端进行通信,仅此而已。追问

我这里用QQ只是做个比方。我是想知道处于局域网内的用户如何确定其公网的IP。别人通过公网向局域网内的用户发送数据时,数据通过公网IP进入私网,进入私网后,数据又是如何标识我们要到达的那台机器?

追答

好吧。。打个比方。。比如你家有5口人,其中你爸爸向外打了个电话,说我需要购买东西,然后对方将东西送来,然后你爸爸收到东西。。
这个过程,你爸爸和你的家人可以看为内部机器,而你爸爸向外打的电话说购买东西可以看成对外的广域网,然后对方根据你爸爸留下的信息将东西送到你家交给你爸爸。整个动作完成。
转到路由上,你内部机器信息IP啊 MAC啊,缓存在路由表里,然后通过路由的NAT转到到对外广域网,然后外面信息进来再根据IP和MAC信息来确认哪些数据是谁的,如此而已。

追问

恩,我大概明白你说的了,但是还有疑惑,不太好表达。。。打个比方吧:
比如说A主动和B通信,B在局域网内。B除了要告诉A他的公网IP,还要告诉他什么信息它们才能开始正常的通信?难道还得告诉他内网IP和端口号吗?能不能和我说说什么时候将IP地址转换为MAC地址?

追答

1.将主机解释成IP地址。
2 目标IP,和路由表来确认下一跃点IP。
3 进入数据链路层,也就是通常说的MAC地址。
简单就这么几步而已,但网络协议是分多种的,比如 TCP,ICMP,UDP等等。。你说的IP就是属于TCP/IP

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-05-09
192.168是私网ip,在公网无法通信,它只能通过nat或者mip一个公网ip才可以出去,你和他通信,计算机不会知道他私网ip,他们只知道它map出去的公网ip。追问

处在局域网内的用户,如何查询到他连接到公网的IP?

追答

和他进行通信,如视频聊天或者传文件。
1. 然后你自己电脑用netstat -a 看看你自己与哪个ip连接,进行分析。、
2. 或者使用抓包工具,分析数据包。
3.如果你想知道自己的公网ip,自己上去123cha之类的网站,就有显示了。

其实,你是问题问错了,其实你应该是问你路由器或者防火墙的工作方式(也就是NAT或MIP之类的工作方式),这些你网上有资料查。其实防火墙什么的,有记录链路状态,就是一个请求发出去,该session回来就可以通过,不需要经过策略过滤。

追问

处于同一个局域网内的所有机子,其公网IP都一样吗?也就是说各机子用netstat -a查看到的IP是否是一样的?

追答

首先,我纠正以下,也许当前你和很多人一样,对“局域网”的理解有误,其实一个局域网可以包括很多路由器很多网段。当它没有和广域网连接的时候,都可以称之为“局域网”。
而我之所说的“广播域”和“局域网”是2个概念。具体你找找相关资料看看,一言难尽。
如果你当前的网络,通过一个IP去公网。那肯定对于外面的计算机来说,公网ip都是一样的。
但你在网内的计算机,用netstat 这命令,只看到和你通信的对端ip,而不是你网络出去的公网ip。

第2个回答  2012-05-10
用 netstat -n 可以查出对方ip

怎样知道一个局域网内所有电脑的ip地址呢?
首先192.168.1.0\/24,属于C类IP,私有C类地址范围从192.168.0.0 到 192.168.255.255,C类地址默认子网掩码为255.255.255.0。划分为四个子网,只能在主机位借2位,机2^2个子网,如下:1、起止IP地址192.168.1.0\/26和子网掩码255.255.255.192:192.168.1.0\/26即:11000000.10101000....

怎么查看局域网中其他电脑的IP地址?
如方法二中打开DOS命令提示符窗口,在窗口中输入命令“nbtstat -a IP”,如以上面查到的“10.10.3.21”为例,输入“nbtstat -a 10.10.3.21”,在查询结果窗口中,我们通过IP就查询到了确切的以下信息:计算机名称、此电脑加入的工作组或域名称、MAC地址。方法五 查看局域网内所有电脑的IP地址和...

如何确定电脑在一个局域网内?
方法一:直接查看ip段是不是一样的。方法二:根据范围判断一般情况下,同一个网吧或者同一个房间,属于一个局域网。方法三:根据所连设备一般情况下,电脑之间连得同一个路由器,或者同一个交换机,或者同一个集线器,那么他们同属于一个局域网。方法四:根据工作组打开电脑上的“网络”图标。如果在里...

如何判断两台电脑在同一个局域网内?
总的来说,判断两台电脑是否在同一个局域网内,主要依据是它们的IP地址是否处于同一个子网内,这可以通过比较IP地址和子网掩码来确定,也可以通过网络工具进行辅助判断。

怎么查看局域网内计算机的IP地址?
输入\\\\计算机名称或\\\\计算机IP地址,然后点击“确定”。如果知道局域网中某台计算机的名称或IP地址,可以直接通过这种方式访问。使用MS-DOS命令查看:打开命令提示符(CMD)。输入net view命令,可以查看局域网中所有共享资源的计算机列表。如果要查看特定计算机上的共享文件夹,可以使用net view \\\\计算机名称...

怎么样查看局域网内其他电脑的IP地址
方法一:1.在桌面右键点击“网上邻居”,选择“属性”进入网上邻居属性页面。2、选中“本地连接”选项,在窗口的左下方有详细信息,点击展开即可看到共享文件的IP地址。方法二:1、打开“开始”菜单,点击“运行”,在打开的对话框中输入“cmd”,进入cmd页面。2、在cmd模式下输入命令"NET SHARE",即可...

如何判断两台电脑在同一个局域网内?
例如,可以使用ping命令来测试两台电脑之间的网络连通性。如果两台电脑能够相互ping通,那么它们很可能在同一个局域网内。当然,这并非绝对,因为有时不同局域网间的电脑也可以通过VPN或其他技术实现ping通。但结合IP地址和子网掩码的判断,可以更为准确地确定两台电脑是否在同一个局域网内。

如何判断电脑在同一局域网内?
首先,要查看电脑的IP地址和子网掩码。在Windows系统中,可以通过打开“命令提示符”窗口,输入“ipconfig”命令来查看。IP地址是电脑在网络中的唯一标识,而子网掩码则用来划分网络地址和主机地址。如果两台电脑的IP地址在同一个网段内,那么这两台电脑就在同一局域网内。其次,可以...

怎么判断两台电脑是在一个局域网中?
IP地址是每台电脑在网络中的唯一标识,它由四个数字组成,通常用点分隔开,例如192.168.1.100。而网段则是指IP地址中前三个数字相同的所有地址的集合,例如192.168.1.X,其中X可以是0到255之间的任意数字。如果两台电脑的IP地址在同一网段内,就说明它们在同一个局域网中。2. 如何查看IP地址 在...

如何判断ip是否在同一个局域网内
看子网掩码,根据子网掩码划分出网络号和主机号。如果网络号相同,那就说明IP是在同一个局域网内。具体的就是前面三位相同,只有最后一个不同。(这只限于C类网络,现在大部分的局域网都是C类的)192.168.0.1 192.168.0.最后一位小于255,只要不重复,就都是同一个网络的。

相似回答
大家正在搜