阅读:2512回复:16
局域网如何搜全装了我的程序的主机?高分!
rt,请提供一些方案,谢谢!
[编辑 - 6/23/04 by Leopard] |
|
沙发#
发布于:2004-06-22 11:33
让你的程序向外发广播 :D
|
|
板凳#
发布于:2004-06-22 12:28
用的是tcp,不知哪里没有协调好,反正就是connect不上!
正在试udp! 大致的思路应该如何?谢谢! |
|
地板#
发布于:2004-06-22 12:29
让你的程序向外发广播 :D 也太说简单了吧, :D |
|
地下室#
发布于:2004-06-22 12:34
用什么连接啊
主控机广播UDP 在数据字段里填写“who is ALIVE” 你的客户端程序接收到广播后,发个回应“I AM ALIVE”给主控端 主控端做处理就可以了 |
|
|
5楼#
发布于:2004-06-22 12:35
好像是最基本的通讯程序
网上随便找个例子都可以做 |
|
|
6楼#
发布于:2004-06-22 12:41
这种校验方案理论可行,可惜实际环境中经常搜索不全!
不知道为什么?苦啊! |
|
7楼#
发布于:2004-06-22 12:43
用什么连接啊 我就是如此啊!实际环境下搜索不全啊! |
|
8楼#
发布于:2004-06-22 12:44
复杂的我也说不来呀 :D
udp多省事,你的程序只管发就行了 |
|
9楼#
发布于:2004-06-22 12:51
当然存在问题了
UDP不保证传输质量 所以你在发送了who is alive后,应该按一定策略重发几次 主要的处理应该在客户端: 1、以收到广播包的时间为起点,等待一个随机的时间,然后发i ma alive ; 2、发i ma alive ,应该设置超时计数器,等待确认,超时后重传I AM ALIVE。 服务端收到数据后,应该给一个确认信号 ―――――――――――――――――――― 以上是通常的思路 还是有问题:不能处理局域网络内划分子网的情况 |
|
|
10楼#
发布于:2004-06-22 13:18
我的东东和一般网络软件的思路不一样,整个局域网有一个control软件,其他的软件执行control软件发来的命令!
|
|
11楼#
发布于:2004-06-22 13:19
不能处理局域网络内划分子网的情况
我不需考虑! |
|
12楼#
发布于:2004-06-22 13:22
比较彻底的方式是在数据链路层直接处理以太网帧
就要考虑自己处理特殊情况了:主要处理超时和校验 我2001年做这个,整整花了28天 兄弟自己努力了。 不要想投机 网络情况很复杂 调试时可用,实际使用未必好用,只能老老实实处理所有的情况。 一般情况下 你用UDP做就可以了 |
|
|
13楼#
发布于:2004-06-22 13:24
刚才网络断了一会儿。
看了你的回帖 我觉得没有必要讨论了 你说的功能没有什么难点 我前面说的UDP那种方式就可以处理了 很多软件都是这样处理的。 |
|
|
14楼#
发布于:2004-06-22 13:28
刚才网络断了一会儿。 谢谢! 到水园跟个贴! |
|
15楼#
发布于:2004-06-25 17:15
我的东东在其他的地方错了,不需要这些了, ;)
|
|
16楼#
发布于:2004-07-08 14:02
应用程序开个特定端口例如(6789),你只要检验你那个IP段中的机器是否开了那个端口就行了,不过建议避开常用的端口和那些木马常用的端口,不然网管会骂的
|
|