MIB_IF_ROW2 (Compact 2013)

3/26/2014

This 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 LUID for the network interface.
  • InterfaceIndex
    The index that identifies the network interface This index value may 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 specified by the PhysicalAddress member.
  • 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). Possible values for the interface type are listed in the Ipifconsh header file.

    The table below 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 80211 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
    The encapsulation method that is used by a tunnel if the Type member is IF_TYPE_TUNNEL. The tunnel type is defined by the Internet Assigned Names Authority (IANA). This member can be one of the values from the TUNNEL_TYPE enumeration type that is defined in the Ifdefh header file.

    Value

    Meaning

    TUNNEL_TYPE_NONE

    0

    Not a tunnel.

    TUNNEL_TYPE_OTHER

    1

    None of the following tunnel types.

    TUNNEL_TYPE_DIRECT

    2

    A packet is encapsulated directly within a typical IP header, without an intermediate header, and unicast to the remote tunnel endpoint.

    TUNNEL_TYPE_6TO4

    11

    An IPv6 packet is encapsulated directly within an IPv4 header, without an intermediate header, and unicast to the destination determined by the 6to4 protocol.

    TUNNEL_TYPE_ISATAP

    13

    An IPv6 packet is encapsulated directly within an IPv4 header, without an intermediate header, and unicast to the destination determined by the ISATAP protocol.

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

    Value

    Meaning

    NdisMedium802_3

    0

    An Ethernet (8023) network.

    NdisMedium802_5

    1

    A Token Ring (8025) 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 network adapters, 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 (8782) 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 that reports its medium type as either NdisMedium802_3 or NdisMedium802_5, depending on how the LanE driver is configured by the network administrator.

    NdisMediumWirelessWan

    9

    A wireless network. NDIS 5X 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.

    NdisMediumBpc

    11

    A broadcast PC 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 80211 network.

    NdisMediumLoopback

    17

    An NDIS loopback network.

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

    Value

    Meaning

    NdisPhysicalMediumUnspecified

    0

    The physical medium is none of the below 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 80211 interface.

    NdisPhysicalMediumCableModem

    2

    Packets are transferred over a DOCSIS-based cable network.

    NdisPhysicalMediumPhoneLine

    3

    Packets are transferred over standard telephone lines. This includes HomePNA media, for example..

    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 includes ADSL, UADSL (GLite), and SDSL, for example.

    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 includes CDPD, CDMA and GPRS, for example.

    NdisPhysicalMediumNative802_11

    9

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

    Note   The Native 80211 interface is supported in NDIS 60 and then later versions.

    NdisPhysicalMediumBluetooth

    10

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

    NdisPhysicalMediumInfiniband

    11

    Packets are transferred over an Infiniband interconnect.

    NdisPhysicalMediumWiMax

    12

    Packets are transferred over a WiMax network.

    NdisPhysicalMediumUWB

    13

    Packets are transferred over an ultra wide band network.

    NdisPhysicalMedium802_3

    14

    Packets are transferred over an Ethernet (8023) network.

    NdisPhysicalMedium802_5

    15

    Packets are transferred over a Token Ring (8025) 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
    The interface access type. This member can be one of the values from the NET_IF_ACCESS_TYPE enumeration type that is defined in the Ifdefh header file.

    Value

    Meaning

    NET_IF_ACCESS_LOOPBACK

    1

    Loopback access type. This access type indicates that the interface loops back transmit data as receive data.

    NET_IF_ACCESS_BROADCAST

    2

    The LAN access type that includes Ethernet. This access type indicates that the interface provides native support for multicast or broadcast services.

    NET_IF_ACCESS_POINT_TO_POINT

    3

    Point-to-point access that supports CoNDIS/WAN, except for non-broadcast multi-access (NBMA) interfaces.

    NET_IF_ACCESS_POINT_TO_MULTI_POINT

    4

    Point-to-multipoint access that supports non-broadcast multi-access (NBMA) media, including the "RAS Internal" interface, and native (non-LANE) ATM.

    NET_IF_ACCESS_MAXIMUM

    5

    The maximum possible value for the NET_IF_ACCESS_TYPE enumeration type. This is not a legal value for AccessType member.

  • DirectionType
    The interface direction type This member can be one of the values from the NET_IF_DIRECTION_TYPE enumeration type that is defined in the Ifdefh header file.

    Value

    Meaning

    NET_IF_DIRECTION_SENDRECEIVE

    0

    The send and receive direction type. This direction type indicates that the NDIS network interface can send and receive data.

    NET_IF_DIRECTION_SENDONLY

    1

    The send only direction type. This direction type indicates that the NDIS network interface can only send data.

    NET_IF_DIRECTION_RECEIVEONLY

    2

    The receive only direction type. This direction type indicates that the NDIS network interface can only receive data.

    NET_IF_DIRECTION_MAXIMUM

    3

    The maximum possible value for the NET_IF_DIRECTION_TYPE enumeration type. This is not a legal value for DirectionType member.

  • InterfaceAndOperStatusFlags
    A set of 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
      Set if the network interface is for hardware.
    • FilterInterface
      Set if the network interface is for a filter module.
    • ConnectorPresent
      Set if a connector is present on the network interface. This value is set if there is a physical network adapter.
    • NotAuthenticated
      Set if 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 applies to both wired and wireless network connections, authentication is more common for wireless network connections.
    • NotMediaConnected
      Set if the network interface is not in a media-connected state. If a network cable is unplugged for a wired network, this would be set. For a wireless network, this is set for the network adapter that is not connected to a network.
    • Paused
      Set if the network stack for the network interface is in the paused or pausing state. This does not mean that the device is in a hibernated state.
    • LowPower
      Set if the network interface is in a low power state.
    • EndPointInterface
      Set if the network interface is an endpoint device and not a true network interface that connects to a network. This can be set by devices such as smartphones which use networking infrastructure to communicate to the PC but do not provide connectivity to an external network. It is mandatory for these types of devices to set this flag.
  • OperStatus
    The operational status for the interface as defined in RFC 2863. This member can be one of the values from the IF_OPER_STATUS enumeration type that is defined in the Ifdefh header file.

    Value

    Meaning

    IfOperStatusUp

    1

    The interface is up and able to pass packets.

    IfOperStatusDown

    2

    The interface is down and not in a condition to pass packets. The IfOperStatusDown state has two meanings, depending on the value of AdminStatus member. If AdminStatus is not set to NET_IF_ADMIN_STATUS_DOWN and ifOperStatus is set to IfOperStatusDown then a fault condition is presumed to exist on the interface. If AdminStatus is set to IfOperStatusDown, then ifOperStatus will usually also be set to IfOperStatusDown or IfOperStatusNotPresent and there is not necessarily a fault condition on the interface.

    IfOperStatusTesting

    3

    The interface is in testing mode.

    IfOperStatusUnknown

    4

    The operational status of the interface is unknown.

    IfOperStatusDormant

    5

    The interface is not actually in a condition to pass packets (it is not up), but is in a pending state, waiting for some external event. For on-demand interfaces, this new state identifies the situation where the interface is waiting for events to place it in the IfOperStatusUp state.

    IfOperStatusNotPresent

    6

    A refinement on the IfOperStatusDown state which indicates that the relevant interface is down specifically because some component (typically, a hardware component) is not present in the managed system.

    IfOperStatusLowerLayerDown

    7

    A refinement on the IfOperStatusDown state. This new state indicates that this interface runs on top of one or more other interfaces and that this interface is down specifically because one or more of these lower-layer interfaces are down.

  • AdminStatus
    The administrative status for the interface as defined in RFC 2863. This member can be one of the values from the NET_IF_ADMIN_STATUS enumeration type that is defined in the Ifdefh header file.

    Value

    Meaning

    NET_IF_ADMIN_STATUS_UP

    1

    The interface is initialized and enabled. But the interface is not necessarily ready to transmit and receive network data because that depends on the operational status of the interface.

    NET_IF_ADMIN_STATUS_DOWN

    2

    The interface is down, and this interface cannot be used to transmit or receive network data.

    NET_IF_ADMIN_STATUS_TESTING

    3

    The interface is in a test mode, and no network data can be transmitted or received.

  • MediaConnectState
    The connection state of the interface. This member can be one of the values from the NET_IF_MEDIA_CONNECT_STATE enumeration type that is defined in the Ifdefh header file.

    Value

    Meaning

    MediaConnectStateUnknown

    0

    The connection state of the interface is unknown.

    MediaConnectStateConnected

    1

    The interface is connected to the network.

    MediaConnectStateDisconnected

    2

    The interface is not connected to the network.

  • NetworkGuid
    The GUID that is associated with the network to which the interface belongs.
  • ConnectionType
    The NDIS network interface connection type. This member can be one of the values from the NET_IF_CONNECTION_TYPE enumeration type that is defined in the Ifdefh header file.

    Value

    Meaning

    NET_IF_CONNECTION_DEDICATED

    1

    The connection type is dedicated. The connection comes up automatically when media sense is TRUE For example, an Ethernet connection is dedicated.

    NET_IF_CONNECTION_PASSIVE

    2

    The connection type is passive. The remote end must bring up the connection to the local station. For example, a RAS interface is passive.

    NET_IF_CONNECTION_DEMAND

    3

    The connection type is demand-dial. A connection of this type comes up in response to a local action (sending a packet, for example).

    NET_IF_CONNECTION_MAXIMUM

    4

    The maximum possible value for the NET_IF_CONNECTION_TYPE enumeration type. This is not a legal value for ConnectionType member.

  • 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 is received without errors through this interface This value includes octets in unicast, broadcast, and multicast packets.
  • InUcastPkts
    The number of unicast packets received without errors through this interface.
  • InNUcastPkts
    The number of non-unicast packets 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 is received without errors in unicast packets through this interface.
  • InMulticastOctets
    The number of octets of data that is received without errors in multicast packets through this interface.
  • InBroadcastOctets
    The number of octets of data that is received without errors in broadcast packets through this interface.
  • OutOctets
    The number of octets of data transmitted without errors through this interface. This value includes octets in unicast, broadcast, and multicast packets.
  • OutUcastPkts
    The number of unicast packets transmitted without errors through this interface.
  • OutNUcastPkts
    The number of non-unicast packets 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 transmitted without errors in unicast packets through this interface.
  • OutMulticastOctets
    The number of octets of data transmitted without errors in multicast packets through this interface.
  • OutBroadcastOctets
    The number of octets of data transmitted without errors in broadcast packets through this interface.
  • OutQLen
    The transmit queue length This field is currently not used.

Remarks

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

Notice that the Netioapih header file is automatically included in the Iphlpapih header file. The Netioapih header file should never be used directly.

Requirements

Header

ws2def.h,
ws2ipdef.h

See Also

Reference

MIB Structures
GetIfEntry2
GetIfTable2
MIB_IF_TABLE2
NET_LUID

Other Resources

NET_IF_ACCESS_TYPE
NET_IF_ADMIN_STATUS
NET_IF_CONNECTION_TYPE
NET_IF_DIRECTION_TYPE
NET_IF_MEDIA_CONNECT_STATE
TUNNEL_TYPE