- 论坛徽章:
- 0
|
回复 #5 ssffzz1 的帖子
我不是用系统命令实现的,是自己用c语言写出函数,函数中用inet_aton,socket,ioctl等实现。
ip,mtu,netmask,broardcast,gateway按顺序分别用函数配置。前四个都成功了,最后配置gw时在执行到ioctl时报错。
部分代码:
if(set_ip_using("eth0", SIOCSIFADDR, _ip) == -1)
printf("======ip set error\n");
if(set_mtu_using("eth0", _mtu) == -1)
printf("======mtu set error\n");
if(set_ip_using("eth0", SIOCSIFNETMASK, _nm) == -1)
printf("======netmask set error\n");
if(set_ip_using("eth0", SIOCSIFBRDADDR, _bc) == -1)
printf("======broadcast set error\n");
if(set_gw_using(_gw) == -1)
printf("======gateway set error\n"); |
|