After much research, we have found that it is possible to capture the configured speed of network cards. This is found in the root\WMI namespace in the MSNdis_LinkSpeed class.
Note that the link speed is the configured speed regardless of whether it is automatically or manually configured.
Also, the speed is in KB and the right-most digit is a single decimal. That means that 100000 is 10,000.0 KB/S.
Here is a sample custom inventory source:
<InventoryClasses> <InventoryClass name='linkspeed' manufacturer='Altiris' description='' version='1.0' platform='Win32' mifClass='Altiris|MyCustomClass|1.0'> <xml xmlns:s="uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> <s:Schema id="RowsetSchema"> <s:ElementType name="row" content="eltOnly" rs:updatable="true"> <s:AttributeType name="c0" rs:name="Active" rs:number="1" rs:nullable="true" mifAttrId="1"> <s:datatype dt:type="string" dt:maxLength="255"/> </s:AttributeType> <s:AttributeType name="c1" rs:name="InstanceName" rs:number="2" rs:nullable="true" mifAttrId="2"> <s:datatype dt:type="string" dt:maxLength="255"/> </s:AttributeType> <s:AttributeType name="c2" rs:name="NdisLinkSpeed" rs:number="3" rs:nullable="true" mifAttrId="3"> <s:datatype dt:type="string" dt:maxLength="255"/> </s:AttributeType> </s:ElementType> </s:Schema> <rs:data> <%foreach wmiobject="o" namespace="root\WMI" wql="SELECT * FROM MSNdis_LinkSpeed" %> <z:row c0 ="<%writexml "wmi:o.Active"%>" c1 ="<%writexml "wmi:o.InstanceName"%>" c2 ="<%writexml "wmi:o.NdisLinkSpeed"%>" /> <%next%> </rs:data> </xml> </InventoryClass> </InventoryClasses>