NO-CARRIER

自己动手写了创建虚拟接口,删除虚拟接口程序,频繁调用创建删除时,有时将接口up起来时会报错:

Name not unique on network

利用ip link命令来查看接口(及其对应的索引)

 可以查看到与其他接口不同的是有个标志为 NO-CARRIER,不知道是什么意思,查看ip的源代码(此处为 iproute2-3.15.0)

当打印接口信息时(函数print_link_flags中)有如下代码:

    fprintf(fp, "<");
    if (flags & IFF_UP && !(flags & IFF_RUNNING))
        fprintf(fp, "NO-CARRIER%s", flags ? "," : "");
    flags &= ~IFF_RUNNING;

可见是由于接口标志IFF_RUNNING导致。

原文地址:https://www.cnblogs.com/rohens-hbg/p/9146289.html