MIB_IF_ROW2 structure

The MIB_IF_ROW2 structure stores information about a particular interface.

Syntax

typedef struct _MIB_IF_ROW2 {
  NET_LUID                   InterfaceLuid;
  NET_IFINDEX                InterfaceIndex;
  GUID                       InterfaceGuid;
  WCHAR                      Alias[IF_MAX_STRING_SIZE + 1];
  WCHAR                      Description[IF_MAX_STRING_SIZE + 1];
  ULONG                      PhysicalAddressLength;
  UCHAR                      PhysicalAddress[IF_MAX_PHYS_ADDRESS_LENGTH];
  UCHAR                      PermanentPhysicalAddress[IF_MAX_PHYS_ADDRESS_LENGTH];
  ULONG                      Mtu;
  IFTYPE                     Type;
  TUNNEL_TYPE                TunnelType;
  NDIS_MEDIUM                MediaType;
  NDIS_PHYSICAL_MEDIUM       PhysicalMediumType;
  NET_IF_ACCESS_TYPE         AccessType;
  NET_IF_DIRECTION_TYPE      DirectionType;
  struct {
    BOOLEAN HardwareInterface  :1;
    BOOLEAN FilterInterface  :1;
    BOOLEAN ConnectorPresent  :1;
    BOOLEAN NotAuthenticated  :1;
    BOOLEAN NotMediaConnected  :1;
    BOOLEAN Paused  :1;
    BOOLEAN LowPower  :1;
    BOOLEAN EndPointInterface  :1;
  } InterfaceAndOperStatusFlags;
  IF_OPER_STATUS             OperStatus;
  NET_IF_ADMIN_STATUS        AdminStatus;
  NET_IF_MEDIA_CONNECT_STATE MediaConnectState;
  NET_IF_NETWORK_GUID        NetworkGuid;
  NET_IF_CONNECTION_TYPE     ConnectionType;
  ULONG64                    TransmitLinkSpeed;
  ULONG64                    ReceiveLinkSpeed;
  ULONG64                    InOctets;
  ULONG64                    InUcastPkts;
  ULONG64                    InNUcastPkts;
  ULONG64                    InDiscards;
  ULONG64                    InErrors;
  ULONG64                    InUnknownProtos;
  ULONG64                    InUcastOctets;
  ULONG64                    InMulticastOctets;
  ULONG64                    InBroadcastOctets;
  ULONG64                    OutOctets;
  ULONG64                    OutUcastPkts;
  ULONG64                    OutNUcastPkts;
  ULONG64                    OutDiscards;
  ULONG64                    OutErrors;
  ULONG64                    OutUcastOctets;
  ULONG64                    OutMulticastOctets;
  ULONG64                    OutBroadcastOctets;
  ULONG64                    OutQLen;
} MIB_IF_ROW2, *PMIB_IF_ROW2;

Members

  • InterfaceLuid
    The locally unique identifier (LUID) for the network interface.

  • InterfaceIndex
    The index that identifies the network interface. This index value might change when a network adapter is disabled and then enabled, and should not be considered persistent.

  • InterfaceGuid
    The GUID for the network interface.

  • Alias
    A NULL-terminated Unicode string that contains the alias name of the network interface.

  • Description
    A NULL-terminated Unicode string that contains a description of the network interface.

  • PhysicalAddressLength
    The length, in bytes, of the physical hardware address that the PhysicalAddress member specifies.

  • PhysicalAddress
    The physical hardware address of the adapter for this network interface.

  • PermanentPhysicalAddress
    The permanent physical hardware address of the adapter for this network interface.

  • Mtu
    The maximum transmission unit (MTU) size, in bytes, for this network interface.

  • Type
    The interface type as defined by the Internet Assigned Names Authority (IANA). For more information, see IANAifType-MIB DEFINITIONS. Possible values for the interface type are listed in the Ipifcons.h header file.

    The following table lists common values for the interface type, although many other values are possible.

    Value Meaning

    IF_TYPE_OTHER

    1

    Some other type of network interface

    IF_TYPE_ETHERNET_CSMACD

    6

    An Ethernet network interface

    IF_TYPE_ISO88025_TOKENRING

    9

    A token ring network interface

    IF_TYPE_PPP

    23

    A PPP network interface

    IF_TYPE_SOFTWARE_LOOPBACK

    24

    A software loopback network interface

    IF_TYPE_ATM

    37

    An ATM network interface

    IF_TYPE_IEEE80211

    71

    An IEEE 802.11 wireless network interface

    IF_TYPE_TUNNEL

    131

    A tunnel type encapsulation network interface

    IF_TYPE_IEEE1394

    144

    An IEEE 1394 (Firewire) high performance serial bus network interface

  • TunnelType
    If the Type member is IF_TYPE_TUNNEL, a TUNNEL_TYPE type that defines the encapsulation method that a tunnel uses.

  • MediaType
    The NDIS media type for the interface. This member can be one of the following values from the NDIS_MEDIUM enumeration type that is defined in the Ntddndis.h header file.

    Value Meaning

    NdisMedium802_3

    0

    An Ethernet (802.3) network.

    NdisMedium802_5

    1

    A Token Ring (802.5) network.

    NdisMediumFddi

    2

    A Fiber Distributed Data Interface (FDDI) network.

    NdisMediumWan

    3

    A wide area network (WAN). This type covers various forms of point-to-point and WAN NICs and variant address/header formats that must be negotiated between the protocol driver and the underlying driver after the binding is established.

    NdisMediumLocalTalk

    4

    A LocalTalk network.

    NdisMediumDix

    5

    An Ethernet network for which the drivers use the DIX Ethernet header format.

    NdisMediumArcnetRaw

    6

    An ARCNET network.

    NdisMediumArcnet878_2

    7

    An ARCNET (878.2) network.

    NdisMediumAtm

    8

    An ATM network. Connection-oriented client protocol drivers can bind themselves to an underlying miniport driver that returns this value. Otherwise, legacy protocol drivers bind themselves to the system-supplied LanE intermediate driver, which reports its medium type as either NdisMedium802_3 or NdisMedium802_5, depending on how the network administrator configures the LanE driver.

    NdisMediumWirelessWan

    9

    A wireless network. NDIS 5. x miniport drivers that support wireless LAN (WLAN) or wireless WAN (WWAN) packets declare their medium as NdisMedium802_3 and emulate Ethernet to higher-level NDIS drivers.

    Note This media type is not available for use on Windows Vista or later versions of Windows.

    NdisMediumIrda

    10

    An infrared (IrDA) network.

    NdisMediumBpc

    11

    A broadcast computer network.

    NdisMediumCoWan

    12

    A wide area network in a connection-oriented environment.

    NdisMedium1394

    13

    An IEEE 1394 (fire wire) network.

    NdisMediumInfiniBand

    14

    An InfiniBand network.

    NdisMediumTunnel

    15

    A tunnel network.

    NdisMediumNative802_11

    16

    A native IEEE 802.11 network.

    NdisMediumLoopback

    17

    An NDIS loopback network.

  • PhysicalMediumType
    The NDIS physical medium type. This member can be one of the following values from the NDIS_PHYSICAL_MEDIUM enumeration type that is defined in the Ntddndis.h header file.

    Value Meaning

    NdisPhysicalMediumUnspecified

    0

    The physical medium is none of the following values. For example, a one-way satellite feed is an unspecified physical medium.

    NdisPhysicalMediumWirelessLan

    1

    Packets are transferred over a wireless LAN network through a miniport driver that complies with the 802.11 interface.

    NdisPhysicalMediumCableModem

    2

    Packets are transferred over a DOCSIS-based cable network.

    NdisPhysicalMediumPhoneLine

    3

    Packets are transferred over standard telephone lines. This type includes HomePNA media.

    NdisPhysicalMediumPowerLine

    4

    Packets are transferred over wiring that is connected to a power distribution system.

    NdisPhysicalMediumDSL

    5

    Packets are transferred over a Digital Subscriber Line (DSL) network. This type includes ADSL, UADSL (G.Lite), and SDSL.

    NdisPhysicalMediumFibreChannel

    6

    Packets are transferred over a Fibre Channel interconnect.

    NdisPhysicalMedium1394

    7

    Packets are transferred over an IEEE 1394 bus.

    NdisPhysicalMediumWirelessWan

    8

    Packets are transferred over a Wireless WAN link. This type includes CDPD, CDMA and GPRS.

    NdisPhysicalMediumNative802_11

    9

    Packets are transferred over a wireless LAN network through a miniport driver that complies with the Native 802.11 interface.

    Note The Native 802.11 interface is supported in NDIS 6.0 and later versions.

    NdisPhysicalMediumBluetooth

    10

    Packets are transferred over a Bluetooth network. Bluetooth is a short-range wireless technology that uses the 2.4 GHz spectrum.

    NdisPhysicalMediumInfiniband

    11

    Packets are transferred over an InfiniBand interconnect.

    NdisPhysicalMediumUWB

    13

    Packets are transferred over an ultra wide band network.

    NdisPhysicalMedium802_3

    14

    Packets are transferred over an Ethernet (802.3) network.

    NdisPhysicalMedium802_5

    15

    Packets are transferred over a Token Ring (802.5) network.

    NdisPhysicalMediumIrda

    16

    Packets are transferred over an infrared (IrDA) network.

    NdisPhysicalMediumWiredWAN

    17

    Packets are transferred over a wired WAN network.

    NdisPhysicalMediumWiredCoWan

    18

    Packets are transferred over a wide area network in a connection-oriented environment.

    NdisPhysicalMediumOther

    19

    Packets are transferred over a network that is not described by other possible values.

  • AccessType
    A NET_IF_ACCESS_TYPE NDIS network interface access type.

  • DirectionType
    A NET_IF_DIRECTION_TYPE NDIS network interface direction type.

  • InterfaceAndOperStatusFlags
    A set of the following flags that provide information about the interface. These flags are combined with a bitwise OR operation. If none of the flags applies, this member is set to zero.

    • HardwareInterface
      The network interface is for hardware.

    • FilterInterface
      The network interface is for a filter module.

    • ConnectorPresent
      A connector is present on the network interface. This value is set if there is a physical network adapter.

    • NotAuthenticated
      The default port for the network interface is not authenticated. If a network interface is not authenticated by the target, the network interface is not in an operational mode. Although this situation applies to both wired and wireless network connections, authentication is more common for wireless network connections.

    • NotMediaConnected
      The network interface is not in a media-connected state. If a network cable is unplugged for a wired network, this value is set. For a wireless network, this value is set for the network adapter that is not connected to a network.

    • Paused
      The network stack for the network interface is in the paused or pausing state. This value does not mean that the computer is in a hibernated state.

    • LowPower
      The network interface is in a low power state.

    • EndPointInterface
      The network interface is an endpoint device and not a true network interface that connects to a network. This value can be set by devices, such as smartphones, that use networking infrastructure to communicate to the computer but do not provide connectivity to an external network. These types of devices must set this flag.

  • OperStatus
    A IF_OPER_STATUS NDIS network interface operational status type.

  • AdminStatus
    The NET_IF_ADMIN_STATUS administrative status type.

  • MediaConnectState
    The NET_IF_MEDIA_CONNECT_STATE connection state type.

  • NetworkGuid
    The GUID that is associated with the network that the interface belongs to.

  • ConnectionType
    A NET_IF_CONNECTION_TYPE NDIS network interface connection type.

  • TransmitLinkSpeed
    The speed, in bits per second, of the transmit link.

  • ReceiveLinkSpeed
    The speed, in bits per second, of the receive link.

  • InOctets
    The number of octets of data that are received without errors through this interface. This value includes octets in unicast, broadcast, and multicast packets.

  • InUcastPkts
    The number of unicast packets that are received without errors through this interface.

  • InNUcastPkts
    The number of non-unicast packets that are received without errors through this interface. This value includes broadcast and multicast packets.

  • InDiscards
    The number of incoming packets that were discarded even though they did not have errors.

  • InErrors
    The number of incoming packets that were discarded because of errors.

  • InUnknownProtos
    The number of incoming packets that were discarded because the protocol was unknown.

  • InUcastOctets
    The number of octets of data that are received without errors in unicast packets through this interface.

  • InMulticastOctets
    The number of octets of data that are received without errors in multicast packets through this interface.

  • InBroadcastOctets
    The number of octets of data that are received without errors in broadcast packets through this interface.

  • OutOctets
    The number of octets of data that are transmitted without errors through this interface. This value includes octets in unicast, broadcast, and multicast packets.

  • OutUcastPkts
    The number of unicast packets that are transmitted without errors through this interface.

  • OutNUcastPkts
    The number of non-unicast packets that are transmitted without errors through this interface. This value includes broadcast and multicast packets.

  • OutDiscards
    The number of outgoing packets that were discarded even though they did not have errors.

  • OutErrors
    The number of outgoing packets that were discarded because of errors.

  • OutUcastOctets
    The number of octets of data that are transmitted without errors in unicast packets through this interface.

  • OutMulticastOctets
    The number of octets of data that are transmitted without errors in multicast packets through this interface.

  • OutBroadcastOctets
    The number of octets of data that are transmitted without errors in broadcast packets through this interface.

  • OutQLen
    The transmit queue length. This field is not currently used.

Remarks

The values for the Type field are defined in the Ipifcons.h header file. Only the possible values that are listed in the description of the Type member are currently supported.

Requirements

Version

Available in Windows Vista and later versions of the Windows operating systems.

Header

Netioapi.h (include Netioapi.h)

See also

GetIfEntry2

GetIfTable2

MIB_IF_TABLE2

NET_IF_ACCESS_TYPE

NET_IF_ADMIN_STATUS

NET_IF_CONNECTION_TYPE

NET_IF_DIRECTION_TYPE

NET_IF_MEDIA_CONNECT_STATE

NET_LUID

TUNNEL_TYPE