カタカタブログ

SIerで働くITエンジニアがカタカタした記録を残す技術ブログ。Java, Oracle Database, Linuxが中心です。たまに数学やデータ分析なども。

Raspberry Pi 2の有線LANでのIPアドレス固定化手順が変わったのでメモ

Raspberry Pi 2を再構築したときに、有線LANのIPアドレス固定化の手順を前回のメモ通りにやってみると、うまく行かなかったので、その時の対応手順をメモ。

なお、RaspbianはNOOBSの現在の最新版であるNOOBS_v1_5_0.zipを使ったところが前回と違っている。
https://www.raspberrypi.org/downloads/noobs/
バージョンも念のため控えておく。

$ cat /etc/debian_version
8.0
$ uname -a
Linux raspberrypi 4.1.13-v7+ #826 SMP PREEMPT Fri Nov 13 20:19:03 GMT 2015 armv7l GNU/Linux

まず、前回は/etc/network/interfacesを以下のように編集してIPアドレスを固定化していた。
Raspberry Pi 2 IPアドレスを固定(有線LAN)にする - カタカタブログ

iface eth0 inet static
address 192.168.11.11
netmask 255.255.255.0
gateway 192.168.11.1

しかし、今回はこの方法ではIPアドレスが変わらなかった。
syslogを見てみると、依然としてDHCPで割り当てているログが残っていた。

$ less /var/log/syslog
Jan 27 02:16:35 raspberrypi dhcpcd[380]: eth0: leased 192.168.11.3 for 172800 seconds
Jan 27 02:16:35 raspberrypi dhcpcd[380]: eth0: adding route to 192.168.11.0/24
Jan 27 02:16:35 raspberrypi dhcpcd[380]: eth0: adding default route via 192.168.11.1

そこで、/etc/network/interfacesの設定は元に戻した。つまり、iface eth0 inet manualのままにした。
そして、/etc/dhcpcd.confのファイルの方を編集した。当然、編集前にはオリジナルファイルのバックアップを念のためとっておくこと。

/etc/dhcpcd.confの最下行に以下の4行を追記。

interface eth0
static ip_address=192.168.11.11/24
static routers=192.168.11.1
static domain_name_servers=192.168.11.1

dhcpcd再起動

$ sudo /etc/init.d/dhcpcd reload
dhcpcd[758]: sending signal HUP to pid 382
 reboot

再起動後、IPアドレスを確認すると正しく固定化されていた!

$ ifconfig
eth0      Link encap:Ethernet  HWaddr b8:27:eb:38:6c:b8
          inet addr:192.168.11.11  Bcast:192.168.11.255  Mask:255.255.255.0
          inet6 addr: fe80::4fbc:95ff:d191:ea69/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:67 errors:0 dropped:0 overruns:0 frame:0
          TX packets:67 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:7475 (7.2 KiB)  TX bytes:11551 (11.2 KiB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:196 errors:0 dropped:0 overruns:0 frame:0
          TX packets:196 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0

          RX bytes:15892 (15.5 KiB)  TX bytes:15892 (15.5 KiB)

さらに、routers(ゲートウェイ)とdomain_name_servers(DNS)の設定も正しくされていることを確認ためにwww.google.compingを打つ。

$ sudo ping www.google.com
PING www.google.com (216.58.199.228) 56(84) bytes of data.
64 bytes from kix05s02-in-f4.1e100.net (216.58.199.228): icmp_seq=1 ttl=50 time=11.3 ms
64 bytes from kix05s02-in-f4.1e100.net (216.58.199.228): icmp_seq=2 ttl=50 time=11.0 ms
64 bytes from kix05s02-in-f4.1e100.net (216.58.199.228): icmp_seq=3 ttl=50 time=10.4 ms
^C
--- www.google.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 10.486/10.945/11.303/0.341 ms

問題なし!

まとめ

Raspberry Pi 2の有線LANのIPアドレスを固定化するには、
/etc/network/interfacesではなく、/etc/dhcpcd.confを編集する。

バージョンが変わって、仕様がかわったのかな。。原因は深追いしていないが、とりあえず直ったのでよしとしておこう。

以上!

関連記事