感谢支持
我们一直在努力

Ubuntu上获取主机ip

Ubuntu上获取主机ip:


#include <stdio.h>
#include <stdlib.h>
#include <netdb.h>
#include <unistd.h>
#include <errno.h>
#include <linux/limits.h>
#include <arpa/inet.h>
main()
{
  struct hostent *h;
  char **p;
  char hostname[PATH_MAX];
  gethostname(hostname,PATH_MAX);
  printf(“hostname = %s \n”,hostname);
  h = gethostbyname(hostname);
  printf(“hostname = %s \n”,h->h_name);
  printf(“hostalias = %s \n”,*(h->h_aliases));
  //printf(“hostalias2 = %s \n”,*(++(h->h_aliases)));
  //printf(“hostalias3 = %s \n”,*((h->h_aliases)+2));


  printf(“h_length = %d \n”,h->h_length);


 //格式化IP地址


  printf(“hostip = %s \n”,inet_ntoa(*((struct in_addr *)(h->h_addr_list[0]))));


}


在ubuntu上使用PATH_MAX需要引入#include <linux/limits.h>


使用inet_ntoa需要引入#include <arpa/inet.h>


这和其他版本的linux可能有所区别!

赞(0) 打赏
转载请注明出处:服务器评测 » Ubuntu上获取主机ip
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏