Linux使用ioctl设置ip地址

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux使用ioctl设置ip地址相关的知识,希望对你有一定的参考价值。

  1. static int set_ip_using(const char *name, int c, unsigned long ip)
  2. {
  3. struct ifreq ifr;
  4. struct sockaddr_in sin;
  5.  
  6. safe_strncpy(ifr.ifr_name, name, IFNAMSIZ);
  7. memset(&sin, 0, sizeof(struct sockaddr));
  8. sin.sin_family = AF_INET;
  9. sin.sin_addr.s_addr = ip;
  10. memcpy(&ifr.ifr_addr, &sin, sizeof(struct sockaddr));
  11. if (ioctl(skfd, c, &ifr) < 0)
  12. return -1;
  13. return 0;
  14. }

以上是关于Linux使用ioctl设置ip地址的主要内容,如果未能解决你的问题,请参考以下文章

如何在 linux 中使用 ioctl 获取网关 ip 和名称服务器 ip

使用 ioctl 修改 IP 地址时的不良副作用

LINUX - 获取本地ip

Linux下获取网络接口ip地址

Linux——Linux驱动之使用ioctl接口进行设备参数设置应用实践(ioctl接口命令规则代码实现)

Linux C语言 获取本机(所有网卡)IP地址(IPV4)