Разберём основные команды, которые пригодятся нам при настройке сети в ОС #Windows через #PowerShell.
Сетевые адаптеры
Получить список сетевых адаптеров и их интерфейсов:
Получить список обычных и скрытых сетевых адаптеров:
1
| Get-NetAdapter –IncludeHidden
|
Получить конфигурацию по интерфейсу 5:
1
| Get-NetAdapter -InterfaceIndex 5 | Get-NetIPConfiguration
|
Получить детальную конфигурацию по интерфейсу 5:
1
| Get-NetAdapter -InterfaceIndex 5 | Get-NetIPConfiguration -Detailed
|
Отключить адаптер с интерфейсом 5:
1
| Get-NetAdapter -InterfaceIndex 5 | Disable-NetAdapter
|
Сетевые профили
Вывести информацию по текущим сетевым профилям:
1
| Get-NetConnectionProfile
|
Получить информацию только по профилю сети интерфейса 5:
1
| Get-NetAdapter -InterfaceIndex 5 | Get-NetConnectionProfile
|
Изменить профиль сети интерфейса 5 на публичный (Public).
1
| Get-NetAdapter -InterfaceIndex 5 | Set-NetConnectionProfile -NetworkCategory 'Public'
|
Изменить профиль сети интерфейса 5 на приватный (Private).
1
| Get-NetAdapter -InterfaceIndex 5 | Set-NetConnectionProfile -NetworkCategory 'Private'
|
Изменить профиль сети интерфейса 5 на доменный (DomainAuthenticated).
1
| Get-NetAdapter -InterfaceIndex 5 | Set-NetConnectionProfile -NetworkCategory 'DomainAuthenticated'
|
Настройка IP-адреса
Отключить DHCP на интерфейсе 5:
1
| Get-NetAdapter -InterfaceIndex 5 | Set-NetIPInterface -Dhcp 'Disabled'
|
Установить новый IP-адрес и шлюз на интерфейсе 5:
1
| Get-NetAdapter -InterfaceIndex 5 | New-NetIPAddress –IPAddress '192.168.0.10' -PrefixLength '24' -DefaultGateway '192.168.0.1'
|
Изменить IP-адрес на интерфейсе 5:
1
| Get-NetAdapter -InterfaceIndex 5 | Set-NetIPAddress -IPAddress '192.168.0.12'
|
Удалить IP-адрес на интерфейсе 5:
1
| Get-NetAdapter -InterfaceIndex 5 | Remove-NetIPAddress -Confirm:$false
|
Удаление шлюза на интерфейсе 5:
1
| Get-NetAdapter -InterfaceIndex 5 | Remove-NetRoute -Confirm:$false
|
Настройка DNS
Установить IP-адреса серверов #DNS на интерфейсе 5:
1
| Get-NetAdapter -InterfaceIndex 5 | Set-DNSClientServerAddress –ServerAddresses ('192.168.0.2','192.168.1.2')
|
Сбросить IP-адреса серверов DNS на параметры по умолчанию на интерфейсе 5:
1
| Get-NetAdapter -InterfaceIndex 5 | Set-DnsClientServerAddress -ResetServerAddresses
|
Очистить кэш #DNS:
Настройка DHCP
Включить #DHCP на интерфейсе 5:
1
| Get-NetAdapter -InterfaceIndex 5 | Set-NetIPInterface -Dhcp 'Enabled'
|
Перезапустить интерфейс с именем Ethernet для получения параметров от #DHCP:
1
| Get-NetAdapter -InterfaceIndex 5 | Restart-NetAdapter
|
Автоматизация
Скрипт не имеет вводных параметров. Все параметры настраиваются вручную через редактирование скрипта. Далее, скрипт запускается и применяет указанные параметры.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
| <#PSScriptInfo
.VERSION 0.1.0
.GUID b42524a4-c0d0-4402-951c-e97aa140698e
.AUTHOR Kai Kimera
.AUTHOREMAIL mail@kai.kim
.COMPANYNAME Library Online
.COPYRIGHT 2023 Library Online. All rights reserved.
.LICENSEURI https://choosealicense.com/licenses/mit/
.PROJECTURI https://libsys.ru/ru/2023/10/430b916d-fd5c-5d44-8c24-8b98f41e0355/
#>
#Requires -Version 7.2
#Requires -RunAsAdministrator
# -------------------------------------------------------------------------------------------------------------------- #
# CONFIGURATION
# -------------------------------------------------------------------------------------------------------------------- #
$Adapter = @{
# Interface index.
InterfaceIndex = 0
}
$IP = @{
# IP address.
IPAddress = '192.168.0.10'
# Subnet mask.
PrefixLength = '24'
# Gateway.
DefaultGateway = '192.168.0.1'
}
$DNS = @{
# DNS servers.
ServerAddresses = (
'192.168.0.2',
'192.168.1.2'
)
}
# -------------------------------------------------------------------------------------------------------------------- #
# -------------------------------------------------< RUNNING SCRIPT >------------------------------------------------- #
# -------------------------------------------------------------------------------------------------------------------- #
Get-NetAdapter @Adapter | Remove-NetIPAddress -Confirm:$false # Removing current IP address.
Get-NetAdapter @Adapter | Remove-NetRoute -Confirm:$false # Removing current gateway.
Get-NetAdapter @Adapter | New-NetIPAddress @IP # Setting new IP address.
Get-NetAdapter @Adapter | Set-DNSClientServerAddress @DNS # Setting new DNS servers.
|