ip маршрут добавить 255.255.255.255/32 dev eth0
Итак, для вызова этого сообщения из моего приложения я использую system().
Но насколько я знаю, я могу использовать его с функцией ioctl.
Код: Выделить всё
ioctl(sockfd, SIOCADDRT, &route))
Я попробовал дальше:
Код: Выделить всё
int sockfd;
struct rtentry route;
struct sockaddr_in *addr;
int err = 0;
// create the socket
if(sockfd = socket(AF_INET, SOCK_DGRAM, 0)sin_family = AF_INET;
addr->sin_addr.s_addr = inet_addr("10.0.2.15");
addr = (struct sockaddr_in*) &route.rt_dst;
addr->sin_family = AF_INET;
addr->sin_addr.s_addr = inet_addr("0.0.0.0");
addr = (struct sockaddr_in*) &route.rt_genmask;
addr->sin_family = AF_INET;
addr->sin_addr.s_addr = inet_addr("255.255.255.255");
route.rt_flags = RTF_UP | RTF_GATEWAY;
route.rt_metric = 0;
if ((err = ioctl(sockfd, SIOCADDRT, &route)) != 0) {
perror("SIOCADDRT failed");
exit(1);
}
return 0;
Подробнее здесь: https://stackoverflow.com/questions/793 ... with-ioctl
Мобильная версия