Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c C套接字Ping命令?_Objective C_Sockets_Callback - Fatal编程技术网

Objective c C套接字Ping命令?

Objective c C套接字Ping命令?,objective-c,sockets,callback,Objective C,Sockets,Callback,有人能告诉我一些关于如何使用C套接字设置ping方法的教程吗?使用beej的指南,我已经能够在两个设备之间建立连接,但现在我想建立一种方法,在开始实际连接之前对所有可用设备进行ping。我以前从未这样做过,所以您是否会设置一个多播套接字来广播一个空数据包,然后让该空数据包的接收者用他们的IP地址填充它,然后返回现在已满的数据包,这样您就有了启动连接的地址?任何指导/帮助都将不胜感激 大多数当前IP堆栈不会响应对广播地址的ping请求。该功能因拒绝服务攻击而被滥用 实现真正的ping实现并不容易,

有人能告诉我一些关于如何使用C套接字设置ping方法的教程吗?使用beej的指南,我已经能够在两个设备之间建立连接,但现在我想建立一种方法,在开始实际连接之前对所有可用设备进行ping。我以前从未这样做过,所以您是否会设置一个多播套接字来广播一个空数据包,然后让该空数据包的接收者用他们的IP地址填充它,然后返回现在已满的数据包,这样您就有了启动连接的地址?任何指导/帮助都将不胜感激

大多数当前IP堆栈不会响应对广播地址的ping请求。该功能因拒绝服务攻击而被滥用

实现真正的ping实现并不容易,我建议您使用现有的lib:


但是,您必须手动迭代子网上的所有IP地址,才能让它们做出响应。

为什么不看看;)

所以你想要使用ICPM协议的ping,还是UPD广播?对不起,同意。不需要重新发明轮子。好吧,听起来这是我现在唯一能做我想做的事情的方法,除非我能想出别的办法。我正在做的基本上是拿几个iPodtouch设备,创建一个分布式计算设置。这个想法是让一个iPod能够ping服务器(在其他iPod touch上设置),如果服务器可用(在范围内),则向它们发送任务。我正在使用C套接字(更不用说CFNetwork了,我在那个愚蠢的框架lol中遇到了足够多的麻烦)来设置连接。关于如何在不重复访问我的子网上的IP的情况下ping,有什么想法吗?与其让iPod ping每个设备,为什么不让每个设备广播一个数据包,说明它可用?