Add disable-ipv6.ps1, enable-ipv6.ps1, and list-ipv6.ps1

This commit is contained in:
Markus Fleschutz 2023-09-12 13:55:43 +02:00
parent 037920f60d
commit ece94dfa79
3 changed files with 69 additions and 0 deletions

22
Scripts/disable-ipv6.ps1 Normal file
View File

@ -0,0 +1,22 @@
<#
.SYNOPSIS
Disables IPv6 (requires admin rights)
.DESCRIPTION
This PowerShell script disables IPv6 on all network interfaces of the local computer (requires administrator rights).
.EXAMPLE
PS> ./disable-ipv6.ps1
IPv6 is disabled now.
.LINK
https://github.com/fleschutz/PowerShell
.NOTES
Author: Markus Fleschutz | License: CC0
#>
try {
Disable-NetAdapterBinding -Name '*' -ComponentID 'ms_tcpip6'
"✔️ IPv6 is disabled now."
exit 0 # success
} catch {
"⚠️ Error in line $($_.InvocationInfo.ScriptLineNumber): $($Error[0])"
exit 1
}

22
Scripts/enable-ipv6.ps1 Normal file
View File

@ -0,0 +1,22 @@
<#
.SYNOPSIS
Enables IPv6
.DESCRIPTION
This PowerShell script enables IPv6 on all network interfaces of the local computer.
.EXAMPLE
PS> ./enable-ipv6.ps1
IPv6 is enabled now.
.LINK
https://github.com/fleschutz/PowerShell
.NOTES
Author: Markus Fleschutz | License: CC0
#>
try {
Enable-NetAdapterBinding -Name '*' -ComponentID 'ms_tcpip6'
"✔️ IPv6 is enabled now."
exit 0 # success
} catch {
"⚠️ Error in line $($_.InvocationInfo.ScriptLineNumber): $($Error[0])"
exit 1
}

25
Scripts/list-ipv6.ps1 Normal file
View File

@ -0,0 +1,25 @@
<#
.SYNOPSIS
Lists IPv6 states
.DESCRIPTION
This PowerShell script lists the state of IPv6 on all network interfaces of the local computer.
.EXAMPLE
PS> ./list-ipv6.ps1
Name Enabled
---- -------
Ethernet True
vEthernet (WSL) True
Bluetooth Network Connection True
.LINK
https://github.com/fleschutz/PowerShell
.NOTES
Author: Markus Fleschutz | License: CC0
#>
try {
Get-NetAdapterBinding -name '*' -componentID 'ms_tcpip6' | Format-Table -autoSize -property Name,Enabled
exit 0 # success
} catch {
"⚠️ Error in line $($_.InvocationInfo.ScriptLineNumber): $($Error[0])"
exit 1
}