社区
Linux/Unix社区
帖子详情
哪位兄弟能给出函数gethostbyname的源代码?
plainchow
2003-07-29 09:18:50
rt
...全文
437
9
打赏
收藏
哪位兄弟能给出函数gethostbyname的源代码?
rt
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
teal
2003-08-07
打赏
举报
回复
我也期待中
plainchow
2003-07-30
打赏
举报
回复
期待中……
macro_love
2003-07-29
打赏
举报
回复
gethostbyname是从/etc/hosts中查找对应的ip与hostname,所以如果你要实现你说的功能,就要有名称服务器
plainchow
2003-07-29
打赏
举报
回复
谢谢2楼的,不过那段程序我也会写
正如楼上的说的,其实我真正想要做的是能够在程序中指定使用某个DNS来解析域名
有哪位高手知道否?
CoolQ
2003-07-29
打赏
举报
回复
自己好好找找Linux的源码包吧,不过这就是一个DNS的查询阿,实在不行,看看相关的RFC或者《TCP/IP》的第一卷:协议,就可以了。
macro_love
2003-07-29
打赏
举报
回复
#include <netdb.h>
#include <unistd.h>
int main(void)
{
struct hostent *h;
char strhost[255];
char **adds;
size_t len;
if (gethostname(strhost,len)==-1)
{
printf("gethostname error\n");
exit(0);
}
printf("hostname: %s\n",strhost);
if ((h=gethostbyname(strhost))==NULL)
{
printf("gethostbyname error\n");
exit(0);
}
printf("gethostname: %s\n",h->h_name);
adds=h->h_addr_list;
for(;*adds!=NULL;*adds++)
{
printf("IP Address: %s\n", inet_ntoa(*((struct in_addr*)(*adds))));
}
}
blh
2003-07-29
打赏
举报
回复
看c库源代码不就行了
plainchow
2003-07-29
打赏
举报
回复
其实就有点类似于nslookup命令,可以指定一个域名服务器来解析一个域名
现在就是想通过程序来实现
plainchow
2003-07-29
打赏
举报
回复
我写了几行测试程序,
struct hostent *phe = NULL;
struct in_addr *stin = NULL;
phe = gethostbyname("www.990.com");
stin = (struct in_addr *) *(phe->h_addr_list);
cout << " ip is " << inet_ntoa(*stin) << endl;
结果是可以得到IP地址的,当然前提是系统已经配置了DNS
现在我想知道的是怎样在程序中指定一个DNS来解析域名?
【notes6】linux命令/工具,systemd,文件操作,动静态库,信号,socket,std&boost,raii,智能指针,引用,完美转发,数据结构,类和对象,python
本文系统梳理Linux命令(find/grep/sed/awk/shell)、systemd服务管理、文件I/O操作、动静态库链接机制(含-lm原理)、信号处理、socket网络编程;深入讲解C++ RAII、智能指针(unique_ptr实现)、引用语义(左值/右值/完美转发)、模板元编程基础;涵盖数据结构(红黑树/vector/map)、内存对齐、字节序及典型IPC机制。内容聚焦系统级开发所需底层技术栈。
AVS-Temp-Block11-0616
AVS_Temp_Block11_0616
HVBL____.rar
下载并安装缺失的 CAD 字体文件,以解决文字乱码和问号问题
基于Pygame框架开发的植物大战僵尸游戏仿制项目-植物大战僵尸一代经典塔防游戏复刻版-包含加载界面主界面游戏界面和选卡界面-玩家需要收集阳光种植植物抵御僵尸进攻-游戏规则与原版P.zip
基于Pygame框架开发的植物大战僵尸游戏仿制项目_植物大战僵尸一代经典塔防游戏复刻版_包含加载界面主界面游戏界面和选卡界面_玩家需要收集阳光种植植物抵御僵尸进攻_游戏规则与原版P.zipACM算法模板与竞赛实战进阶
Fix socket send
Fix socket send
Linux/Unix社区
23,223
社区成员
74,536
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章