如何才能给局域网处的计算机发送信息呢?(100分)

  • 主题发起人 主题发起人 littergirl
  • 开始时间 开始时间
L

littergirl

Unregistered / Unconfirmed
GUEST, unregistred user!
怎么才可以控制局域网处部的计算机呢?
我现在有一个被控程序,可是只能在局域网内部使用。
oicq为什么可以给不同的局域网内的计算机发送信息呢?有人知道是怎么回事吗?
 
OICQ使用的是udp协议,
 
udp协议怎么了呢,也要靠对方的ip发送信息呀。可能
你现在用的计算机的ip和对方的ip是一样的。
我知道一定不会是一样的,可是怎么才可以确定对方或是自己真实的ip呢?
 
其实处在局域网内通过代理服务器出去的机子在互联网上的标识为:
IP地址:代理服务器IP
端口:在代理服务器上为其建立的端口,该端口是不定的,当局域网内的机子第一次发数据包
出去的时候,代理就会建立一个端口,只要你不再有数据包到达,你的对外端口还是表现
为这个端口,但当你又有一个数据包要通过代理出去的时候,代理就会重新为你建立一个
端口,原来那个端口就丢掉了
 
那怎么才可以在不同的局域网发送信息呢?
 
那我怎么才能知道本机本次发送的数据包在代理服务器上的那个端口呢?
 
OICQ刚打开时必须登录其中的一个服务器,你一登录到服务器上你的资料就会被记录在服务器
的数据库中了,比如:IP地址和端口号,当你的好友上线时,服务端的程序就会把你的IP地址
和端口号告诉他,同时将他的IP地址和端口号记录到数据库中并且顺便告诉你,这样你就知道
对方的IP地址和端口号了,OICQ使用的是UDP协议,在知道双方IP和端口号的情况下,UDP是不
需要通过服务器就可以通讯的。
我用Delphi的TNMUDP写了个局域网聊天工具『网聊 - NetChat』(可以到我的主页http://ph11.126.com下载),
我试过在Internet上也可以使用(我在福建,同一个在黑龙江的朋友试过成功),前提是要先知道对方的IP(因
为我没有考虑端口号,所以如果有一方是共享上网的话就收不到信息,不过在局域网内就不存在共享上网了)
[网聊 - NetChat 不开放源码]
 
在不同的局域网内都是通过代理上网的机子想通讯的话,我想只能在两者之间有一个中间服务器才
行,就像QQ服务器一样,是负责登记两个通讯端的IP和端口的,否则你们两台机不可能互相通讯
,除非是其中有一台机子有固定的真正IP,那其中一台在局域网内的机子可以在登陆的时候先向
这台机子发数据包,让有真正IP的机子取得代理为其建立的端口才可以互相进行通讯(这是用
UDP的情况下)
 
用端口隐射,而且只能用UDP才能达到目的....
 
我想知道是怎么取到对方的真实IP的。有谁可以做一个例子给我呢?
delphiwork@chinaren.com
 
你知道他服务器的IP,就好办了
 
然后让他向你的服务器的为你虚拟的端口发数据包,你就可以收到收到数据
 
还是不明白。编个例子发给我。
delphiwork@chinaren.com
 
我很笨的,我现在不会,也听不太懂你所说的,太深了,
你能不能给我发个例子来呢>/
十分感谢你,好吗?
delphiwork@chinaren.com
 
原理就是双方都绑定一个接受端口..........
 
我这里有一个能在局域网发信息的程序,可能不太好,但很实用。
 
to llbb
我要你的源程序,
wc_wyd@sohu.com
 
to wc:
我给你的这个邮箱wc_wyd@sohu.com 发送过了,但是,没有能发送成功。
你给另外一个邮箱吧。最好是163的。
 
to llbb
再给你两个邮箱:
yy_wyd@163.net
wc_wyd@cnuninet.com
谢谢你了。
 
顺便问一下,如果知道有一个固定IP,我如何知道这个IP是否有效?
比方说,有机器IP为1.1.1.1,当它不在线上时,这IP就无效了。
那我如何才能知道它是否在线上?
 
后退
顶部