PowerShell Commands

Get-NetIPInterface

Get-NetIPInterface [[-InterfaceAlias] <String[]>] [-AddressFamily <AddressFamily[]>] [-AdvertiseDefaultRoute<AdvertiseDefaultRoute[]>] [-AdvertisedRouterLifetime <TimeSpan[]>] [-Advertising <Advertising[]>][-AutomaticMetric <AutomaticMetric[]>] [-BaseReachableTimeMs <UInt32[]>] [-CimSession <CimSession[]>] [-ClampMss<ClampMss[]>] [-CompartmentId <UInt32[]>] [-ConnectionState <ConnectionState[]>] [-CurrentHopLimit <UInt32[]>][-DadRetransmitTimeMs <UInt32[]>] [-DadTransmits <UInt32[]>] [-Dhcp <Dhcp[]>] [-DirectedMacWolPattern<DirectedMacWolPattern[]>] [-EcnMarking <EcnMarking[]>] [-ForceArpNdWolPattern <ForceArpNdWolPattern[]>][-Forwarding <Forwarding[]>] [-IgnoreDefaultRoutes <IgnoreDefaultRoutes[]>] [-IncludeAllCompartments][-InterfaceIndex <UInt32[]>] [-InterfaceMetric <UInt32[]>] [-ManagedAddressConfiguration<ManagedAddressConfiguration[]>] [-NeighborDiscoverySupported <NeighborDiscoverySupported[]>][-NeighborUnreachabilityDetection <NeighborUnreachabilityDetection[]>] [-NlMtuBytes <UInt32[]>][-OtherStatefulConfiguration <OtherStatefulConfiguration[]>] [-PolicyStore <String>] [-ReachableTimeMs <UInt32[]>][-RetransmitTimeMs <UInt32[]>] [-RouterDiscovery <RouterDiscovery[]>] [-ThrottleLimit <Int32>] [-WeakHostReceive<WeakHostReceive[]>] [-WeakHostSend <WeakHostSend[]>] [<CommonParameters>]
Get-NetIPInterface [-AssociatedAdapter <CimInstance>] [-CimSession <CimSession[]>] [-IncludeAllCompartments][-ThrottleLimit <Int32>] [<CommonParameters>]
Get-NetIPInterface [-AssociatedIPAddress <CimInstance>] [-CimSession <CimSession[]>] [-IncludeAllCompartments][-ThrottleLimit <Int32>] [<CommonParameters>]
Get-NetIPInterface [-AssociatedNeighbor <CimInstance>] [-CimSession <CimSession[]>] [-IncludeAllCompartments][-ThrottleLimit <Int32>] [<CommonParameters>]
Get-NetIPInterface [-AssociatedRoute <CimInstance>] [-CimSession <CimSession[]>] [-IncludeAllCompartments][-ThrottleLimit <Int32>] [<CommonParameters>]

The Get-NetIPInterface cmdlet gets an IP interface, including IPv4 and IPv6 addresses, and the associated address configuration for the IP interfaces. Without parameters, this cmdlet gets all of the IP interface properties on the computer, including virtual interfaces and loopback interfaces.

Parameters

-AddressFamily [<AddressFamily[]>]

Specifies an array of IP address families. The cmdlet gets the IP interface that matches the address families. The acceptable values for this parameter are:

-- IPv4 -- IPv6

-AdvertiseDefaultRoute [<AdvertiseDefaultRoute[]>]

Specifies an array of default router advertisement values for an IP interface. The acceptable values for this parameter are:

-- Enabled -- Disabled

-AdvertisedRouterLifetime [<TimeSpan[]>]

Specifies an array of lifetimes, as TimeSpan objects, for default routes. This parameter indicates the lifetime of default routes when advertising routes on the IP interface. The default value is 1800. Valid only for advertising interfaces. To obtain a TimeSpan object, use the New-TimeSpan cmdlet.

-Advertising [<Advertising[]>]

Specifies an array of router advertisement values for the IP interface. The acceptable values for this parameter are:

-- Enabled -- Disabled

The default value is Disabled.

-AssociatedAdapter [<CimInstance>]

  • Accepts pipeline input ByValue

Specifies a network adapter as a CIM object.

-AssociatedIPAddress [<CimInstance>]

  • Accepts pipeline input ByValue

Specifies a network IP address as a CIM object. To obtain an IP address object, use the Get-NetIPAddress cmdlet.

-AssociatedNeighbor [<CimInstance>]

  • Accepts pipeline input ByValue

Specifies a network neighbor as a CIM object. To obtain a neighbor object, use the Get-NetNeighbor cmdlet.

-AssociatedRoute [<CimInstance>]

  • Accepts pipeline input ByValue

Specifies a network route as a CIM object. To obtain a route object, use the Get-NetRoute cmdlet.

-AutomaticMetric [<AutomaticMetric[]>]

Specifies an array of values for the automatic metric calculation. Automatic metric determines whether TCP/IP automatically calculates a value for an interface metric that is based on the speed of the interface. The fastest interface has the lowest interface metric value. The acceptable values for this parameter are:

-- Enabled -- Disabled

-BaseReachableTimeMs [<UInt32[]>]

Specifies an array of base values of random reachable times, in milliseconds.

-CimSession [<CimSession[]>]

Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a New-CimSession or Get-CimSession cmdlet. The default is the current session on the local computer.

-ClampMss [<ClampMss[]>]

Specifies an array of MSS clamping values for IP interface. This value determines if the IP interface clamps MSS on the forwarded TCP packets that are sent out of the interface. The acceptable values for this parameter are:

-- Enabled-- Disabled

-CompartmentId [<UInt32[]>]

Specifies an array of identifiers for network compartments in the protocol stack. By default, the cmdlet only gets Net IP interfaces in the default compartment. If you specify a value, the cmdlet gets any matching NetIPInterface in all compartments in this field.

-ConnectionState [<ConnectionState[]>]

Specifies an array of connection states for interfaces that are physically connected to a network.

-CurrentHopLimit [<UInt32[]>]

Specifies an array of hop limits. This parameter is the value that the IP interface writes in the hop limit for IPv6, or the Time To Live (TTL) field, for IPv4, in all outbound traffic. When forwarding a packet, routers must decrement the hop limit, or TTL, by 1, and discard the packet when the hop limit reaches 0.

-DadRetransmitTimeMs [<UInt32[]>]

Specifies an array of values for the time interval between neighbor solicitation messages.

-DadTransmits [<UInt32[]>]

Specifies an array of values for the number of consecutive messages sent while the network driver performs duplicate address detection.

-Dhcp [<Dhcp[]>]

Specifies the DHCP value for an IP interface. This value is persistent across reboots and only stored in the active policy store. The acceptable values for this parameter are:

-- Enabled -- Disabled

The default value is Enabled.

-DirectedMacWolPattern [<DirectedMacWolPattern[]>]

Specifies an array of values for the wake-up packet for an IP interface. This parameter determines if an IP interface is configured to wake up a computer with directed MAC packet patterns. The acceptable values for this parameter are:

-- Enabled -- Disabled

The default value is Disabled.

-EcnMarking [<EcnMarking[]>]

Specifies an array of values for Explicit Congestion Notification (ECN) marking. This parameter value controls the specific ECN marking in the ECN field of the IP header. The acceptable values for this parameter are:

-- AppDecide. Allow an application or higher layer protocol, such as TCP, to decide how to apply ECN marking. In order for an application to fully control ECN capability value in the Network TCP value must also be set to enabled. -- Disabled. Disable the ECN marking on the IP interface. -- UseEct0. Mark all of the egress IP packets on the IP interface with the Ect0 bit set. -- UseEct1. Mark all of the egress IP packets on the IP interface with the Ect1 bit set.

The default value is AppDecide.

-ForceArpNdWolPattern [<ForceArpNdWolPattern[]>]

Specifies an array of Wake On LAN (WOL) values for the IP interface. This parameter determines if an IP interface is configured to wake up a computer with Address Resolution Protocol (ARP) and Neighbor Discovery (ND) packet patterns. By default, IP interface properties have ForceArpNdWolPattern set to disabled. The acceptable values for this parameter are:

-- Enabled -- Disabled

-Forwarding [<Forwarding[]>]

Specifies an array of packet forwarding values for the IP interface. This value determines if this IP interface forwards packets that arrive on this interface to other interfaces. The acceptable values for this parameter are:

-- Enabled -- Disabled

-IgnoreDefaultRoutes [<IgnoreDefaultRoutes[]>]

Specifies an array of values for default route advertisements. If you enable this value, default routes will not be dynamically added to the routing table. The acceptable values for this parameter are:

-- Enabled -- Disabled

The default value is Disabled.

-IncludeAllCompartments [<SwitchParameter>]

Indicates that the cmdlet includes all non-default compartments.

-InterfaceAlias [<String[]>]

  • Accepts pipeline input ByPropertyName

Specifies an array of aliases of network interfaces. The cmdlet gets IP interfaces that match the aliases.

-InterfaceIndex [<UInt32[]>]

  • Accepts pipeline input ByPropertyName

Specifies an array of indexes of network interfaces. The cmdlet gets IP interfaces that match the indexes.

-InterfaceMetric [<UInt32[]>]

Specifies an array of metrics of IP interfaces. When routes are chosen, the overall metric used to determine the preference is the sum of the route metric and the interface metric. Typically, the interface metric gives preference to a particular interface, such as using wired if both wired and wireless are available. The default value is automatic.

-ManagedAddressConfiguration [<ManagedAddressConfiguration[]>]

Specifies an array of values of managed address configurations. This parameter determines if an IP interface uses a stateful protocol, such as DHCP, to obtain an address. Setting this parameter will have no effect on an interface that has router discovery enabled and advertising disabled. In that case, the parameter is controlled by router discovery. The acceptable values for this parameter are:

-- Enabled -- Disabled

-NeighborDiscoverySupported [<NeighborDiscoverySupported[]>]

Specifies an array of neighbor discovery values for the IP interface. The acceptable values for this parameter are:

-- Enabled -- Disabled

-NeighborUnreachabilityDetection [<NeighborUnreachabilityDetection[]>]

Specifies an array of values for Neighbor Unreachability Detection (NUD). Use this parameter to determine when a neighbor is no longer reachable.

-- Enabled -- Disabled

-NlMtuBytes [<UInt32[]>]

Specifies an array of network layer Maximum Transmission Unit (MTU) values, in bytes, for an IP interface. The IP interface will not transmit packets larger than the maximum value.

-OtherStatefulConfiguration [<OtherStatefulConfiguration[]>]

Specifies an array of values for configuration other than addresses. This parameter determines if an IP interface uses a stateful protocol, such as DHCP, to obtain configuration information other than addresses. This parameter value has no effect on an interface that has router discovery enabled and advertising disabled. In that case, the parameter is controlled by router discovery. The acceptable values for this parameter are:

-- Enabled -- Disabled

-PolicyStore [<String>]

Specifies a PolicyStore value. The acceptable values for this parameter are:

-- ActiveStore. The IP address information is valid. -- PersistentStore. The computer saves IP address information across restarts. When the computer restarts, it copies the saved settings to the ActiveStore.

The default value is ActiveStore.

-ReachableTimeMs [<UInt32[]>]

Specifies an array of reachable time values. This parameter is the time, in milliseconds, that a node assumes that a neighbor is reachable after having received a reachability confirmation. This parameter works with the NeighborUnreachabilityDetection parameter.

-RetransmitTimeMs [<UInt32[]>]

Specifies an array of value for timeout and retransmission, in milliseconds, for Neighbor Solicitation messages.

-RouterDiscovery [<RouterDiscovery[]>]

Specifies the value for router discovery for an IP interface. The acceptable values for this parameter are:

-- Enabled -- Disabled -- ControlledByDHCP. IP Interface properties for interfaces that have RouterDiscovery controlled by Dynamic Host Configuration Protocol (DHCP).

By default, the value of this parameter is ControlledByDHCP for IPv4 and Enabled for IPv6. If the value of this parameter is enabled, an IP host can locate routers that reside on an attached link.

-ThrottleLimit [<Int32>]

Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If this parameter is omitted or a value of 0 is entered, then Windows PowerShellr calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. The throttle limit applies only to the current cmdlet, not to the session or to the computer.

-WeakHostReceive [<WeakHostReceive[]>]

Specifies the receive value for a weak host model. By default, an IP interface properties set this parameter to disabled. If this parameter is enabled, an IP host can receive IP packets on an interface that is not assigned the destination IP address of the packet being received. The acceptable values for this parameter are:

-- Enabled -- Disabled

-WeakHostSend [<WeakHostSend[]>]

Specifies the send value for a weak host model. By default, an IP interface set this parameter to disabled. If this parameter is enabled, an IP host can send IP packets on an interface that is not assigned the destination IP address of the packet being sent. The acceptable values for this parameter are:

-- Enabled -- Disabled

<CommonParameters>

This cmdlet supports the common parameters: Verbose, Debug,ErrorAction, ErrorVariable, WarningAction, WarningVariable,OutBuffer, PipelineVariable, and OutVariable.

Inputs
None
Outputs
Microsoft.Management.Infrastructure.CimInstance#root\StandardCimv2\MSFT_NetIPInterface
The Microsoft.Management.Infrastructure.CimInstance object is a wrapper class that displays Windows Management Instrumentation (WMI) objects. The path after the pound sign (#) provides the namespace and class name for the underlying WMI object.
Examples
  1. Get IP interface configuration:
    PS C:\> Get-NetIPInterface
    

    This command gets the IP interface configuration on the computer on which you run the cmdlet.

  2. Get IP interface information for IPv6 addresses:
    PS C:\> Get-NetIPInterface -AddressFamily IPv6
    

    This command gets information about the IP interface configuration for all IP interfaces for which you have configured IPv6 addresses.

  3. Get IP interface information and format the output:
    PS C:\> Get-NetIPInterface | Format-Table
    

    This command gets information about IP interface configuration, and displays that information in a table.

  4. Get IP interface information by interface index:
    PS C:\> Get-NetIPInterface -InterfaceIndex 12
    

    This command gets information about the IP interface configuration for a specific interface index.

  5. Get and sort IP interface information:
    PS C:\> Get-NetIPInterface | Sort-Object -Property InterfaceIndex | Format-Table
    

    This command gets information about IP address configuration, sorts them numerically by the interface index in the cmdlet name, and then displays them in a table format.

  6. Get the IP interface by specifying the router lifetime:
    PS C:\> Get-NetIPInterface | Where-Object -FilterScript { $_.AdvertisedRouterLifetime.TotalSeconds -Eq 1800 }
    

    This command gets information about IP address configuration for all IP interfaces that have a default AdvertisedRouterLifetime.

This work is licensed under a Creative Commons Attribution 4.0 International. It is attributed to Microsoft Corporation and can be found here.

PowerShell Commands