InventoryScanDefaults

Starting values for InventoryScanRequest. Every one of these is a default only - callers override per scan, nothing here is read as configuration.

public static class InventoryScanDefaults

1. Fields

1.1. MaxAddressesPerMacAddress

How many addresses one MAC may claim on ARP evidence alone before the whole group is read as an artifact rather than as devices.

A MAC belongs to one NIC. Two or three addresses on it is a multi-homed host; a hundred is proxy ARP - a VPN / TAP adapter or a router answering for a range it routes. Windows SendARP against an address behind an OpenVPN TAP adapter (MAC block 00:FF:*) synthesizes a reply for EVERY address, which without this ceiling reports a full /24 of devices that do not exist.

public const int MaxAddressesPerMacAddress

1.2. MaxConcurrency

Addresses probed at once. Bounded so a sweep does not exhaust sockets.

public const int MaxConcurrency

1.3. MaxTargets

Refuse to expand a target set beyond this. A fat-fingered /8 is a mistake, not a 16-million-address scan.

public const int MaxTargets

1.4. MinimumLocalPrefixLength

Widest attached network LocalNetworkProvider will offer up for a full sweep. /22 is 1022 hosts - a large office. A NIC sitting on a /16 is almost always a VPN or container bridge whose whole range nobody means to walk.

public const int MinimumLocalPrefixLength

1.5. ProbeTimeout

Per-probe timeout. Short: a scan walks hundreds of addresses.

public static readonly TimeSpan ProbeTimeout

2. Properties

2.1. TcpPorts

Ports probed when the caller does not supply a list. Chosen for classification value: each one tells IDeviceClassifier something distinct.

public static IReadOnlyList<Port> TcpPorts { get; }