Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- [CmdletBinding()]
- param (
- [Parameter()]
- [switch]
- $ShowInfo
- )
- # Välj nätadapter
- $NetAdapter = Get-NetAdapter | Out-Gridview -PassThru
- # Importera inställningar från CSV (ur samma mapp som scriptet)
- $ImportedScope = Import-Csv $PSScriptRoot\NetworkSelection.csv -Delimiter "," | Out-GridView -PassThru
- # Om inget alternativ väljs - skippa
- if (![string]::IsNullOrEmpty($ImportedScope.Network)) {
- if ($ImportedScope.Network -eq 'DHCP') {
- # Fortsätt om DHCP är inaktiverad
- If (!(Get-NetIPInterface -InterfaceIndex $NetAdapter.ifindex -AddressFamily IPv4).Dhcp -as [bool]) {
- # Ta bort gamla routes om det finns
- if ((Get-NetIPConfiguration -InterfaceIndex $NetAdapter.ifindex).Ipv4DefaultGateway -as [bool]) {
- Remove-NetRoute -InterfaceIndex $NetAdapter.ifindex -Confirm:$false | Out-Null
- }
- # Därefter aktivera DHCP & återställ DNS
- Set-NetIPInterface -InterfaceIndex $NetAdapter.ifindex -DHCP Enabled -AddressFamily IPV4
- Set-DnsClientServerAddress -InterfaceIndex $NetAdapter.ifindex -ResetServerAddresses
- }
- # Se om internet fungerar, om inte kör /renew
- Start-Sleep 4
- if(!(Test-NetConnection -DiagnoseRouting).RouteDiagnosticsSucceeded){
- Write-Host "Running ipconfig /renew $($NetAdapter.Name)" -Foregroundcolor DarkYellow
- Start-Process ipconfig -ArgumentList "/renew $($NetAdapter.Name)" -Wait
- }
- } else {
- # Rensa gamla inställningar
- $NetAdapter | Remove-NetIPAddress -Confirm:$false
- $NetAdapter | Remove-NetRoute -Confirm:$false
- # Sätt interface alternativ för valt "Network"
- Set-DnsClientServerAddress -InterfaceIndex $NetAdapter.ifindex -ServerAddresses ($ImportedScope.dns1,$ImportedScope.dns2)
- New-NetIPAddress -InterfaceIndex $NetAdapter.ifindex -IPAddress $ImportedScope.IPAddress -AddressFamily IPv4 -PrefixLength $ImportedScope.SubnetMask -DefaultGateway $ImportedScope.DefaultGateway | Out-Null
- }
- }
- if ($ShowInfo) {
- Write-Host "`n[INFO] $($ImportedScope.Network)"
- Write-Host "`n --NetIPInterface" -Foregroundcolor DarkGreen
- Get-NetIPInterface -InterfaceIndex $NetAdapter.ifindex -AddressFamily IPv4
- Write-Host "`n --NetIPConfiguration(DefaultGateway)" -Foregroundcolor DarkGreen
- Get-NetIPConfiguration -InterfaceIndex $NetAdapter.ifindex | Select-Object -ExpandProperty Ipv4DefaultGateway | Format-Table
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement