networkingdsc
Version information
This version is compatible with:
- Puppet Enterprise 2023.8.x, 2023.7.x, 2023.6.x, 2023.5.x, 2023.4.x, 2023.3.x, 2023.2.x, 2023.1.x, 2023.0.x, 2021.7.x, 2021.6.x, 2021.5.x, 2021.4.x, 2021.3.x, 2021.2.x, 2021.1.x, 2021.0.x
- Puppet >= 7.0.0 < 9.0.0
Start using this module
Add this module to your Puppetfile:
mod 'dsc-networkingdsc', '9.0.0-0-8'
Learn more about managing modules with a PuppetfileDocumentation
networkingdsc
Table of Contents
Description
This is an auto-generated module, using the Puppet DSC Builder to vendor and expose the NetworkingDsc PowerShell module's DSC resources as Puppet resources. The functionality of this module comes entirely from the vendored PowerShell resources, which are pinned at v9.0.0. The PowerShell module describes itself like this:
DSC resources for configuring settings related to networking.
For information on troubleshooting to determine whether any encountered problems are with the Puppet wrapper or the DSC resource, see the troubleshooting section below.
Requirements
This module, like all auto-generated Puppetized DSC modules, relies on two important technologies in the Puppet stack: the Puppet Resource API and the puppetlabs/pwshlib Puppet module.
The Resource API provides a simplified option for writing types and providers and is responsible for how this module is structured. The Resource API ships inside of Puppet starting with version 6. While it is technically possible to add the Resource API functionality to Puppet 5.5.x, the DSC functionality has not been tested in this setup. For more information on the Resource API, review the documentation.
The module also depends on the pwshlib module. This Puppet module includes two important things: the ruby-pwsh library for running PowerShell code from ruby and the base provider for DSC resources, which this module leverages.
All of the actual work being done to call the DSC resources vendored with this module is in this file from the pwshlib module. This is important for troubleshooting and bug reporting, but doesn't impact your use of the module except that the end result will be that nothing works, as the dependency is not installed alongside this module!
Long File Path Support
Several PowerShell modules with DSC Resources end up with very long file paths once vendored, many of which exceed the 260 character limit for file paths. Luckily in Windows 10 (build 1607+), Windows Server 2016 (build 1607+), and Windows Server 2019 there is now an option for supporting long file paths transparently!
We strongly recommend enabling long file path support on any machines using this module to avoid path length issues.
You can set this value using the Puppet registry_value
resource:
registry_value { 'HKLM\System\CurrentControlSet\Control\FileSystem\LongPathsEnabled':
ensure => 'present',
data => [1],
provider => 'registry',
type => 'dword',
}
You can also set this value outside of Puppet by following the Microsoft documentation.
Usage
You can specify any of the DSC resources from this module like a normal Puppet resource in your manifests. The examples below use DSC resources from from the PowerShellGet repository, regardless of what module you're looking at here; the syntax, not the specifics, is what's important.
For reference documentation about the DSC resources exposed in this module, see the Reference Forge tab, or the REFERENCE.md file.
# Include a meaningful title for your resource declaration
dsc_psrepository { 'Add team module repo':
dsc_name => 'foo',
dsc_ensure => present,
# This location is nonsense, can be any valid folder on your
# machine or in a share, any location the SourceLocation param
# for the DSC resource will accept.
dsc_sourcelocation => 'C:\Program Files',
# You must always pass an enum fully lower-cased;
# Puppet is case sensitive even when PowerShell isn't
dsc_installationpolicy => untrusted,
}
dsc_psrepository { 'Trust public gallery':
dsc_name => 'PSGallery',
dsc_ensure => present,
dsc_installationpolicy => trusted,
}
dsc_psmodule { 'Make Ruby manageable via uru':
dsc_name => 'RubyInstaller',
dsc_ensure => present,
}
Credentials
Credentials are always specified as a hash of the username and password for the account. The password must use the Puppet Sensitive type; this ensures that logs and reports redact the password, displaying it instead as <Sensitive [value redacted]>.
dsc_psrepository { 'PowerShell Gallery':
dsc_name => 'psgAllery',
dsc_installationpolicy => 'Trusted',
dsc_psdscrunascredential => {
user => 'apple',
password => Sensitive('foobar'),
},
}
Class-Based Resources
Class-based DSC Resources can be used like any other DSC Resource in this module, with one important note:
Due to a bug in calling class-based DSC Resources by path instead of module name, each call to Invoke-DscResource
needs to temporarily munge the system-level environment variable for PSModulePath
;
the variable is reset prior to the end of each invocation.
CIM Instances
Because the CIM instances for DSC resources are fully mapped, the types actually explain fairly precisely what the shape of each CIM instance has to be - and, moreover, the type definition means that you get checking at catalog compile time. Puppet parses CIM instances are structured hashes (or arrays of structured hashes) that explicitly declare their keys and the valid types of values for each key.
So, for the dsc_accesscontrolentry
property of the dsc_ntfsaccessentry
type, which has a MOF type of NTFSAccessControlList[]
, Puppet defines the CIM instance as:
Array[Struct[{
accesscontrolentry => Array[Struct[{
accesscontroltype => Enum['Allow', 'Deny'],
inheritance => Enum['This folder only', 'This folder subfolders and files', 'This folder and subfolders', 'This folder and files', 'Subfolders and files only', 'Subfolders only', 'Files only'],
ensure => Enum['Present', 'Absent'],
cim_instance_type => 'NTFSAccessControlEntry',
filesystemrights => Array[Enum['AppendData', 'ChangePermissions', 'CreateDirectories', 'CreateFiles', 'Delete', 'DeleteSubdirectoriesAndFiles', 'ExecuteFile', 'FullControl', 'ListDirectory', 'Modify', 'Read', 'ReadAndExecute', 'ReadAttributes', 'ReadData', 'ReadExtendedAttributes', 'ReadPermissions', 'Synchronize', 'TakeOwnership', 'Traverse', 'Write', 'WriteAttributes', 'WriteData', 'WriteExtendedAttributes']]
}]],
forceprincipal => Optional[Boolean],
principal => Optional[String],
}]]
A valid example of that in a puppet manifest looks like this:
dsc_accesscontrollist => [
{
accesscontrolentry => [
{
accesscontroltype => 'Allow',
inheritance => 'This folder only',
ensure => 'Present',
filesystemrights => 'ChangePermissions',
cim_instance_type => 'NTFSAccessControlEntry',
},
],
principal => 'veryRealUserName',
},
]
For more information about using a built module, check out our narrative documentation.
Properties
Note that the only properties specified in a resource declaration which are passed to Invoke-Dsc are all prepended with dsc.
If a property does _not start with dsc_ it is used to control how Puppet interacts with DSC/other Puppet resources - for example,
specifying a unique name for the resource for Puppet to distinguish between declarations or Puppet metaparameters (notifies,
before, etc).
Validation Mode
By default, these resources use the property validation mode, which checks whether or not the resource is in the desired state the same way most Puppet resources are validated;
by comparing the properties returned from the system with those specified in the manifest.
Sometimes, however, this is insufficient;
many DSC Resources return data that does not compare properly to the desired state (some are missing properties, others are malformed, some simply cannot be strictly compared).
In these cases, you can set the validation mode to resource
, which falls back on calling Invoke-DscResource
with the Test
method and trusts that result.
When using the resource
validation mode, the resource is tested once and will then treat all properties of that resource as in sync (if the result returned true
) or not in sync.
This loses the granularity of change reporting for the resource but prevents flapping and unexpected behavior.
# This will flap because the DSC resource never returns name in SecurityPolicyDsc v2.10.0.0
dsc_securityoption { 'Enforce Anonoymous SID Translation':
dsc_name => 'Enforce Anonymous SID Translation',
dsc_network_access_allow_anonymous_sid_name_translation => 'Disabled',
}
# This will idempotently apply
dsc_psrepository { 'PowerShell Gallery':
validation_mode => 'resource',
dsc_name => 'Enforce Anonymous SID Translation',
dsc_network_access_allow_anonymous_sid_name_translation => 'Disabled',
}
It is important to note that this feature is only supported with a version of puppetlabs-pwshlib
equal to or higher than 0.9.0
, in which the supporting code for the DSC Base Provider to implement custom insync was shipped.
Finally, while this module's metadata says that the supported Puppet versions are 6.0.0 and up, the implementation of the validation_mode
parameter relies on the custom_insync
feature of the Puppet Resource API.
The custom_insync
feature first shipped in the puppet-resource_api
version 1.8.14
, which itself is only included in Puppet versions equal to or newer than 6.23.0
and 7.8.0
for the 6x and 7x platforms respectively.
Using this module against older Puppet versions will result in a warning (example below) and only use the default property-by-property change reporting, regardless of the setting of validation_mode
.
Warning: Unknown feature detected: ["custom_insync"]
Troubleshooting
In general, there are three broad categories of problems:
- Problems with the way the underlying DSC resource works.
- Problems with the type definition, where you can't specify a valid set of properties for the DSC resource
- Problems with calling the underlying DSC resource - the parameters aren't being passed correctly or the resource can't be found
Unfortunately, problems with the way the underlying DSC resource works are something we can't help directly with. You'll need to file an issue with the upstream maintainers for the PowerShell module.
Problems with the type definition are when a value that should be valid according to the DSC resource's documentation and code is not accepted by the Puppet wrapper. If and when you run across one of these, please file an issue with the Puppet DSC Builder; this is where the conversion happens and once we know of a problem we can fix it and regenerate the Puppet modules. To help us identify the issue, please specify the DSC module, version, resource, property and values that are giving you issues. Once a fix is available we will regenerate and release updated versions of this Puppet wrapper.
Problems with calling the underlying DSC resource become apparent by comparing <value passed in in puppet>
with <value received by DSC>
.
In this case, please file an issue with the puppetlabs/pwshlib module, which is where the DSC base provider actually lives.
We'll investigate and prioritize a fix and update the puppetlabs/pwshlib module.
Updating to the pwshlib version with the fix will immediately take advantage of the improved functionality without waiting for this module to be reconverted and published.
For specific information on troubleshooting a generated module, check the troubleshooting guide for the puppet.dsc module.
Known Limitations
-
Currently, because of the way Puppet caches files on agents, use of the legacy
puppetlabs-dsc
module is not compatible with this or any auto-generated DSC module. Inclusion of both will lead to pluginsync conflicts. -
Right now, if you have the same version of a PowerShell module with class-based DSC Resources in your PSModulePath as vendored in a Puppetized DSC Module, you cannot use those class-based DSC Resources from inside of Puppet due to a bug in DSC which prevents using a module by path reference instead of name. Instead, DSC will see that there are two DSC Resources for the same module and version and then error out.
-
When PowerShell Script Block Logging is enabled, data marked as sensitive in your manifest may appear in these logs as plain text. It is highly recommended, by both Puppet and Microsoft, that you also enable Protected Event Logging alongside this to encrypt the logs to protect this information.
Configuring the LCM
In order for a Puppetized DSC module to function, the DSC Local Configuration Manager (LCM) RefreshMode
must be set to either Push
or Disabled
.
The default value for RefreshMode
in WMF 5.0 and WMF 5.1 is Push
- so if it has not been set to anything else then there is no action needed on your part.
However if the value of the LCM has been set to anything other than Push
then the module will not function and so the value must either be changed back or disabled.
The Puppetized DSC modules use the Invoke-DscResource
cmdlet to invoke DSC Resources of the target machine.
If the RefreshMode
is set to Pull
, DSC Resources will only run from a DSC Pull Server - in this setting DSC does not allow any DSC Resources to be run interactively on the host.
Module Installation
If you're using this module with Puppet Enterprise and Code Manager, everything should "just work" - no errors or issues acquiring and deploying this or any Puppetized DSC module to nodes.
Unfortunately, due a bug in minitar which prevents it from unpacking archives with long file paths, both r10k
and serverless Puppet (via puppet module install
) methods of installing modules with long path names will fail.
In short, minitar is unable to unpack modules that contain long file paths (though it can create them).
As a workaround, you can retrieve DSC modules from the forge via PowerShell and 7zip:
$ModuleAuthor = 'dsc'
$ModuleName = 'xremotedesktopsessionhost'
$ModuleVersion = '2.0.0-0-1'
$ArchiveFileName = "$ModuleAuthor-$ModuleName-$ModuleVersion.tar.gz"
$DownloadUri = "https://forge.puppet.com/v3/files/$ArchiveFileName"
# Download the module tar.gz to the current directory
Invoke-WebRequest -Uri $DownloadUri -OutFile ./$ArchiveFileName
# Use 7zip to extract the module to the current directory
& 7z x $ArchiveFileName -so | & 7z x -aoa -si -ttar
Reference
Table of Contents
Resource types
dsc_defaultgatewayaddress
: The DSC DefaultGatewayAddress resource type. Automatically generated from version 9.0.0dsc_dnsclientglobalsetting
: The DSC DnsClientGlobalSetting resource type. Automatically generated from version 9.0.0dsc_dnsconnectionsuffix
: The DSC DnsConnectionSuffix resource type. Automatically generated from version 9.0.0dsc_dnsserveraddress
: The DSC DnsServerAddress resource type. Automatically generated from version 9.0.0dsc_firewall
: The DSC Firewall resource type. Automatically generated from version 9.0.0dsc_firewallprofile
: The DSC FirewallProfile resource type. Automatically generated from version 9.0.0dsc_hostsfile
: The DSC HostsFile resource type. Automatically generated from version 9.0.0dsc_ipaddress
: The DSC IPAddress resource type. Automatically generated from version 9.0.0dsc_ipaddressoption
: The DSC IPAddressOption resource type. Automatically generated from version 9.0.0dsc_netadapteradvancedproperty
: The DSC NetAdapterAdvancedProperty resource type. Automatically generated from version 9.0.0dsc_netadapterbinding
: The DSC NetAdapterBinding resource type. Automatically generated from version 9.0.0dsc_netadapterlso
: The DSC NetAdapterLso resource type. Automatically generated from version 9.0.0dsc_netadaptername
: The DSC NetAdapterName resource type. Automatically generated from version 9.0.0dsc_netadapterrdma
: The DSC NetAdapterRdma resource type. Automatically generated from version 9.0.0dsc_netadapterrsc
: The DSC NetAdapterRsc resource type. Automatically generated from version 9.0.0dsc_netadapterrss
: The DSC NetAdapterRss resource type. Automatically generated from version 9.0.0dsc_netadapterstate
: The DSC NetAdapterState resource type. Automatically generated from version 9.0.0dsc_netbios
: The DSC NetBios resource type. Automatically generated from version 9.0.0dsc_netconnectionprofile
: The DSC NetConnectionProfile resource type. Automatically generated from version 9.0.0dsc_netipinterface
: The DSC NetIPInterface resource type. Automatically generated from version 9.0.0dsc_networkteam
: The DSC NetworkTeam resource type. Automatically generated from version 9.0.0dsc_networkteaminterface
: The DSC NetworkTeamInterface resource type. Automatically generated from version 9.0.0dsc_proxysettings
: The DSC ProxySettings resource type. Automatically generated from version 9.0.0dsc_route
: The DSC Route resource type. Automatically generated from version 9.0.0dsc_waitfornetworkteam
: The DSC WaitForNetworkTeam resource type. Automatically generated from version 9.0.0dsc_winsserveraddress
: The DSC WinsServerAddress resource type. Automatically generated from version 9.0.0dsc_winssetting
: The DSC WinsSetting resource type. Automatically generated from version 9.0.0
Resource types
dsc_defaultgatewayaddress
The DSC DefaultGatewayAddress resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_defaultgatewayaddress
type.
dsc_address
Data type: Optional[String]
The desired default gateway address - if not provided default gateway will be removed.
Parameters
The following parameters are available in the dsc_defaultgatewayaddress
type.
dsc_addressfamily
namevar
Data type: Enum['IPv4', 'ipv4', 'IPv6', 'ipv6']
IP address family.
dsc_interfacealias
namevar
Data type: String
Alias of the network interface for which the default gateway address is set.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_dnsclientglobalsetting
The DSC DnsClientGlobalSetting resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_dnsclientglobalsetting
type.
dsc_devolutionlevel
Data type: Optional[Integer[0, 4294967295]]
Specifies the number of labels up to which devolution should occur.
dsc_suffixsearchlist
Data type: Optional[Array[String]]
Specifies a list of global suffixes that can be used in the specified order by the DNS client for resolving the IP address of the computer name.
dsc_usedevolution
Data type: Optional[Boolean]
Specifies that devolution is activated.
Parameters
The following parameters are available in the dsc_dnsclientglobalsetting
type.
dsc_issingleinstance
namevar
Data type: Enum['Yes', 'yes']
Specifies the resource is a single instance, the value must be 'Yes'.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_dnsconnectionsuffix
The DSC DnsConnectionSuffix resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_dnsconnectionsuffix
type.
dsc_connectionspecificsuffix
Data type: String
DNS connection-specific suffix to assign to the network interface.
dsc_ensure
Data type: Optional[Enum['Present', 'present', 'Absent', 'absent']]
Ensure that the network interface connection-specific suffix is present or not.
dsc_registerthisconnectionsaddress
Data type: Optional[Boolean]
Specifies that the IP address for this connection is to be registered.
dsc_usesuffixwhenregistering
Data type: Optional[Boolean]
Specifies that this host name and the connection specific suffix for this connection are to be registered.
Parameters
The following parameters are available in the dsc_dnsconnectionsuffix
type.
dsc_interfacealias
namevar
Data type: String
Alias of the network interface for which the DNS server address is set.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_dnsserveraddress
The DSC DnsServerAddress resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_dnsserveraddress
type.
dsc_address
Data type: Optional[Array[String]]
The desired DNS Server address(es). Exclude to enable DHCP.
Parameters
The following parameters are available in the dsc_dnsserveraddress
type.
dsc_addressfamily
dsc_interfacealias
dsc_psdscrunascredential
dsc_timeout
dsc_validate
name
validation_mode
dsc_addressfamily
namevar
Data type: Enum['IPv4', 'ipv4', 'IPv6', 'ipv6']
IP address family.
dsc_interfacealias
namevar
Data type: String
Alias of the network interface for which the DNS server address is set.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
dsc_validate
Data type: Optional[Boolean]
Requires that the DNS Server addresses be validated if they are updated. It will cause the resource to throw a 'A general error occurred that is not covered by a more specific error code.' error if set to True and specified DNS Servers are not accessible.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_firewall
The DSC Firewall resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_firewall
type.
dsc_action
Data type: Optional[Enum['NotConfigured', 'notconfigured', 'Allow', 'allow', 'Block', 'block']]
Allow or Block the supplied configuration.
dsc_authentication
Data type: Optional[Enum['NotRequired', 'notrequired', 'Required', 'required', 'NoEncap', 'noencap']]
Specifies that authentication is required on firewall rules.
dsc_description
Data type: Optional[String]
Documentation for the Rule.
dsc_direction
Data type: Optional[Enum['Inbound', 'inbound', 'Outbound', 'outbound']]
Direction of the connection.
dsc_displaygroup
Data type: Optional[String]
The current value of the Display Group of the Firewall Rule.
dsc_displayname
Data type: Optional[String]
Localized, user-facing name of the Firewall Rule being created.
dsc_dynamictransport
Data type: Optional[Enum['Any', 'any', 'ProximityApps', 'proximityapps', 'ProximitySharing', 'proximitysharing', 'WifiDirectPrinting', 'wifidirectprinting', 'WifiDirectDisplay', 'wifidirectdisplay', 'WifiDirectDevices', 'wifidirectdevices']]
Specifies a dynamic transport.
dsc_edgetraversalpolicy
Data type: Optional[Enum['Block', 'block', 'Allow', 'allow', 'DeferToUser', 'defertouser', 'DeferToApp', 'defertoapp']]
Specifies that matching firewall rules of the indicated edge traversal policy are created.
dsc_enabled
Data type: Optional[Enum['True', 'true', 'False', 'false']]
Enable or disable the supplied configuration.
dsc_encryption
Data type: Optional[Enum['NotRequired', 'notrequired', 'Required', 'required', 'Dynamic', 'dynamic']]
Specifies that encryption in authentication is required on firewall rules.
dsc_ensure
Data type: Optional[Enum['Present', 'present', 'Absent', 'absent']]
Ensure the presence/absence of the resource.
dsc_group
Data type: Optional[String]
Name of the Firewall Group where we want to put the Firewall Rule.
dsc_icmptype
Data type: Optional[Array[String]]
Specifies the ICMP type codes.
dsc_interfacealias
Data type: Optional[Array[String]]
Specifies the alias of the interface that applies to the traffic.
dsc_interfacetype
Data type: Optional[Enum['Any', 'any', 'Wired', 'wired', 'Wireless', 'wireless', 'RemoteAccess', 'remoteaccess']]
Specifies that only network connections made through the indicated interface types are subject to the requirements of this rule.
dsc_localaddress
Data type: Optional[Array[String]]
Specifies that network packets with matching IP addresses match this rule.
dsc_localonlymapping
Data type: Optional[Boolean]
Indicates that matching firewall rules of the indicated value are created.
dsc_localport
Data type: Optional[Array[String]]
Local Port used for the filter.
dsc_localuser
Data type: Optional[String]
Specifies the principals to which network traffic this firewall rule applies.
dsc_loosesourcemapping
Data type: Optional[Boolean]
Indicates that matching firewall rules of the indicated value are created.
dsc_overrideblockrules
Data type: Optional[Boolean]
Indicates that matching network traffic that would otherwise be blocked are allowed.
dsc_owner
Data type: Optional[String]
Specifies that matching firewall rules of the indicated owner are created.
dsc_package
Data type: Optional[String]
Specifies the Windows Store application to which the firewall rule applies.
dsc_platform
Data type: Optional[Array[String]]
Specifies which version of Windows the associated rule applies.
dsc_profile
Data type: Optional[Array[String]]
Specifies one or more profiles to which the rule is assigned.
dsc_program
Data type: Optional[String]
Path and file name of the program for which the rule is applied.
dsc_protocol
Data type: Optional[String]
Specific Protocol for filter. Specified by name, number, or range.
dsc_remoteaddress
Data type: Optional[Array[String]]
Specifies that network packets with matching IP addresses match this rule.
dsc_remotemachine
Data type: Optional[String]
Specifies that matching IPsec rules of the indicated computer accounts are created.
dsc_remoteport
Data type: Optional[Array[String]]
Specific Port used for filter. Specified by port number, range, or keyword
dsc_remoteuser
Data type: Optional[String]
Specifies that matching IPsec rules of the indicated user accounts are created.
dsc_service
Data type: Optional[String]
Specifies the short name of a Windows service to which the firewall rule applies.
Parameters
The following parameters are available in the dsc_firewall
type.
dsc_name
namevar
Data type: String
Name of the Firewall Rule.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_firewallprofile
The DSC FirewallProfile resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_firewallprofile
type.
dsc_allowinboundrules
Data type: Optional[Enum['True', 'true', 'False', 'false', 'NotConfigured', 'notconfigured']]
Specifies that the firewall blocks inbound traffic.
dsc_allowlocalfirewallrules
Data type: Optional[Enum['True', 'true', 'False', 'false', 'NotConfigured', 'notconfigured']]
Specifies that the local firewall rules should be merged into the effective policy along with Group Policy settings.
dsc_allowlocalipsecrules
Data type: Optional[Enum['True', 'true', 'False', 'false', 'NotConfigured', 'notconfigured']]
Specifies that the local IPsec rules should be merged into the effective policy along with Group Policy settings.
dsc_allowunicastresponsetomulticast
Data type: Optional[Enum['True', 'true', 'False', 'false', 'NotConfigured', 'notconfigured']]
Allows unicast responses to multi-cast traffic.
dsc_allowuserapps
Data type: Optional[Enum['True', 'true', 'False', 'false', 'NotConfigured', 'notconfigured']]
Specifies that traffic from local user applications is allowed through the firewall.
dsc_allowuserports
Data type: Optional[Enum['True', 'true', 'False', 'false', 'NotConfigured', 'notconfigured']]
Specifies that traffic is allowed through local user ports.
dsc_defaultinboundaction
Data type: Optional[Enum['Block', 'block', 'Allow', 'allow', 'NotConfigured', 'notconfigured']]
Specifies how to filter inbound traffic.
dsc_defaultoutboundaction
Data type: Optional[Enum['Block', 'block', 'Allow', 'allow', 'NotConfigured', 'notconfigured']]
Specifies how to filter outbound traffic.
dsc_disabledinterfacealiases
Data type: Optional[Array[String]]
Specifies a list of interfaces on which firewall settings are excluded.
dsc_enabled
Data type: Optional[Enum['True', 'true', 'False', 'false', 'NotConfigured', 'notconfigured']]
Specifies that devolution is activated.
dsc_enablestealthmodeforipsec
Data type: Optional[Enum['True', 'true', 'False', 'false', 'NotConfigured', 'notconfigured']]
Enables stealth mode for IPsec traffic.
dsc_logallowed
Data type: Optional[Enum['True', 'true', 'False', 'false', 'NotConfigured', 'notconfigured']]
Specifies how to log the allowed packets in the location specified by the LogFileName parameter.
dsc_logblocked
Data type: Optional[Enum['True', 'true', 'False', 'false', 'NotConfigured', 'notconfigured']]
Specifies how to log the dropped packets in the location specified by the LogFileName parameter.
dsc_logfilename
Data type: Optional[String]
Specifies the path and filename of the file to which Windows Server writes log entries.
dsc_logignored
Data type: Optional[Enum['True', 'true', 'False', 'false', 'NotConfigured', 'notconfigured']]
Specifies how to log the ignored packets in the location specified by the LogFileName parameter.
dsc_logmaxsizekilobytes
Data type: Optional[Integer[0, 18446744073709551615]]
Specifies the maximum file size of the log, in kilobytes. The acceptable values for this parameter are: 1 through 32767.
dsc_notifyonlisten
Data type: Optional[Enum['True', 'true', 'False', 'false', 'NotConfigured', 'notconfigured']]
Allows the notification of listening for inbound connections by a service.
Parameters
The following parameters are available in the dsc_firewallprofile
type.
dsc_name
namevar
Data type: Enum['Domain', 'domain', 'Public', 'public', 'Private', 'private']
The name of the firewall profile to configure.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_hostsfile
The DSC HostsFile resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_hostsfile
type.
dsc_ensure
Data type: Optional[Enum['Present', 'present', 'Absent', 'absent']]
Specifies if the hosts file entry should be created or deleted.
dsc_ipaddress
Data type: Optional[String]
Specifies the IP Address that should be mapped to the host name.
Parameters
The following parameters are available in the dsc_hostsfile
type.
dsc_hostname
namevar
Data type: String
Specifies the name of the computer that will be mapped to an IP address.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_ipaddress
The DSC IPAddress resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_ipaddress
type.
dsc_ipaddress
Data type: Optional[Array[String]]
The desired IP address, optionally including prefix length using CIDR notation.
dsc_keepexistingaddress
Data type: Optional[Boolean]
Indicates whether or not existing IP addresses on an interface will be retained.
Parameters
The following parameters are available in the dsc_ipaddress
type.
dsc_addressfamily
namevar
Data type: Enum['IPv4', 'ipv4', 'IPv6', 'ipv6']
IP address family.
dsc_interfacealias
namevar
Data type: String
Alias of the network interface for which the IP address should be set.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_ipaddressoption
The DSC IPAddressOption resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_ipaddressoption
type.
dsc_skipassource
Data type: Optional[Boolean]
Skip as source option of the ip address.
Parameters
The following parameters are available in the dsc_ipaddressoption
type.
dsc_ipaddress
namevar
Data type: String
The target IP address, must already be configured on the system.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_netadapteradvancedproperty
The DSC NetAdapterAdvancedProperty resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_netadapteradvancedproperty
type.
dsc_displayvalue
Data type: Optional[String]
Output Display value of selected RegistryKeyword.
dsc_registryvalue
Data type: String
Specifies the value of the registry keyword.
Parameters
The following parameters are available in the dsc_netadapteradvancedproperty
type.
dsc_networkadaptername
dsc_psdscrunascredential
dsc_registrykeyword
dsc_timeout
name
validation_mode
dsc_networkadaptername
namevar
Data type: String
Specifies the name of the network adapter to set the advanced property for.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_registrykeyword
namevar
Data type: String
Specifies the registry keyword that should be in desired state.
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_netadapterbinding
The DSC NetAdapterBinding resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_netadapterbinding
type.
dsc_currentstate
Data type: Optional[Enum['Enabled', 'enabled', 'Disabled', 'disabled', 'Mixed', 'mixed']]
Returns the current state of the component ID for the Interfaces.
dsc_state
Data type: Optional[Enum['Enabled', 'enabled', 'Disabled', 'disabled']]
Specifies if the component ID for the Interface should be Enabled or Disabled.
Parameters
The following parameters are available in the dsc_netadapterbinding
type.
dsc_componentid
namevar
Data type: String
Specifies the underlying name of the transport or filter in the following form - ms_xxxx, such as ms_tcpip.
dsc_interfacealias
namevar
Data type: String
Specifies the alias of a network interface. Supports the use of '*'.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_netadapterlso
The DSC NetAdapterLso resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_netadapterlso
type.
dsc_state
Data type: Boolean
Specifies whether LSO should be enabled or disabled.
Parameters
The following parameters are available in the dsc_netadapterlso
type.
dsc_name
namevar
Data type: String
Specifies the name of network adapter.
dsc_protocol
namevar
Data type: Enum['V1IPv4', 'v1ipv4', 'IPv4', 'ipv4', 'IPv6', 'ipv6']
Specifies which protocol to make changes to.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_netadaptername
The DSC NetAdapterName resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_netadaptername
type.
dsc_driverdescription
Data type: Optional[String]
This is the driver description of the network adapter.
dsc_ignoremultiplematchingadapters
Data type: Optional[Boolean]
This switch will suppress an error occurring if more than one matching adapter matches the parameters passed.
dsc_interfacedescription
Data type: Optional[String]
This is the interface description of the network adapter to find.
dsc_interfaceguid
Data type: Optional[String]
This is the interface GUID of the network adapter to find.
dsc_interfaceindex
Data type: Optional[Integer[0, 4294967295]]
This is the interface index of the network adapter to find.
dsc_interfacenumber
Data type: Optional[Integer[0, 4294967295]]
This is the interface number of the network adapter if more than one are returned by the parameters.
dsc_macaddress
Data type: Optional[String]
This is the MAC address of the network adapter to find.
dsc_name
Data type: Optional[String]
This is the name of the network adapter to find.
dsc_physicalmediatype
Data type: Optional[String]
This is the media type of the network adapter to find.
dsc_status
Data type: Optional[Enum['Up', 'up', 'Disconnected', 'disconnected', 'Disabled', 'disabled']]
This is the status of the network adapter to find.
Parameters
The following parameters are available in the dsc_netadaptername
type.
dsc_newname
namevar
Data type: String
Specifies the new name of the network adapter.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_netadapterrdma
The DSC NetAdapterRdma resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_netadapterrdma
type.
dsc_enabled
Data type: Optional[Boolean]
Specifies if the RDMA configuration should be enabled or disabled. Defaults to $true.
Parameters
The following parameters are available in the dsc_netadapterrdma
type.
dsc_name
namevar
Data type: String
Specifies the name of network adapter for which RDMA needs to be configured.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_netadapterrsc
The DSC NetAdapterRsc resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_netadapterrsc
type.
dsc_protocol
Data type: Enum['IPv4', 'ipv4', 'IPv6', 'ipv6', 'All', 'all']
Specifies which protocol to make changes to.
dsc_state
Data type: Boolean
Specifies whether RSC should be enabled or disabled.
dsc_stateipv4
Data type: Optional[String]
Returns the current state of RSC for IPv4
dsc_stateipv6
Data type: Optional[String]
Returns the current state of RSC for IPv6
Parameters
The following parameters are available in the dsc_netadapterrsc
type.
dsc_name
namevar
Data type: String
Specifies the Name of network adapter.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_netadapterrss
The DSC NetAdapterRss resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_netadapterrss
type.
dsc_enabled
Data type: Boolean
Specifies whether RSS should be enabled or disabled.
Parameters
The following parameters are available in the dsc_netadapterrss
type.
dsc_name
namevar
Data type: String
Specifies the Name of network adapter.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_netadapterstate
The DSC NetAdapterState resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_netadapterstate
type.
dsc_state
Data type: Enum['Enabled', 'enabled', 'Disabled', 'disabled']
Specifies the desired state of the network adapter
Parameters
The following parameters are available in the dsc_netadapterstate
type.
dsc_name
namevar
Data type: String
Specifies the name of network adapter.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_netbios
The DSC NetBios resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_netbios
type.
dsc_setting
Data type: Enum['Default', 'default', 'Enable', 'enable', 'Disable', 'disable']
Specifies if NetBIOS should be enabled or disabled or obtained from the DHCP server (Default). If static IP, Enable NetBIOS.
Parameters
The following parameters are available in the dsc_netbios
type.
dsc_interfacealias
namevar
Data type: String
Specifies the alias of a network interface. Supports the use of '*' and '%'
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_netconnectionprofile
The DSC NetConnectionProfile resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_netconnectionprofile
type.
dsc_ipv4connectivity
Data type: Optional[Enum['Disconnected', 'disconnected', 'NoTraffic', 'notraffic', 'Subnet', 'subnet', 'LocalNetwork', 'localnetwork', 'Internet', 'internet']]
Sets the Network Category for the interface.
dsc_ipv6connectivity
Data type: Optional[Enum['Disconnected', 'disconnected', 'NoTraffic', 'notraffic', 'Subnet', 'subnet', 'LocalNetwork', 'localnetwork', 'Internet', 'internet']]
Specifies the IPv4 Connection Value.
dsc_networkcategory
Data type: Optional[Enum['Public', 'public', 'Private', 'private']]
Specifies the IPv6 Connection Value.
Parameters
The following parameters are available in the dsc_netconnectionprofile
type.
dsc_interfacealias
namevar
Data type: String
Specifies the alias for the Interface that is being changed.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_netipinterface
The DSC NetIPInterface resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_netipinterface
type.
dsc_advertisedefaultroute
Data type: Optional[Enum['Enabled', 'enabled', 'Disabled', 'disabled']]
Specifies the default router advertisement for an interface.
dsc_advertising
Data type: Optional[Enum['Enabled', 'enabled', 'Disabled', 'disabled']]
Specifies the router advertisement value for the IP interface.
dsc_automaticmetric
Data type: Optional[Enum['Enabled', 'enabled', 'Disabled', 'disabled']]
Specifies the value for automatic metric calculation.
dsc_dhcp
Data type: Optional[Enum['Enabled', 'enabled', 'Disabled', 'disabled']]
Specifies the Dynamic Host Configuration Protocol (DHCP) value for an IP interface.
dsc_directedmacwolpattern
Data type: Optional[Enum['Enabled', 'enabled', 'Disabled', 'disabled']]
Specifies the wake-up packet value for an IP interface.
dsc_ecnmarking
Data type: Optional[Enum['Disabled', 'disabled', 'UseEct1', 'useect1', 'UseEct0', 'useect0', 'AppDecide', 'appdecide']]
Specifies the value for Explicit Congestion Notification (ECN) marking.
dsc_forcearpndwolpattern
Data type: Optional[Enum['Enabled', 'enabled', 'Disabled', 'disabled']]
Specifies the Wake On LAN (WOL) value for the IP interface.
dsc_forwarding
Data type: Optional[Enum['Enabled', 'enabled', 'Disabled', 'disabled']]
Specifies the packet forwarding value for the IP interface.
dsc_ignoredefaultroutes
Data type: Optional[Enum['Enabled', 'enabled', 'Disabled', 'disabled']]
Specifies a value for Default Route advertisements.
dsc_interfacemetric
Data type: Optional[Integer[0, 4294967295]]
Specifies the metric for an IP interface.
dsc_managedaddressconfiguration
Data type: Optional[Enum['Enabled', 'enabled', 'Disabled', 'disabled']]
Specifies the value for managed address configuration.
dsc_neighborunreachabilitydetection
Data type: Optional[Enum['Enabled', 'enabled', 'Disabled', 'disabled']]
Specifies the value for Neighbor Unreachability Detection (NUD).
dsc_nlmtu
Data type: Optional[Integer[0, 4294967295]]
Specifies the network layer Maximum Transmission Unit (MTU) value, in bytes, for an IP interface.
dsc_otherstatefulconfiguration
Data type: Optional[Enum['Enabled', 'enabled', 'Disabled', 'disabled']]
Specifies the value for configuration other than addresses.
dsc_routerdiscovery
Data type: Optional[Enum['Enabled', 'enabled', 'Disabled', 'disabled', 'ControlledByDHCP', 'controlledbydhcp']]
Specifies the value for router discovery for an IP interface.
dsc_weakhostreceive
Data type: Optional[Enum['Enabled', 'enabled', 'Disabled', 'disabled']]
Specifies the receive value for a weak host model.
dsc_weakhostsend
Data type: Optional[Enum['Enabled', 'enabled', 'Disabled', 'disabled']]
Specifies the send value for a weak host model.
Parameters
The following parameters are available in the dsc_netipinterface
type.
dsc_addressfamily
namevar
Data type: Enum['IPv4', 'ipv4', 'IPv6', 'ipv6']
IP address family on the interface to configure.
dsc_interfacealias
namevar
Data type: String
Alias of the network interface to configure.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_networkteam
The DSC NetworkTeam resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_networkteam
type.
dsc_ensure
Data type: Optional[Enum['Present', 'present', 'Absent', 'absent']]
Specifies if the network team should be created or deleted. Defaults to 'Present'.
dsc_loadbalancingalgorithm
Data type: Optional[Enum['Dynamic', 'dynamic', 'HyperVPort', 'hypervport', 'IPAddresses', 'ipaddresses', 'MacAddresses', 'macaddresses', 'TransportPorts', 'transportports']]
Specifies the load balancing algorithm for the network team.
dsc_teamingmode
Data type: Optional[Enum['SwitchIndependent', 'switchindependent', 'LACP', 'lacp', 'Static', 'static']]
Specifies the teaming mode configuration.
dsc_teammembers
Data type: Array[String]
Specifies the network interfaces that should be a part of the network team. This is a comma-separated list.
Parameters
The following parameters are available in the dsc_networkteam
type.
dsc_name
namevar
Data type: String
Specifies the name of the network team to create.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_networkteaminterface
The DSC NetworkTeamInterface resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_networkteaminterface
type.
dsc_ensure
Data type: Optional[Enum['Present', 'present', 'Absent', 'absent']]
Specifies if the network team interface should be created or deleted. Defaults to 'Present'.
dsc_teamname
Data type: String
Specifies the name of the network team on which this particular interface should exist.
dsc_vlanid
Data type: Optional[Integer[0, 4294967295]]
Specifies VLAN ID to be set on network team interface.
Parameters
The following parameters are available in the dsc_networkteaminterface
type.
dsc_name
namevar
Data type: String
Specifies the name of the network team interface to create.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_proxysettings
The DSC ProxySettings resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_proxysettings
type.
dsc_autoconfigurl
Data type: Optional[String]
The URL of the automatic configuration script to specify the proxy settings. Should be specified if 'EnableAutoConfiguration' is 'True'.
dsc_connectiontype
Data type: Optional[Enum['All', 'all', 'Default', 'default', 'Legacy', 'legacy']]
Defines if the proxy settings should be configured for default connections, legacy connections or all connections. Defaults to 'All'.
dsc_enableautoconfiguration
Data type: Optional[Boolean]
Use automatic configuration script for specifying proxy settings. Defaults to 'False'.
dsc_enableautodetection
Data type: Optional[Boolean]
Enable automatic detection of the proxy settings. Defaults to 'False'.
dsc_enablemanualproxy
Data type: Optional[Boolean]
Use manual proxy server settings. Defaults to 'False'.
dsc_ensure
Data type: Optional[Enum['Present', 'present', 'Absent', 'absent']]
Specifies if proxy settings should be set. Defaults to 'Present'.
dsc_proxyserver
Data type: Optional[String]
The address and port of the manual proxy server to use. Should be specified if 'EnableManualProxy' is 'True'.
dsc_proxyserverbypasslocal
Data type: Optional[Boolean]
Bypass proxy server for local addresses. Defaults to 'False'.
dsc_proxyserverexceptions
Data type: Optional[Array[String]]
Bypass proxy server for addresses starting with addresses in this list.
Parameters
The following parameters are available in the dsc_proxysettings
type.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_target
namevar
Data type: Enum['LocalMachine', 'localmachine', 'CurrentUser', 'currentuser']
Specifies if the proxy settings should be set for the LocalMachine or for the CurrentUser. Defaults to 'LocalMachine'.
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_route
The DSC Route resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_route
type.
dsc_ensure
Data type: Optional[Enum['Present', 'present', 'Absent', 'absent']]
Specifies whether the route should exist. Defaults to 'Present'.
dsc_preferredlifetime
Data type: Optional[Float]
Specifies a preferred lifetime in seconds of an IP route.
dsc_publish
Data type: Optional[Enum['No', 'no', 'Yes', 'yes', 'Age', 'age']]
Specifies the publish setting of an IP route. Defaults to 'No'.
dsc_routemetric
Data type: Optional[Integer[0, 65535]]
Specifies an integer route metric for an IP route. Defaults to 256.
Parameters
The following parameters are available in the dsc_route
type.
dsc_addressfamily
dsc_destinationprefix
dsc_interfacealias
dsc_nexthop
dsc_psdscrunascredential
dsc_timeout
name
validation_mode
dsc_addressfamily
namevar
Data type: Enum['IPv4', 'ipv4', 'IPv6', 'ipv6']
Specifies the IP address family.
dsc_destinationprefix
namevar
Data type: String
Specifies a destination prefix of an IP route. A destination prefix consists of an IP address prefix and a prefix length, separated by a slash (/).
dsc_interfacealias
namevar
Data type: String
Specifies the alias of a network interface.
dsc_nexthop
namevar
Data type: String
Specifies the next hop for the IP route.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_waitfornetworkteam
The DSC WaitForNetworkTeam resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_waitfornetworkteam
type.
dsc_retrycount
Data type: Optional[Integer[0, 4294967295]]
The number of times to loop the retry interval while waiting for the network team.
dsc_retryintervalsec
Data type: Optional[Integer[0, 4294967295]]
Specifies the number of seconds to wait for the network team to become available.
Parameters
The following parameters are available in the dsc_waitfornetworkteam
type.
dsc_name
namevar
Data type: String
Specifies the name of the network team to wait for.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_winsserveraddress
The DSC WinsServerAddress resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_winsserveraddress
type.
dsc_address
Data type: Optional[Array[String]]
The desired WINS Server address(es). Exclude to remove all WINS servers.
Parameters
The following parameters are available in the dsc_winsserveraddress
type.
dsc_interfacealias
namevar
Data type: String
Alias of the network interface for which the WINS server address is set.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_winssetting
The DSC WinsSetting resource type. Automatically generated from version 9.0.0
Properties
The following properties are available in the dsc_winssetting
type.
dsc_enabledns
Data type: Optional[Boolean]
Specifies if DNS is enabled for name resolution over WINS for all network adapters with TCP/IP enabled.
dsc_enablelmhosts
Data type: Optional[Boolean]
Specifies if LMHOSTS lookup should be enabled for all network adapters with TCP/IP enabled.
Parameters
The following parameters are available in the dsc_winssetting
type.
dsc_issingleinstance
namevar
Data type: Enum['Yes', 'yes']
Specifies the resource is a single instance, the value must be 'Yes'.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
[9.0.0] - 2022-05-30
Fixed
- NetBios
- Fixes configuring network adapters in a disconnected or disabled state - fixes Issue #434.
- DnsServerAddress
- Improved error handling - fixes Issue #446.
Changed
- NetAdapterLso
- Protocol now a key field allowing multiple protocol configurations for a single network adapter - fixes Issue #475.
- Updated wiki documentation showing configuration overlap with NetAdapterAdvancedProperty - fixes Issue #475.
- NetAdapterAdvancedProperty
- Updated wiki documentation showing configuration overlap with NetAdapterLso - fixes Issue #475.
- Renamed
master
branch tomain
- Fixes Issue #469. - Updated build to use
Sampler.GitHubTasks
- Fixes Issue #489. - Added support for publishing code coverage to
CodeCov.io
and Azure Pipelines - Fixes Issue #491. - Minor reformatting of code style for diffability.
- ProxySettings
- Added function
Get-ProxySettingsRegistryKeyPath
to provide initial support for changing proxy settings for current user. BREAKING CHANGE: Added support for configuring proxy settings for a user account by addingTarget
parameter - Fixes Issue #423.
- Added function
- Updated .github issue templates to standard - Fixes Issue #508.
- Added Create_ChangeLog_GitHub_PR task to publish stage of build pipeline.
- Added SECURITY.md.
- Updated pipeline Deploy_Module anb Code_Coverage jobs to use ubuntu-latest images - Fixes Issue #508.
- Updated pipeline unit tests and integration tests to use Windows Server 2019 and Windows Server 2022 images - Fixes Issue #507.
- NetAdapterState
- Added a new message when setting the state of an adapter.
Fixed
- Fixed pipeline by replacing the GitVersion task in the
azure-pipelines.yml
with a script. - NetAdapterState
- Fixed so that the resource is idempotent so that
Enable-NetAdapter
andDisable-NetAdapter
are only called when change is required.
- Fixed so that the resource is idempotent so that
- NetAdapterLso
- Fixed integration tests so that they will be skipped if a network adapter with NDIS version 6 or greater is not available.
Dependencies
- puppetlabs/pwshlib (>= 1.2.0 < 2.0.0)