linux C:将域名转化为IP地址
2013-11-18 15:54
260 查看
如题,这个功能挺常用的,记录一下方便以后使用
#include <stdio.h> #include <string.h> #include <arpa/inet.h> #include <netdb.h> #include <stdlib.h> /* 作用:将网络地址转化为IP 参数:ipbuf是输出缓冲区, host是要转化的域名, maxlen是缓冲区大小 返回值:返回-1是失败,0是成功 */ int get_ip_from_host(char *ipbuf, const char *host, int maxlen) { struct sockaddr_in sa; sa.sin_family = AF_INET; if (inet_aton(host, &sa.sin_addr) == 0) { struct hostent *he; he = gethostbyname(host); if (he == NULL) return -1; memcpy(&sa.sin_addr, he->h_addr, sizeof(struct in_addr)); } strncpy(ipbuf, inet_ntoa(sa.sin_addr), maxlen); return 0; } //测试例子 int main() { char ipbuf[128]; get_ip_from_host(ipbuf, "www.baidu.com", 128); printf("ip: %s\n", ipbuf); return 0; }
相关文章推荐
- linux c 网络编程:用域名获取IP地址或者用IP获取域名 网络地址转换成整型 主机字符顺序与网络字节顺序的转换
- Linux下由域名编程解析ip地址 (段错误(吐核))
- linux应用程序编程之网络(用域名取得主机的ip地址)
- Linux查询一台机器的IP地址和其对应的域名
- [Linux]获取域名的ip地址和hostname(待续)
- Linux下可ping IP地址,但是ping不通域名
- 域名转化到IP地址的实现
- Linux查询一台机器的IP地址和其对应的域名
- linux下nginx实现虚拟主机(3种方法:基于域名、基于端口、基于ip地址)
- linux将域名解析成IP地址
- IP地址与域名之间的转换(Linux + GCC)
- linux下获取域名的IP地址
- 利用DNS类.域名转化ip地址,利用ip地址转换域名
- Linux:服务器ping不通域名(能ping通ip地址)
- Linux下可以ping ip地址但无法ping域名解决方法
- 域名转化到IP地址的实现
- inet_ntoa只能转化IP地址 不能转域名的问题
- linux下编程实现将域名地址转换为IP地址
- 在Linux命令行上,能ping通ip地址,却ping不通域名
- linux 无法解析域名,但是可以ping通IP地址