首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在C中进行IP遍历

问如何在C中进行IP遍历
EN

Stack Overflow用户
提问于 2010-12-14 01:49:28
回答 1查看 234关注 0票数 0

我电脑的IP地址是eth0上的192.168.1.101。

我想知道192.168.1以下还有哪些活动/使用的IP。*

我正在等待192.168.1以下可ping通的IP地址列表。*

我如何在C中做到这一点?并且最好是在linux平台上。

有没有可用的C函数?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-12-14 16:02:59

C中没有内置的发送ping数据包的函数。但是,有一个函数只发送数据包。互联网上也有很多已经实现了ping的代码。

您需要做的只是获取其中一个地址(例如this),然后在循环中ping您网络中的所有地址。

但是,您应该知道,ping并不是一种可靠的方式来判断哪些地址正在使用中。RFC 792 - Internet控制消息协议声明:

互联网协议并不是被设计成绝对可靠的。这些控制消息的目的是提供有关通信环境中的问题的反馈,而不是使IP可靠。仍然不能保证数据报将被传送或控制消息将被返回。有些数据报可能仍然无法传送,而没有任何丢失报告。

这意味着在没有通知的情况下,任何消息都很容易丢失。此外,目标不必做出响应。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4431798

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档