Set-Dhcp
Serverv4Dns
Setting
Syntax
Set-DhcpServerv4DnsSetting
[-ComputerName <String>]
[-NameProtection <Boolean>]
[-UpdateDnsRRForOlderClients <Boolean>]
[-DeleteDnsRROnLeaseExpiry <Boolean>]
[-DynamicUpdates <String>]
[[-IPAddress] <IPAddress>]
[[-ScopeId] <IPAddress>]
[-PassThru]
[-PolicyName <String>]
[-DisableDnsPtrRRUpdate <Boolean>]
[-DnsSuffix <String>]
[-CimSession <CimSession[]>]
[-ThrottleLimit <Int32>]
[-AsJob]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
The Set-DhcpServerv4DnsSetting cmdlet configures how the Dynamic Host Configuration Protocol (DHCP) server service updates the DNS server by using the client-related information. This cmdlet modifies the effective DNS update setting and sets the setting on the server or the specified scope, policy or reservation.
Specify at least one parameter related to DNS update settings from the following parameters:
- DeleteDnsRROnLeaseExpiry
- DynamicUpdates
- NameProtection
- UpdateDnsRRForOlderClients
- DnsSuffix
- DisableDnsPtrRRUpdate
If you do not specify any of the ScopeId , IPAddress , or PolicyName parameters together with the parameters for DNS update settings, the specified DNS update settings are set for the server level.
If you specify ScopeId , the DNS settings are set for the scope. If you specify PolicyName , the DNS settings are set for the server level policy. If you specify both ScopeId and PolicyName , the DNS settings are set for the scope level policy.
If you specify IPAddress , the DNS settings are set for the reservation. Do not specify IPAddress with ScopeID or PolicyName .
Examples
Example 1: Set server level configuration settings
PS C:\> Set-DhcpServerv4DnsSetting -ComputerName "dhcpserver.contoso.com" -DynamicUpdates "Always" -DeleteDnsRRonLeaseExpiry $True
This example sets the server level, or server-wide, DNS update configuration settings to always update DNS with leases entries and deletes the client entry from DNS when the lease expires.
Example 2: Set configuration settings for a scope
PS C:\> Set-DhcpServerv4DnsSetting -ComputerName "dhcpserver.contoso.com" -ScopeId 10.10.10.0 -DynamicUpdates "OnClientRequest" -NameProtection $True
This example sets the DNS update configuration settings for scope 10.10.10.0 to update the DNS with leases entries based on client request, indicated in the FQDN option (option ID 81), and enables name protection by creating dynamic host configuration identifier (DHCID) resource records.
Example 3: Set update configuration settings
PS C:\> Set-DhcpServerv4DnsSetting -ComputerName "dhcpserver.contoso.com" -IPAddress 10.10.10.5 -DynamicUpdates "Never"
This example sets the DNS update configuration settings for the reserved IP address 10.10.10.5 to never update the DNS for client lease entries. This cmdlet clears all of the properties other than the property that is specified.
Example 4: Set update configuration settings for a server policy with DisableDnsPtrRRUpdates
PS C:\> Set-DhcpServerv4DnsSetting -ComputerName "dhcpserver.contoso.com" -DisableDnsPtrRRUpdates $True -PolicyName "WorkgroupDevices"
This example sets DNS update configuration settings for the sever policy WorkgroupDevices to disable DNS dynamic updates for PTR records. The command specifies the computer, named dhcpserver.contoso.com, that runs the DHCP server service.
Example 5: Set update configuration settings for a server policy
PS C:\> Set-DhcpServerv4DnsSetting -ComputerName "dhcpserver.contoso.com" -DnsSuffix "guestdomain.com" -PolicyName "ForeignDevices"
This example sets DNS update configuration settings for the sever policy ForeignDevices to enable DNS registration of clients under the DNS suffix guestdomain.com. The command specifies the computer, named dhcpserver.contoso.com, that runs the DHCP server service.
Optional Parameters
Runs the cmdlet as a background job.
Use this parameter to run commands that take a long time to complete.
The cmdlet immediately returns an object that represents the job and then displays the command prompt.
You can continue to work in the session while the job completes.
To manage the job, use the
*-Job
cmdlets.
To get the job results, use the
Receive-Job
cmdlet.
For more information about Windows PowerShell® background jobs, see
about_Jobs
.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
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.
Type: | CimSession[] |
Aliases: | Session |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifies the DNS name, or IPv4 or IPv6 address, of the target computer that runs the DHCP server service.
Type: | String |
Aliases: | Cn |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Prompts you for confirmation before running the cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifies that the DHCP server service should delete the DNS resource records for the client after the lease expires. This parameter can only be set if the DynamicUpdate parameter is set to Always or OnClientRequest.
Type: | Boolean |
Position: | Named |
Default value: | None |
Accept pipeline input: | True (ByPropertyName) |
Accept wildcard characters: | False |
Indicates whether the DHCP server performs the dynamic DNS registration of only A records. If this value is $True, the DHCP server performs registration for only A records. If this value is $False, the server performs registration of both A and PTR records.
Type: | Boolean |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifies a guest DNS suffix for registering DHCP clients with the DNS server. The string must contain at least one character and cannot exceed 256 characters. Do not specify this parameter unless you specify the PolicyName parameter.
Type: | String |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifies the conditions under which to perform dynamic updates on the DNS server. The acceptable values for this parameter are:
- Always. The DHCP server service always performs dynamic DNS registration of A and PTR records for the clients.
- Never. The DHCP server service does not perform any dynamic DNS registration
- OnClientRequest. The DHCP server service performs dynamic DNS registration of A and PTR records if the client has requested the same in the DHCP client message.
Type: | String |
Parameter Sets: | Always, Never, OnClientRequest |
Position: | Named |
Default value: | None |
Accept pipeline input: | True (ByPropertyName) |
Accept wildcard characters: | False |
Specifies the IPv4 address of the reservation for which the specified DNS update settings are being set.
Type: | IPAddress |
Aliases: | ReservedIP |
Position: | 2 |
Default value: | None |
Accept pipeline input: | True (ByPropertyName) |
Accept wildcard characters: | False |
Specifies the enabled state for the DNS name protection on the DHCP server service. If this parameter is set to True, DNS name protection is enabled. If this parameter is set to True and there is an existing DNS record matching the name, the DNS update for the client fails instead of being overwritten.
Type: | Boolean |
Position: | Named |
Default value: | None |
Accept pipeline input: | True (ByPropertyName) |
Accept wildcard characters: | False |
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 |
Specifies the name of a policy.
Type: | String |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specifies the scope identifier, in IPv4 address format, for which the DNS update settings are set.
Type: | IPAddress |
Position: | 1 |
Default value: | None |
Accept pipeline input: | True (ByPropertyName) |
Accept wildcard characters: | False |
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 |
Specifies the enabled state for the DNS registration of A and PTR records for older clients which do not request DNS updates.
Type: | Boolean |
Position: | Named |
Default value: | None |
Accept pipeline input: | True (ByPropertyName) |
Accept wildcard characters: | False |
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Inputs
Microsoft.Management.Infrastructure.CimInstance#root/Microsoft/Windows/DHCP/DhcpServerv4DnsSetting
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/DhcpServerv4DnsSetting
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.