DnsServerDsc

3.0.0

This module contains DSC resources for the management and configuration of Windows Server DNS Server.

Minimum PowerShell version

5.0

There is a newer prerelease version of this module available.
See the version list below for details.

Installation Options

Copy and Paste the following command to install this package using PowerShellGet More Info

Install-Module -Name DnsServerDsc -RequiredVersion 3.0.0

Copy and Paste the following command to install this package using Microsoft.PowerShell.PSResourceGet More Info

Install-PSResource -Name DnsServerDsc -Version 3.0.0

You can deploy this package directly to Azure Automation. Note that deploying packages with dependencies will deploy all the dependencies to Azure Automation. Learn More

Manually download the .nupkg file to your system's default download location. Note that the file won't be unpacked, and won't include any dependencies. Learn More

Owners

Copyright

Copyright the DSC Community contributors. All rights reserved.

Package Details

Author(s)

  • DSC Community

Tags

DesiredStateConfiguration DSC DSCResourceKit DSCResource

DSCResources

DnsRecordCname DnsRecordPtr DnsRecordA DnsRecordAaaa DnsRecordCnameScoped DnsRecordMx DnsRecordNs DnsRecordSrv DnsServerCache DnsServerDsSetting DnsServerEDns DnsServerRecursion DnsServerScavenging DnsRecordAaaaScoped DnsRecordAScoped DnsRecordMxScoped DnsRecordNsScoped DnsRecordSrvScoped DnsServerADZone DnsServerClientSubnet DnsServerConditionalForwarder DnsServerDiagnostics DnsServerForwarder DnsServerPrimaryZone DnsServerRootHint DnsServerSecondaryZone DnsServerSetting DnsServerSettingLegacy DnsServerZoneAging DnsServerZoneScope DnsServerZoneTransfer

Dependencies

This module has no dependencies.

Release Notes

## [3.0.0] - 2021-05-26

### Removed

- xDnsRecord
 - BREAKING CHANGE: The resource has been replaced by _DnsServerA_, _DnsServerPtr_,
 and _DnsServerCName_ ([issue #221](https://github.com/dsccommunity/DnsServerDsc/issues/221)).
- xDnsServerMx
 - BREAKING CHANGE: The resource has been replaced by _DnsServerMx_ ([issue #228](https://github.com/dsccommunity/DnsServerDsc/issues/228)).
- DnsServerSetting
 - BREAKING CHANGE: The properties `Forwarders` and `ForwardingTimeout` has
   been removed ([issue #192](https://github.com/dsccommunity/DnsServerDsc/issues/192)).
   Use the resource _DnsServerForwarder_ to enforce these properties.
 - BREAKING CHANGE: The properties `EnableEDnsProbes` and `EDnsCacheTimeout` has
   been removed ([issue #195](https://github.com/dsccommunity/DnsServerDsc/issues/195)).
   Use the resource _DnsServerEDns_ to enforce these properties.
 - BREAKING CHANGE: The properties `SecureResponses`, `MaxCacheTTL`, and
   `MaxNegativeCacheTTL` has been removed ([issue #197](https://github.com/dsccommunity/DnsServerDsc/issues/197)).
   To enforce theses properties, use resource _DnsServerEDns_ using the
   properties `EnablePollutionProtection`, `MaxTtl`, and `MaxNegativeTtl`
   respectively.
 - BREAKING CHANGE: The properties `DefaultAgingState`, `ScavengingInterval`,
   `DefaultNoRefreshInterval`, and `DefaultRefreshInterval` have been removed.
   Use the resource _DnsServerScavenging_ to enforce this properties ([issue #193](https://github.com/dsccommunity/DnsServerDsc/issues/193)).
 - BREAKING CHANGE: The properties `NoRecursion`, `RecursionRetry`, and
   `RecursionTimeout` has been removed ([issue #200](https://github.com/dsccommunity/DnsServerDsc/issues/200)).
   To enforce theses properties, use resource _DnsServerRecursion_ using the
   properties `Enable`, `RetryInterval`, and `Timeout` respectively.
 - BREAKING CHANGE: A few properties that are not supported by any DNS
   Server PowerShell cmdlet was moved to the new resource _DnsServerSettingLegacy_.
 - BREAKING CHANGE: The properties `DsPollingInterval` and `DsTombstoneInterval`
   has been removed ([issue #252](https://github.com/dsccommunity/DnsServerDsc/issues/252)).
   Use the resource _DnsServerDsSetting_ to enforce these properties.

- ResourceBase
 - For the method `Get()` the overload that took a `[Microsoft.Management.Infrastructure.CimInstance]`
   was removed as it is not the correct pattern going forward.

### Added

- DnsServerDsc
 - Added new resource
   - _DnsServerCache_ - resource to enforce cache settings ([issue #196](https://github.com/dsccommunity/DnsServerDsc/issues/196)).
   - _DnsServerRecursion_ - resource to enforce recursion settings ([issue #198](https://github.com/dsccommunity/DnsServerDsc/issues/198)).
 - Added new private function `Get-ClassName` that returns the class name
   or optionally an array with the class name and all inherited base class
   named.
 - Added new private function `Get-LocalizedDataRecursive` that gathers
   all localization strings from an array of class names. This can be used
   in classes to be able to inherit localization strings from one or more
   base class. If a localization string key exist in a parent class's
   localization string file it will override the localization string key
   in any base class.
 - Fixed code coverage in the pipeline ([issue #246](https://github.com/dsccommunity/DnsServerDsc/issues/246)).
- ResourceBase
 - Added new method `Assert()` tha calls `Assert-Module` and `AssertProperties()`.
- DnsRecordNs
 - Added new resource to manage NS records
- DnsRecordNsScoped
 - Added new resource to manage scoped NS records
- DnsServerDsSetting
 - Added new resource to manage AD-integrated DNS settings
- DnsServerSettingLegacy
 - A new resource to manage legacy DNS Server settings that are not supported
   by any DNS Server PowerShell cmdlet.

### Changed

- DnsServerDsc
 - BREAKING CHANGE: Renamed the module to DnsServerDsc ([issue #179](https://github.com/dsccommunity/DnsServerDsc/issues/179)).
 - BREAKING CHANGE: Removed the prefix 'x' from all MOF-based resources
   ([issue #179](https://github.com/dsccommunity/DnsServerDsc/issues/179)).
 - Renamed a MOF-based resource to use the prefix 'DSC' ([issue #225](https://github.com/dsccommunity/DnsServerDsc/issues/225)).
 - Fix stub `Get-DnsServerResourceRecord` so it throws if it is not mocked
   correctly ([issue #204](https://github.com/dsccommunity/DnsServerDsc/issues/204)).
 - Switch the order in the deploy pipeline so that creating the GitHub release
   is made after a successful release.
 - Updated stub functions to throw if they are used (when missing a mock in
   unit test) ([issue #235](https://github.com/dsccommunity/DnsServerDsc/issues/235)).
- ResourceBase
 - Added support for inherit localization strings and also able to override
   a localization string that exist in a base class.
 - Moved more logic from the resources into the base class for the method
   `Test()`, `Get()`, and `Set()`. The base class now have three methods
   `AssertProperties()`, `Modify()`, and `GetCurrentState()` where the
   two latter ones must be overridden by a resource if calling the base
   methods `Set()` and `Get()`.
 - Moved the `Assert-Module` from the constructor to a new method `Assert()`
   that is called from `Get()`, `Test()`, and `Set()`. The method `Assert()`
   also calls the method `AssertProperties()`. The method `Assert()` is not
   meant to be overridden, but can if there is a reason not to run
   `Assert-Module` and or `AssertProperties()`.
- Integration tests
 - Added commands in the DnsRecord* integration tests to wait for the LCM
   before moving to the next test.
- DnsServerCache
 - Moved to the same coding pattern as _DnsServerRecursion_.
- DnsServerEDns
 - Moved to the same coding pattern as _DnsServerRecursion_.
- DnsServerScavenging
 - Moved to the same coding pattern as _DnsServerRecursion_.
- DnsServerSetting
 - Changed to use `Get-DnsServerSetting` and `Set-DnsServerSetting`
   ([issue #185](https://github.com/dsccommunity/xDnsServer/issues/185)).
 - BREAKING CHANGE: The property `DisableAutoReverseZones` have been renamed
   to `DisableAutoReverseZone`.
 - BREAKING CHANGE: The property `ListenAddresses` have been renamed
   to `ListeningIPAddress`.
 - BREAKING CHANGE: The property `AllowUpdate` was changed to a boolean
   value (`$true` or `$false`) since that is what the cmdlet `Set-DnsServerSetting`
   is expecting (related to [issue #101](https://github.com/dsccommunity/xDnsServer/issues/101)).
 - BREAKING CHANGE: The property `EnableDnsSec` was changed to a boolean
   value (`$true` or `$false`) since that is what the cmdlet `Set-DnsServerSetting`
   is expecting.
 - BREAKING CHANGE: The property `ForwardDelegations` was changed to a boolean
   value (`$true` or `$false`) since that is what the cmdlet `Set-DnsServerSetting`
   is expecting.

### Fixed

- Logic bug in DnsRecordPtr.expandIPv6String($string) (#255)
 - Supporting tests added

FileList

Version History

Version Downloads Last updated
3.0.1-previe... 381 7/9/2021
3.0.1-previe... 32 6/29/2021
3.0.0 (current version) 147,841 5/26/2021
3.0.0-previe... 12 5/26/2021
3.0.0-previe... 95 5/19/2021
3.0.0-previe... 25 5/15/2021
3.0.0-previe... 73 4/23/2021
3.0.0-previe... 15 4/23/2021
Show more