This documentation supports the 20.08 (12.1) version of BMC Discovery.To view an earlier version of the product, select the version from the Product version menu.

Configuring Windows NIC discovery


Windows NIC discovery is configured in the $TIDEWAY/etc/winproxy.conf file. There are two sections for each card type:

  • A regex to identify the card type
  • A lookup list for speed, duplex, and negotiation information

The various adapters are configured in the <adapters> section. An annotated excerpt of the winproxy.conf file is shown in the following sections.

Adapters section

The adapters section begins with the <adapters> statement:

<adapters>

Search expression

The next statement is a regular expression to search for in the adapter key in the registry. This is specified in the <adapter> statement.

   <!-- regex to find the adapter type eg. "^Intel(R) PRO/100" -->
   <adapter match="^Intel(R) PRO/100">

The search is performed on the hive "HKLM" and the key SYSTEM\CurrentControlSet\Control\Class\ {4D36E972-E325-11CE-BFC1-08002BE10318}.

Search parameter

You specify the parameter name, which in this case, is SpeedDuplex:

      <adapter-key name="SpeedDuplex"/>
      <!-- name in registry key to search for info eg. SpeedDuplex -->

The names of some network cards might contain special characters (for example, '*'). For these cards, you must specify the actual attribute; for example:

      <adapter-key name="SpeedDuplex" actual="*SpeedDuplex"/>

When you define the network card name, ensure that the adapter-key name matches the adapter-map name. In this example, it is SpeedDuplex.

With other network cards, you might need to search for different parameter names in the registry key; for example:

   <adapter match="^Realtek RTL8139 Family PCI Fast Ethernet NIC">
      <adapter-key name="DuplexMode"/>

Speed Duplex and Negotiation Determination

The parameter name you search for returns an integer. The value of the integer represents the particular combination of speed, duplex, and negotiation currently in use on that card. The following table shows an example (in this case, for the SpeedDuplex parameter in the Intel® PRO/100 network card):

An <adapter-map ParameterName="value"> statement block is entered for each value expected for the parameter name. Contained in this statement are adapter-value statements with name-value pairs for (in this case) speed, duplex, and negotiation; for example:


      <adapter-map SpeedDuplex="1">
         <adapter-value name="speed" value="10"/>
         <adapter-value name="duplex" value="HALF"/>
         <adapter-value name="negotiation" value="FORCED"/>
      </adapter-map>

Example Mapping

The following section shows an example for the Intel® PRO/100 network card:

      <adapter-key name="SpeedDuplex" actual="*SpeedDuplex"/>
            <adapter-map SpeedDuplex="0">
                <adapter-value name="speed" value=""/>
                <adapter-value name="duplex" value=""/>
                <adapter-value name="negotiation" value="AUTO"/>
            </adapter-map>
            <adapter-map SpeedDuplex="1">
                <adapter-value name="speed" value="10"/>
                <adapter-value name="duplex" value="HALF"/>
                <adapter-value name="negotiation" value="FORCED"/>
            </adapter-map>
            <adapter-map SpeedDuplex="2">
                <adapter-value name="speed" value="10"/>
                <adapter-value name="duplex" value="FULL"/>
                <adapter-value name="negotiation" value="FORCED"/>
            </adapter-map>
            <adapter-map SpeedDuplex="3">
                <adapter-value name="speed" value="100"/>
                <adapter-value name="duplex" value="HALF"/>
                <adapter-value name="negotiation" value="FORCED"/>
            </adapter-map>
            <adapter-map SpeedDuplex="4">
                <adapter-value name="speed" value="100"/>
                <adapter-value name="duplex" value="FULL"/>
                <adapter-value name="negotiation" value="FORCED"/>
            </adapter-map>
            <adapter-map SpeedDuplex="6">
                <adapter-value name="speed" value="1000"/>
                <adapter-value name="duplex" value="FULL"/>
                <adapter-value name="negotiation" value="AUTO"/>

Finally, the adapter and adapter XML statements are closed:

   </adapter>
</adapters>

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*