关于在linux下"通过ip地址获取它的主机名"谁有比较好的函数或例子,谢谢,加分!

dchg2000 2005-04-27 07:07:35
准确,快速
最好可以:
不要阻塞
...全文
508 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
sharkhuang 2005-04-28
  • 打赏
  • 举报
回复
gethostbyaddr
gaoxianfeng 2005-04-28
  • 打赏
  • 举报
回复
目前好像没有多少 dns 服务器 提供反向域名解析吧?

gz...
nwpulipeng 2005-04-28
  • 打赏
  • 举报
回复
有库函数呀!正如网民所说!
hoyt 2005-04-28
  • 打赏
  • 举报
回复
不阻塞是不现实的,因为DNS查询要求负责发送和接收报文。
你可以使用 resolver类函数进行自己的分析
使用 man resolver可以得到一些帮助

欢迎访问我的个人网站 www.linuxc.net
ckc 2005-04-28
  • 打赏
  • 举报
回复
nslookup -h ip地址
loveleijuforever 2005-04-27
  • 打赏
  • 举报
回复
gethostbyaddr 库函数
用法:
retcode = gethostbyaddr ( addr, len, type ) ;
说明:
gethostbyaddr 搜索关于某个给定IP 地址的主机信息。
参数:
l addr 类型为&char,含义是指向一个数组的指针,该数组含有一个主机地址(如IP地址)
l len 类型为int,含义是一个整数,它给出地址长度(IP 地址长度是4)
l type 类型为int,含义是一个整数,它给出地址类型(IP 地址类型为AF_INET)
返回值:
gethostbyaddr 如果成功,返回一个hostent 结构的指针。如果发生错误,返回0 。
hostent 结构声明如下:
struct hostent
{ /* 一个主机项 */
char h_name ; /* 正式主机名 */
char h_aliases[] ; /* 其它别名列表 */
int h_addrtype ; /* 主机地址类型 */
int h_length ; /* 主机地址长度 */
char **h_addr_list /* 主机地址列表 */.
} ;
somedummy 2005-04-27
  • 打赏
  • 举报
回复
不阻塞似乎不可能吧?这个要准确的话就要进行DNS反向查询了,这样的动作似乎不太可能不阻塞(又要建立socket,又要send请求,recv数据)……
dchg2000 2005-04-27
  • 打赏
  • 举报
回复
都下班啦?!
dchg2000 2005-04-27
  • 打赏
  • 举报
回复
up

23,216

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧