PPP vs. Ethernet network adapters
-
I'm using GetIfTable() to find out what network adapters are on a PC and generally it works fine. However, I get some odd results on a few customers' computers. Normally I get back an array of MIB_IFROW structures, whose dwIndex member are numbered sequentially, starting from 1. For example, on a PC with two network cards I get back something that looks like this:
dwIndex = 1 ; dwType = MIB_IF_TYPE_LOOPBACK
dwIndex = 2 ; dwType = MIB_IF_TYPE_ETHERNET
dwIndex = 3 ; dwType = MIB_IF_TYPE_ETHERNETHowever, some customers are getting this:
dwIndex = 1 ; dwType = MIB_IF_TYPE_LOOPBACK
dwIndex = 0x00020003 ; dwType = MIB_IF_TYPE_PPPAnyone know what exactly this kind of network adapter is and why it's not identifying itself as MIB_IF_TYPE_ETHERNET? My understanding of PPP was never real hot but AFAICT, it's a data link layer protocol and so can be used instead of Ethernet (although there is a hack that lets PPP be simulated over an Ethernet network). What common scenarios are out there where people would be running PPP instead of Ethernet? And why does this guy's adapter have the weird dwIndex. It's almost like it's trying to shove 2 cards into the one MIB_IFROW record :-)
0 bottles of beer on the wall, 0 bottles of beer, you take 1 down, pass it around, 4294967295 bottles of beer on the wall. Awasu 2.2.5 [^]: A free RSS/Atom feed reader with support for Code Project. 50% discount on the paid editions for CP members!
-
I'm using GetIfTable() to find out what network adapters are on a PC and generally it works fine. However, I get some odd results on a few customers' computers. Normally I get back an array of MIB_IFROW structures, whose dwIndex member are numbered sequentially, starting from 1. For example, on a PC with two network cards I get back something that looks like this:
dwIndex = 1 ; dwType = MIB_IF_TYPE_LOOPBACK
dwIndex = 2 ; dwType = MIB_IF_TYPE_ETHERNET
dwIndex = 3 ; dwType = MIB_IF_TYPE_ETHERNETHowever, some customers are getting this:
dwIndex = 1 ; dwType = MIB_IF_TYPE_LOOPBACK
dwIndex = 0x00020003 ; dwType = MIB_IF_TYPE_PPPAnyone know what exactly this kind of network adapter is and why it's not identifying itself as MIB_IF_TYPE_ETHERNET? My understanding of PPP was never real hot but AFAICT, it's a data link layer protocol and so can be used instead of Ethernet (although there is a hack that lets PPP be simulated over an Ethernet network). What common scenarios are out there where people would be running PPP instead of Ethernet? And why does this guy's adapter have the weird dwIndex. It's almost like it's trying to shove 2 cards into the one MIB_IFROW record :-)
0 bottles of beer on the wall, 0 bottles of beer, you take 1 down, pass it around, 4294967295 bottles of beer on the wall. Awasu 2.2.5 [^]: A free RSS/Atom feed reader with support for Code Project. 50% discount on the paid editions for CP members!
I have no personal experience of this enumeration, but PPP is the protocol usually used in dial-up, so I assume that you may see this on computers with dial-up network options.
Peter "Until the invention of the computer, the machine gun was the device that enabled humans to make the most mistakes in the smallest amount of time."
-
I have no personal experience of this enumeration, but PPP is the protocol usually used in dial-up, so I assume that you may see this on computers with dial-up network options.
Peter "Until the invention of the computer, the machine gun was the device that enabled humans to make the most mistakes in the smallest amount of time."
cp9876 wrote:
PPP is the protocol usually used in dial-up
Hmmm, I seem to have vague memories of that. Jeez, it's been a long time since I was on dial-up :-) So I guess that means a card could identify itself as Ethernet or PPP depending on what it was plugged in to. Sigh... :-(
0 bottles of beer on the wall, 0 bottles of beer, you take 1 down, pass it around, 4294967295 bottles of beer on the wall. Awasu 2.2.5 [^]: A free RSS/Atom feed reader with support for Code Project. 50% discount on the paid editions for CP members!
-
cp9876 wrote:
PPP is the protocol usually used in dial-up
Hmmm, I seem to have vague memories of that. Jeez, it's been a long time since I was on dial-up :-) So I guess that means a card could identify itself as Ethernet or PPP depending on what it was plugged in to. Sigh... :-(
0 bottles of beer on the wall, 0 bottles of beer, you take 1 down, pass it around, 4294967295 bottles of beer on the wall. Awasu 2.2.5 [^]: A free RSS/Atom feed reader with support for Code Project. 50% discount on the paid editions for CP members!
PPP is normally used over a modem link, so I would have thought that you would see this for modem cards configured for network access (not ethernet cards), but I'm guessing!
Peter "Until the invention of the computer, the machine gun was the device that enabled humans to make the most mistakes in the smallest amount of time."