这个修改重启后会丢失,因此你要自己去修改~~修改mac地址也是重启就失效了
echo "ifconfig eth0 promisc " >>/root/.bash_profile
或者
echo "ifconfig eth0 promisc " >>/root/.bashrc
/root/.bashrc是进入root时自动会执行的一个脚本~~
char *eth_name = eth0//对网卡eth0进行混杂设置
struct ifreq ethreq//网络接口结构
strncpy(ethreq.ifr_name, eth_name, IFNAMSIZ)//指定网卡名称if(-1 == ioctl(sock_raw_fd, SIOCGIFFLAGS, &ethreq)) //获取网络接口{perror(ioctl)close(sock_raw_fd)exit(-1)}
/*此处用 | 是因为必须在保留原来设置的情况下,在标志位中加入“混杂”方式*/ ethreq.ifr_flags |= IFF_PROMISCif(-1 == ioctl(sock_raw_fd, SIOCSIFFLAGS, &ethreq)) //将标志位设置写入{perror(ioctl)close(sock_raw_fd)exit(-1)}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)