Windows libnet设备(网络接口)命令行参数

Windows libnet设备(网络接口)命令行参数,windows,networking,driver,libnet,Windows,Networking,Driver,Libnet,我刚刚从git libnet项目中找到了它,并且我已经查看了它附带的示例源代码。该示例获取了一个名为“device”的cmd arg来初始化libnet。我发现“eth0”在Linux操作系统上是合适的值,但我使用的是windows 7,我的问题是我可以在windows上使用什么作为设备的值 l = libnet_init( LIBNET_RAW4, /* injection type */ device,

我刚刚从git libnet项目中找到了它,并且我已经查看了它附带的示例源代码。该示例获取了一个名为“device”的cmd arg来初始化libnet。我发现“eth0”在Linux操作系统上是合适的值,但我使用的是windows 7,我的问题是我可以在windows上使用什么作为设备的值

l = libnet_init(
    LIBNET_RAW4,                  /* injection type */
    device,                       /* network interface */
    errbuf);                      /* errbuf */
我尝试了很多值,如适配器名称、设备索引等。。。但每次我犯了这个错误:

libnet_init() failed: libnet_link_win32.c(): unable to open the driver, error Code : 14

我被同样的问题弄糊涂了。 它可以这样解决

在lib wpcap中

有一个名为
pcap_findalldevs()的函数

像这样使用它,你会成功的

int Value = pcap_findalldevs(&alldevs,errbuf);
if( Value == -1)
{
    fprintf(stderr,"Error in pcap_findalldevs: %s\n", errbuf);
    exit(1);
}
char *device = NULL;
device = alldevs->name; //get the first Card name

    libnet_t *l

l = libnet_init(
    LIBNET_LINK_ADV,
    device,//use it here
    error_information); 
愿这对你有帮助。祝你好运