WILDERNIX
Яндекс.Метрика
 | Список статей | Сертификаты | Резюме(CV) | Правила | Вход |

 
Категории:
Ubuntu (9)
CISCO (10)
FreeBSD (7)
SQUID (1)
Windows Server (8)
PHP (3)
1C (8)
MS SQL (7)
MySQL (7)
Yii Framework (3)
Java (1)
Network (1)
PowerShell (7)
Git (1)
Python (1)

 
Микроблоги:
ОАЭ - Дубай
Фото зарисовки

 
Друзья:
arturka.com
aleksandor.ru
burunduch.ru
rapball.ru
pbshar.ru


Flag Counter

      GitHub profile


Как быстро поменять IP адрес (PowerShell)
Иногда приходится часто перенастраивать IP на ноуте или рабочей станции если требуется конфигурировать новые роутеры (WiFi например).

делать это через GUI довольно медленно.

Этот скрипт поможет быстро переключаться между двумя IP

Необходимо настроить под себя следующие параметры

$InterfaceName = 'Ethernet' - Имя интерфейса в системе (менять нужно в двух местах)

далее под катом...


Таблицы $0 и $1 так же нужно отредактировать под свои адреса

function changeIP($IP_flag) {

$InterfaceName = 'Ethernet'

#local IP configuration
$0=@{
'IP' = '10.10.0.10';
'NetMaskPrefix' = '24';
'GateWay' = '10.10.0.1';
'DNS_servers' = '10.10.0.20';
}

#remote IP configuration
$1=@{
'IP' = '192.168.0.1';
'NetMaskPrefix' = '24';
'GateWay' = '192.168.0.1';
'DNS_servers' = '192.168.0.1';
}

switch ($IP_flag) {
0 { $New_IP_prefix = $0; $Remove_IP_prefix = $1 }
1 { $New_IP_prefix = $1; $Remove_IP_prefix = $0 }
}

# remove current IP
$NetAdapter = Get-NetAdapter -Name $InterfaceName
$NetAdapter | Remove-NetIPAddress -IPAddress $Remove_IP_prefix.IP -PrefixLength $Remove_IP_prefix.NetMaskPrefix -DefaultGateway $Remove_IP_prefix.GateWay -Confirm:$false | Out-Null
$NetAdapter | Set-DnsClientServerAddress -ResetServerAddresses | Out-Null

# set new IP
$NetAdapter = Get-NetAdapter -Name $InterfaceName
$NetAdapter | New-NetIPAddress -IPAddress $New_IP_prefix.IP -PrefixLength $New_IP_prefix.NetMaskPrefix -DefaultGateway $New_IP_prefix.GateWay | Out-Null
$NetAdapter | Set-DnsClientServerAddress -ServerAddresses $New_IP_prefix.DNS_servers | Out-Null

}

function MainMenu() {

do {

cls;

Write-Host ""
Write-Host "--- Your current IP is ---"

$NetAdapter = Get-NetAdapter -Name 'Ethernet'
$NetAdapter | NetIPAddress

Write-Host ""
$InIP_flag = Read-Host "Which IP do you need to use? (local = 0 , remote = 1) or ENTER for exit"

switch ($InIP_flag ) {

0 { changeIP(0); }
1 { changeIP(1); }

Default {
Write-Host "";
Write-Host "Enter correct option";
}

}

} until (!$InIP_flag -eq 2 )
}

MainMenu

Дата публикации: 08-09-2018


WilderNix - Konstantin Korsunov