- 论坛徽章:
- 5
|
可以自己实现一个
system("ifconfig eth0 0.0.0.0 up");
status = system("udhcpc -t 1 -n");
一般dhcp可以这么连接
设置ip的话
- int socket_set_ipaddr(char* ipadd)
- {
- int sockfd;
- struct ifreq ifr;
- struct sockaddr_in *sin;
- ASSERT(NULL != ipadd);
-
- if ((sockfd = socket(AF_INET, SOCK_DGRAM, 0)) < 0)
- {
- return -1;
- }
- memset(&ifr, 0, sizeof(ifr));
- strncpy(ifr.ifr_name, "eth0", sizeof(ifr.ifr_name)-1);
- sin = (struct sockaddr_in *)&ifr.ifr_addr;
- sin->sin_family = AF_INET;
- if (inet_pton(AF_INET, ipadd, &sin->sin_addr) <= 0) // fix: change from < to <= for invalid ipAddr input
- {
- return -1;
- }
- if(ioctl(sockfd, SIOCSIFADDR, &ifr) < 0)
- {
- return -1;
- }
- close(sockfd);
- return 0;
- }
复制代码 |
|