Raspberry Pi 3 Wi-Fiで固定IPを割り当てる設定

前回の記事で、DHCPの動的IP割当ができるようになりましたが、SSHで接続して作業する場合にIPが度々かわるので面倒!

ということで、下記の記事を参考に固定IPでアクセスできるようにしてみました!

Raspberry Pi に固定IPアドレスを割り当てる方法(Raspbian Jessie)

※参考サイトの設定は有線LAN(eth0)だったので、無線LAN(ra0)に読み替えて少々手を加えています。

実施環境

  • ラズパイ本体 Linux raspberrypi 4.9.35-v7+
  • ルーター 192.168.0.1/24
  • Wi-Fiアダプタ Planex GW-450D2

ルーターのDHCPによる動的IP割当範囲の設定

使用しているルーターのIP割当範囲を変更します。
例えば、ラズパイに割り当てたい固定IPが192.168.0.200だとして、動的割当がこの範囲に入らないように設定します。
192.168.0.2〜192.168.0.100

dhcpcd.confを編集

Wi-Fiアダプタ用の設定を書き込みます。

sudo vim /etc/dhcpcd.conf

interface ra0
static ip_address=192.168.0.200/24
static routers=192.168.0.1
static domain_name_servers=8.8.8.8

static ip_address にはラズパイに設定したいIPをDHCPの範囲外で設定します。
static routers には、ルーターのIPを指定します。
static domain_name_servers には、DNSを設定します(GoogleのPublic DNSを指定しました)

/etc/network/interfaces を編集

/etc/network/interfaces
を編集して、
iface ra0 inet dhcp
の代わりに manualに書き換えます。
(ちなみにdhcpにしたままだと設定が2つとも生きて、動的IPと固定IPの2つのIPが割り当てられてしまいます。)

sudo vim /etc/network/interfaces
...
allow-hotplug ra0
auto ra0
iface ra0 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
...

インターフェースを再起動(ifdown/ifup)して確認

ラズパイ本体にディスプレイやキーボードがつながっている環境の人は、インターフェースをdown/upして確認できます。

sudo ifdown ra0
sudo ifup ra0

ifupで問題があるとエラーが表示されるので適宜修正します。

そして、インターフェースを確認

ifconfig ra0
ra0 Link encap:イーサネット ハードウェアアドレス 00:22:cf:fd:b6:96
inetアドレス:192.168.0.200 ブロードキャスト:192.168.0.255 マスク:255.255.255.0
inet6アドレス: fe80::c795:2863:d68e:3849/64 範囲:リンク
UP BROADCAST RUNNING MULTICAST MTU:1500 メトリック:1
RXパケット:2209345 エラー:53 損失:0 オーバラン:0 フレーム:0
TXパケット:55372 エラー:0 損失:0 オーバラン:0 キャリア:0
衝突(Collisions):0 TXキュー長:1000
RXバイト:689926229 (657.9 MiB) TXバイト:9595982 (9.1 MiB)

やったー!

念のため、再起動して接続できるかも確認しましょう。

sudo reboot

自分の端末から、

ssh pi@192.168.0.200
でログインできたら完了です!