Date

Rasperry Pi 2 に Windows 10 IoT Core Insider Preview をインストールすると、既定ではIPアドレスが動的に割り当てられる。Headed モードでモニタが繋がっていれば画面上で確認できるが、画面のない Headless モードにおいては確認が手間なので固定IPアドレスを構成してみる。

PowerShell で接続する

ルータのログなどで今 Rasperry Pi 2 に割り当てられているIPアドレスを把握する。ここでは 192.168.0.7 とする。

Windows 10 IoT Core Insider Preview をインストールした時と同じく PowerShell から Enter-PsSession コマンドで接続する。

1
2
3
4
// 管理者権限で実行
PS> net start WinRM
PS> Set-Item WSMan:\localhost\Client\TrustedHosts -Value 192.168.0.7
PS> Enter-PsSession -ComputerName 192.168.0.7 -Credential 192.168.0.7\Administrator

固定IPアドレスを設定する

Get-NetAdapter コマンドで Ethernet の InterfaceIndex を確認する。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
PS> Get-NetAdapter | format-list

Name                       : Ethernet
InterfaceDescription       : LAN9512/LAN9514 USB 2.0 to Ethernet 10/100 Adapter
InterfaceIndex             : 2
MacAddress                 : xx-xx-xx-xx-xx-xx
MediaType                  : 802.3
PhysicalMediaType          : 802.3
InterfaceOperationalStatus : Up
AdminStatus                : Up
LinkSpeed(Mbps)            : 100
MediaConnectionState       : Connected
ConnectorPresent           : True
VlanID                     : 0
DriverInformation          : Driver Date 2014-07-30 Version 2.6.5.0 NDIS 6.30

上記の例では「2」であることが確認できる。

New-NetIPAddress コマンドで固定IPアドレスを設定する。ここでは IP アドレス 192.168.0.30/24 、デフォルトゲートウェイは 192.168.0.1 とする。

1
PS> New-NetIPAddress -InterfaceIndex 2 -AddressFamily IPv4 -IPAddress 192.168.0.30 -PrefixLength 24 -Type Unicast -DefaultGateway 192.168.0.1

このコマンドを実行するとセッションが切断されるので、設定したIPアドレスで再度Enter-PsSessionコマンドを実行し再接続する。

接続したら Get-NetIPAddress コマンドで設定を確認できる。

 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
PS> Set-Item WSMan:\localhost\Client\TrustedHosts -Value 192.168.0.30
PS> Enter-PSSession -ComputerName 192.168.0.30 -Credential 192.168.0.30\administrator

PS> Get-NetIPAddress -InterfaceIndex 2

IPAddress         : fe80::xxxx:xxxx:xxxx:xxxx%2
InterfaceIndex    : 2
InterfaceAlias    : Ethernet
AddressFamily     : IPv6
Type              : Unicast
PrefixLength      : 64
PrefixOrigin      : WellKnown
SuffixOrigin      : Link
AddressState      : Preferred
ValidLifetime     : Infinite ([TimeSpan]::MaxValue)
PreferredLifetime : Infinite ([TimeSpan]::MaxValue)
SkipAsSource      : False
PolicyStore       : ActiveStore

IPAddress         : 192.168.0.30
InterfaceIndex    : 2
InterfaceAlias    : Ethernet
AddressFamily     : IPv4
Type              : Unicast
PrefixLength      : 24
PrefixOrigin      : Manual
SuffixOrigin      : Manual
AddressState      : Preferred
ValidLifetime     : Infinite ([TimeSpan]::MaxValue)
PreferredLifetime : Infinite ([TimeSpan]::MaxValue)
SkipAsSource      : False
PolicyStore       : ActiveStore

DNSサーバを設定する

この時点では DNS サーバが設定されておらず名前解決ができない。もし名前解決が必要な場合は netsh.exe が用意されているので、それを使って DNS サーバを設定する。以下は 192.168.0.2 をDNSサーバとして設定している。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
PS> netsh.exe dnsclient set dnsservers name=Ethernet address=192.168.0.2 source=static
PS> netsh interface ipv4 show config

Configuration for interface "Ethernet"
   DHCP enabled:                         No
   IP Address:                           192.168.0.30
   Subnet Prefix:                        192.168.0.0/24 (mask 255.255.255.0)
   Default Gateway:                      192.168.0.1
   Gateway Metric:                       256
   InterfaceMetric:                      20
   Statically Configured DNS Servers:    192.168.0.2
   Register with which suffix:           Primary only
   Statically Configured WINS Servers:   None

※ DNSサーバの設定、確認には、それぞれ Set-DnsClientServerAddress、Get-DnsClientServerAddress コマンドがあるが、Windows 10 IoT Core Insider Preview ではエラーが出て使用できなかった。


Comments

comments powered by Disqus