Skip to content
PowerShell Commands

Remove-NetIPAddress

Remove-NetIPAddress [[-IPAddress] <String[]>] [-AddressFamily <AddressFamily[]>] [-AddressState <AddressState[]>][-CimSession <CimSession[]>] [-DefaultGateway <String>] [-IncludeAllCompartments] [-InterfaceAlias <String[]>][-InterfaceIndex <UInt32[]>] [-PassThru] [-PolicyStore <String>] [-PreferredLifetime <TimeSpan[]>] [-PrefixLength<Byte[]>] [-PrefixOrigin <PrefixOrigin[]>] [-SkipAsSource <Boolean[]>] [-SuffixOrigin <SuffixOrigin[]>][-ThrottleLimit <Int32>] [-Type <Type[]>] [-ValidLifetime <TimeSpan[]>] [-Confirm] [-WhatIf] [<CommonParameters>]
Remove-NetIPAddress [-CimSession <CimSession[]>] [-PassThru] [-ThrottleLimit <Int32>] [-Confirm] [-WhatIf][<CommonParameters>]

The Remove-NetIPAddress cmdlet removes an IP address and its configuration. To remove a specific IP address object, use the IPv4 Address parameter or IPv6 Address parameter. If you do not specify an IPv4 or IPv6 address, the cmdlet will remove all IP addresses that match.

Parameters

-AddressFamily [<AddressFamily[]>]

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

-- IPv4 -- IPv6

-AddressState [<AddressState[]>]

Specifies an array of duplicate address detection (DAD) state values for the IP address. The acceptable values for this parameter are:

-- Invalid. IP address configuration information for addresses that are not valid and will not be used. -- Tentative. IP address configuration information for addresses that are not used for communication, as the uniqueness of those IP addresses is being verified. -- Duplicate. IP address configuration information for addresses for which a duplicate IP address has been detected and the current IP address will not be used. -- Deprecated. IP address configuration information for addresses that will no longer be used to establish new connections, but will continue to be used with existing connections. -- Preferred. IP address configuration information for addresses that are valid and available for use.

-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.

-DefaultGateway [<String>]

Specifies the IPv4 address or IPv6 address of the default gateway for the host. Default gateways provide a default route for TCP/IP hosts to use when communicating with other hosts on remote networks.

-IncludeAllCompartments [<SwitchParameter>]

Indicates that the cmdlet includes addresses from all configured network compartments. If you do not specify this parameter, the cmdlet removes only addresses in the default network compartment.

-InterfaceAlias [<String[]>]

  • Accepts pipeline input ByPropertyName

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

-InterfaceIndex [<UInt32[]>]

  • Accepts pipeline input ByPropertyName

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

-IPAddress [<String[]>]

  • Accepts pipeline input ByPropertyName

Specifies an array of IPv4 or IPv6 addresses.

-PassThru [<SwitchParameter>]

Returns an object representing the item with which you are working. By default, this cmdlet does not generate any output.

-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.

-PreferredLifetime [<TimeSpan[]>]

Specifies an array of values of preferred lifetimes, as TimeSpan objects, for an IP address. To obtain a TimeSpan object, use the New-TimeSpan cmdlet.

-PrefixLength [<Byte[]>]

Specifies an array of prefix lengths. This parameter defines the local subnet size, and is also known as a subnet mask.

-PrefixOrigin [<PrefixOrigin[]>]

Specifies an array of origins of address prefixes. IP addresses are divided into two parts, the prefix and the suffix. The address prefix identifies the network portion of an IP address, and the address suffix identifies the host portion. The acceptable values for this parameter are:

-- Manual. The IP address prefix was manually specified. -- WellKnown. The IP address prefix is from a well-known source. -- DHCP. The IP address prefix was provided by DHCP settings.

-- RouterAdvertisement. The IP address prefix was obtained through a router advertisement (RA).

-SkipAsSource [<Boolean[]>]

Indicates whether an address is a primary IP address. This parameter identifies the primary IP address for outgoing traffic in a multiple IP address scenario. If this parameter is set to True, the addresses are not used for outgoing traffic and are not registered in DNS.

-SuffixOrigin [<SuffixOrigin[]>]

Specifies an array of origins of address suffixes. IP addresses are divided into two parts, the prefix and the suffix. The address prefix identifies the network portion of an IP address, and the address suffix identifies the host portion. The acceptable values for this parameter are:

-- Manual. The IP address prefix was manually specified. -- WellKnown. The IP address suffix is from a well-known source. -- DHCP. The IP address suffix was provided by DHCP settings. -- Link. The IP address suffix was obtained from the link-layer address. -- Random. The IP address suffix was obtained from a random source.

-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.

-Type [<Type[]>]

Specifies an array of IP address types. The acceptable values for this parameter are:

-- Unicast -- Anycast

The default value is Unicast.

-ValidLifetime [<TimeSpan[]>]

Specifies an array of values of valid lifetimes, as TimeSpan objects, for an IP address. To obtain a TimeSpan object, use the New-TimeSpan cmdlet.

-Confirm [<SwitchParameter>]

  • Default value is false

Prompts you for confirmation before running the cmdlet.Prompts you for confirmation before running the cmdlet.

-WhatIf [<SwitchParameter>]

  • Default value is false

Shows what would happen if the cmdlet runs. The cmdlet is not run.Shows what would happen if the cmdlet runs. The cmdlet is not run.

<CommonParameters>

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

Inputs
Microsoft.Management.Infrastructure.CimInstance#root\StandardCimv2\MSFT_NetIPAddress
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.
Outputs
None
Examples
  1. Remove an IP address:
    PS C:\> New-NetIPAddress -InterfaceIndex 12 -IPAddress 192.168.0.1
    
    PS C:\> Remove-NetIPAddress -IPAddress 192.168.0.1
    

    This command removes the IP address created by the previous command.This command adds a new IP address.

  2. Remove an IP address using a pipeline:
    PS C:\> Get-NetIPAddress -IPAddress 192.168.0.1 | Remove-NetIPAddress
    

    This command removes all of the IP addresses with the address 192.168.0.1.

  3. Remove IP addresses by prefix origin:
    PS C:\> Remove-NetIPAddress -PrefixOrigin Manual
    

    This command removes all of the IP addresses that have a manually-configured prefix origin.

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