PowerShell で IP アドレスの固定化

2020/04/18

IP アドレスの固定化

次のコマンドを流します

インターフェース名で指定する例

New-NetIPAddress -InterfaceAlias <String> -IPAddress <String> -PrefixLength <Byte> -DefaultGateway <String>

インターフェース ID で指定する例

New-NetIPAddress -InterfaceIndex <UInt32> -IPAddress <String> -PrefixLength <Byte> -DefaultGateway <String>

インターフェース名やインターフェース ID を取得する

インターフェース名や ID の取得方法は Get-NetAdapter を使います
私の Hyper-V の環境ではこのように表示されました

PS> Get-NetAdapter
Name                      InterfaceDescription                    ifIndex Status       MacAddress             LinkSpeed
----                      --------------------                    ------- ------       ----------             ---------
イーサネット              Microsoft Hyper-V ネットワーク アダ...       12 Up           00-15-5D-0A-63-01       702 Mbps

この例ではインターフェイス名が「イーサネット」、インターフェース ID が 12 となっています。

IP アドレスの固定化例

インターフェース名を指定して流す例は次の通りです。

PS> New-NetIPAddress -InterfaceAlias "イーサネット" -IPAddress 10.0.1.10 -PrefixLength 24 -DefaultGateway 10.0.1.1

IPAddress         : 10.0.1.10
InterfaceIndex    : 12
InterfaceAlias    : イーサネット
AddressFamily     : IPv4
Type              : Unicast
PrefixLength      : 24
PrefixOrigin      : Manual
SuffixOrigin      : Manual
AddressState      : Tentative
ValidLifetime     : Infinite ([TimeSpan]::MaxValue)
PreferredLifetime : Infinite ([TimeSpan]::MaxValue)
SkipAsSource      : False
PolicyStore       : ActiveStore

IPAddress         : 10.0.1.10
InterfaceIndex    : 12
InterfaceAlias    : イーサネット
AddressFamily     : IPv4
Type              : Unicast
PrefixLength      : 24
PrefixOrigin      : Manual
SuffixOrigin      : Manual
AddressState      : Invalid
ValidLifetime     : Infinite ([TimeSpan]::MaxValue)
PreferredLifetime : Infinite ([TimeSpan]::MaxValue)
SkipAsSource      : False
PolicyStore       : PersistentStore