Как отправить пакет UDP через крановое устройство?
Я изучаю интерфейс виртуальной сети Linux и сталкиваюсь с этой проблемой. Я запускаю кран-устройство под названием «tap0» и пишу программу для отправки udp-пакета. Я хочу, чтобы мой пакет прошел через крановое устройство, поэтому я пишу этот код
struct ifreq ifr;
memset(&ifr, 0x00, sizeof(ifr));
strncpy(ifr.ifr_name, "tap0", strlen("tap0"));
setsockopt(sockfd, SOL_SOCKET, SO_BINDTODEVICE, (char *)&ifr, sizeof(ifr));
Но пакет по-прежнему не отображается в «tap0». Что я могу сделать, чтобы решить проблему?