Discovery Mechanism

This part of the discovery depends on whether you are discovering components installed on Windows machines, UNIX-based machines, or Nexus machines. For details on the DFM processes, see:

Note

  • DFM runs through the credentials defined for the protocol and tries to connect successfully through one of them. Whenever there is a successful connection, the discovery remembers the last successful credential and caches it for reuse the next time the discovery is run.

  • If the credentials (last used for this destination) do not exist, DFM iterates through the list of all configured shell credentials.

    DFM uses the following flow for this iteration: SSH, then Telnet, then NTCMD protocol credentials, to try to connect to the discovered destination.

    DFM skips credential entry if the IP Address of the discovered destination is outside the IP range scope of the credential.

    DFM immediately stops using a protocol for the discovered destination if:

    • There is no agent on the remote machine

    • Connection is refused

    • Connection times out

    • There is an IO exception on opening a socket

    DFM stops iteration through the list of configured credentials if:

    • It successfully establishes connection

    • It fails to connect to the discovered destination after trying all configured credentials

Windows Processes

This section describes the part of the workflow that DFM performs for discovering components residing on Windows machines.

  1. DFM discovers host attributes (OS name, version, build number, service pack, installation type). DFM starts by using the first instruction in the following list to discover the host attributes. If that fails, DFM continues to the next:

    1. WMIC "OS" object;

      Full command:

      'wmic os get caption, otherTypeDescription, version, buildnumber, csdversion /format:list < %SystemRoot%\win.ini'

    2. Windows registry;

      Full query:

      HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion VER command; %SYSTEMROOT%\system32\prodspec.ini processing

  2. Define BIOS UUID (wmic)

    Full command:

    'wmic path win32_ComputerSystemProduct get uuid /format:list < %SystemRoot%\win.ini' 

  3. Define the default gateway (netstat).

    Full command:

    'netstat -r -n'

  4. Define the DNS server IPs (ipconfig).

  5. Define the boot date.

    Full command:

    'wmic OS Get LastBootUpTime /format:list < %SystemRoot%\win.ini'

  6. Define the network interfaces. The wmic command is used first because it retrieves more information about the interface. If that fails, the output of the ipconfig command is used.

    1. Querying NICCONFIG object we get information about MAC address, IP addresses, interface description, subnet IPs, dynamic or static flag.

      Full command:

      'wmic nicconfig where "MACAddress <> NULL" get IPAddress,MACAddress,IPSubnet,Description,DhcpEnabled /format:list < %SystemRoot%\\win.ini'

    2. IP filtering. Malformed and local IPs are ignored.

  7. DFM checks whether the destination IP is local. If it is, DFM reports the host and IP only. If it is not local:

    1. DFM reports network interfaces apart from:

      • Interfaces that do not have a MAC address

      • Interfaces that belong to one of the following types: loopback, wireless, virtual, WAN miniport, RAS ASYNC, Bluetooth, FireWire, VPN, IPv6 tunneling.

      • The VMware interface, if ignoreVmwareInterfaces is set to true in the globalSettings.xml configuration file.

    2. DFM reports networks, IPs, and corresponding links.

UNIX-Based Processes

This section describes the part of the workflow that DFM performs for discovering components residing on UNIX-based machines. DFM defines the Operating System. For details, see the descriptions below of what DFM discovers for the following Operating Systems:

Full command:'uname -a'

Note

Before reporting the discovery, DFM makes the following verifications:

  • If the destination IP is a virtual address, only the IP and host are reported.

  • In the case of the ZLinux OS, when the host model is s390x, the host is defined by the IP and domain name.

  • If the interface has an invalid MAC address, DFM does not report it.

Nexus Processes

This section describes the part of the workflow that DFM performs for discovering components residing on Nexus machines.

  1. DFM gets the host name using the command sh hostname.
  2. DFM gets version, build and feature information for the switch using the command sh ver.
  3. DFM gets dns server and local host data using the command sh hosts.
  4. DFM get interface and configured IP information using the command sh int.