gethostbyname & gethostbyaddr使用方法
#include <stdio.h>
#include <netdb.h>
#include <unistd.h>
#include <arpa/inet.h>
int main(int argc, char* argv[]){
char hostName[1024];
struct hostent * localHost;
struct hostent * localHost1;
char ip_str[INET_ADDRSTRLEN];
const char* p = NULL;
int i, j;
struct in_addr ip;
localHost = gethostbyname(argv[1]);
gethostname(hostName, sizeof(hostName));
printf("localHost->h_name = %s h_addr= %s argc=%d hostName=%s\n", localHost->h_name, localHost->h_addr, argc,hostName);
//p = inet_ntop(AF_INET, (struct in_addr*)localHost->h_addr, ip_str, INET_ADDRSTRLEN);
//p = inet_ntop(AF_INET, localHost->h_addr, ip_str, INET_ADDRSTRLEN);
//if (p != NULL) {
// printf("--ip_str = %s\n", ip_str);
//}
for(i = 0; localHost->h_addr_list[i] != 0; i++) {
p = inet_ntop(AF_INET, localHost->h_addr_list[i], ip_str, INET_ADDRSTRLEN);
if (p != NULL) {
printf("ip_str = %s\n", ip_str);
}else{
printf("ip_str is null!\n");
}
}
printf("addr is = %s\n", argv[2]);
j = inet_pton(AF_INET, argv[2], &ip);
if (j == 1) {
printf("ok!\n");
localHost1 = gethostbyaddr((const char*)&ip, sizeof(ip), AF_INET);
if (localHost1 != NULL) {
printf("localHost1->h_name = %s\n", localHost1->h_name);
}
}
return 0;
}
相關文章
- gethostbyname函式和getservbyname函式的應用函式
- gethostbyname() -- 用域名或主機名獲取IP地址
- CVE 2015-0235: GNU glibc gethostbyname 緩衝區溢位漏洞
- VNC viewer使用方法,win10VNC使用方法VNCViewWin10
- webpack 使用方法。Web
- EntityManager使用方法
- Alfred使用方法Alfred
- WebView使用方法WebView
- XQuartz 使用方法quartz
- plotly使用方法
- chown 命令使用方法
- scp命令使用方法
- Java DES 使用方法Java
- API文件使用方法API
- Swiper Animate使用方法
- jQuery datatable 使用方法jQuery
- FCKeditor使用方法(轉)
- git命令使用方法Git
- Jquery datatables 使用方法jQuery
- FMDatabase 的使用方法Database
- Properties使用方法解析
- HttpClient初步使用方法HTTPclient
- ****phpredis的使用方法PHPRedis
- ieHTTPHeaders使用方法HTTPHeader
- redis nosql 使用方法RedisSQL
- ScaleType的使用方法
- Oracle JOB 使用方法Oracle
- docker的使用方法Docker
- Markdown的使用方法
- anaconda使用方法
- labelme使用方法
- linux awk使用方法Linux
- VNC, VNC viewer使用方法!VNCView
- React 路由的使用方法React路由
- docker的基本使用方法Docker
- Linux——指令使用方法!Linux
- ITRON系統使用方法
- bootstrap Table的使用方法boot