Add-DhcpServerv4Reservation

Reserves the specified IPv4 address in the scope for a client.

Syntax

Add-DhcpServerv4Reservation
   [-ScopeId] <IPAddress>
   [-IPAddress] <IPAddress>
   [-ClientId] <String>
   [-AsJob]
   [-CimSession <CimSession[]>]
   [-ComputerName <String>]
   [-Description <String>]
   [-Name <String>]
   [-PassThru]
   [-ThrottleLimit <Int32>]
   [-Type <String>]
   [-Confirm]
   [-WhatIf]

Description

The Add-DhcpServerv4Reservation cmdlet reserves the specified IPv4 address in the scope for a client. Once reserved, the IP address will be leased only to the client identified by the specific client identifier (ID).

Examples

EXAMPLE 1

PS C:\>Add-DhcpServerv4Reservation -ScopeId 10.10.10.0 -IPAddress 10.10.10.8 -ClientId F0-DE-F1-7A-00-5E -Description "Reservation for Printer"

This example adds a reserved IP address for the client identified by the specified client ID.

EXAMPLE 2

PS C:\>Import-Csv -Path Reservations.csv | Add-DhcpServerv4Reservation -ComputerName dhcpserver.contoso.com

This example adds all of the reservations in the file named Reservations.csv to the DHCP server service running on the computer named dhcpserver.contoso.com. The Import-Csvhttp://go.microsoft.com/fwlink/p/?LinkId=113341 cmdlet returns the objects with reservation fields and pipes the objects to this cmdlet, which adds these reservations to the DHCP server services. The file named Reservations.csv should contain the reservations in the following comma-separated values (CSV) format:

ScopeId,IPAddress,Name,ClientId,Description

10.10.10.0,10.10.10.10,Computer1,1a-1b-1c-1d-1e-1f,Reserved for Computer1

20.20.20.0,20.20.20.11,Computer2,2a-2b-2c-2d-2e-2f,Reserved for Computer2

30.30.30.0,30.30.30.12,Computer3,3a-3b-3c-3d-3e-3f,Reserved for Computer3

EXAMPLE 3

PS C:\>Get-DhcpServerv4Lease -ComputerName dhcpserver.contoso.com -IPAddress 10.10.10.11 | Add-DhcpServerv4Reservation -ComputerName dhcpserver.contoso.com

This example converts one of the leases into a reservation. The Get-DhcpServerv4Lease cmdlet returns the IP address lease object and pipes the object to this cmdlet, which creates the reservation with the IP address and client ID in the lease object.

EXAMPLE 4

PS C:\>$freeip = Get-DhcpServerv4FreeIPAddress -ComputerName dhcpserver.contoso.com -ScopeId 10.10.10.0



PS C:\>Add-DhcpServerv4Reservation -ComputerName dhcpserver.contoso.com -ScopeId 10.10.10.0 -IPAddress $freeip -ClientId F0-DE-F1-7A-00-5E -Description "Reservation for Printer"

This example creates a reservation for the client identified by the specified client ID from any of the free IP addresses in the scope 10.10.10.0. The Get-DhcpServerv4FreeIPAddress cmdlet fetches a free IP address in the scope, then this cmdlet reserves an address for the specified client ID.

Required Parameters

-ClientId

Specifies the unique identifier (ID) for the client. For Windows clients, the MAC address is used as the client ID.

Type:String
Position:3
Default value:None
Accept pipeline input:True (ByPropertyName)
Accept wildcard characters:False
-IPAddress

Specifies the IPv4 address to be reserved for the client.

Type:IPAddress
Position:2
Default value:None
Accept pipeline input:True (ByPropertyName)
Accept wildcard characters:False
-ScopeId

Specifies the identifier (ID) of the scope in which the reservation is being created.

Type:IPAddress
Position:1
Default value:None
Accept pipeline input:True (ByPropertyName)
Accept wildcard characters:False

Optional Parameters

-AsJob

ps_cimcommon_asjob

Type:SwitchParameter
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-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-CimSessionhttp://go.microsoft.com/fwlink/p/?LinkId=227967 or Get-CimSessionhttp://go.microsoft.com/fwlink/p/?LinkId=227966 cmdlet. The default is the current session on the local computer.

Type:CimSession[]
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-ComputerName

Specifies the DNS name, or IPv4 or IPv6 address, of the target computer running the Dynamic Host Configuration Protocol (DHCP) server service.

Type:String
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Confirm

Prompts you for confirmation before running the cmdlet.

Type:SwitchParameter
Position:Named
Default value:False
Accept pipeline input:False
Accept wildcard characters:False
-Description

Specifies the description for the reservation being created.

Type:String
Position:Named
Default value:None
Accept pipeline input:True (ByPropertyName)
Accept wildcard characters:False
-Name

Specifies the name of the reservation being created. This parameter value can be the host name of the client or a name to be used to identify the reservation on the DHCP server service.

Type:String
Position:Named
Default value:None
Accept pipeline input:True (ByPropertyName)
Accept wildcard characters:False
-PassThru

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

Type:SwitchParameter
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-ThrottleLimit

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 PowerShell® 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:Int32
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Type

Specifies the type of client request for which this IP address is reserved. The acceptable values for this parameter are: DHCP, BootP, or Both. The default value is Both.

Type:String
Position:Named
Default value:None
Accept pipeline input:True (ByPropertyName)
Accept wildcard characters:False
-WhatIf

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

Type:SwitchParameter
Position:Named
Default value:False
Accept pipeline input:False
Accept wildcard characters:False

Inputs

Microsoft.Management.Infrastructure.CimInstance#root/Microsoft/Windows/DHCP/DhcpServerv4Lease

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.

Inputs

Microsoft.Management.Infrastructure.CimInstance#root/Microsoft/Windows/DHCP/DhcpServerv4Reservation

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.

Inputs

Microsoft.Management.Infrastructure.CimInstance#root/Microsoft/Windows/DHCP/DhcpServerv4Scope

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

Microsoft.Management.Infrastructure.CimInstance#root/Microsoft/Windows/DHCP/DhcpServerv4Reservation

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.