Raspberry Pi にスタティック IP を割り当てます
この記事では、スタティック IP アドレスを Raspberry Pi OS に割り当てるためのいくつかの方法を紹介します。
Raspberry Pi OS のネットワーク構成の基本
通常、ネットワークインターフェイスのスタティック IP アドレスを構成する前に、システムで使用可能なインターフェイスとその名前を確認する必要があります。この場合、最初にイーサネットインターフェイスと IPv4 アドレスに焦点を当てます。
CLI から ip a
コマンドを使用して、使用可能なすべてのインターフェースを一覧表示できます。以下に示すように出力が表示されます。各インターフェイスには、lo
、eth0
などの名前が付けられています。eth0
は最初のイーサネットインターフェイスで、現在、IP アドレス(192.168.0.24
)が割り当てられています。
標準のネットマスク 255.255.255.0
もあることに注意してください。スタティック IP アドレスを構成するには、次の手順でこのコマンド出力の eth0
部分が基本的に必要であることを忘れないでください。
ip a
サンプル出力:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
---
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:16:3e:e2:52:1c brd ff:ff:ff:ff:ff:ff
inet 192.168.0.12/24 brd 192.168.0.255 scope global
---
または、ifconfig
コマンドを実行して、システムで現在アクティブなインターフェイスを表示することもできます。出力には、前のコマンドと同様の情報が含まれます。この記事では出力テキストを縮小しており、目前のタスクに関連する部分のみに焦点を当てていることに注意してください。
ifconfig
サンプル出力:
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.0.12 netmask 255.255.255.0 broadcast 172.16.0.255
inet6 fe80::7df4:d6b9:171:f302 prefixlen 64 scopeid
---
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
---
dhcpcd
コマンドを使用して、スタティック IP アドレスを Raspberry Pi イーサネットインターフェイスに割り当てます
Raspberry Pi OS は、dhcpcd
クライアントを利用して、すべてのインターフェイスの TCP / IP を構成します。dhcpcd
は、常にバックグラウンドで実行されているデーモンプロセスです。それでも、デーモンプロセスと対話できるコマンドラインツールも示します。
前の出力で見たように、動的割り当てを使用してすでに構成されているため、最初に、eth0
インターフェイスを構成解除する必要があります。ただし、ルーターが DHCP サーバーを実行しているネットワークに Raspberry Pi を接続していない場合は、これが当てはまらない可能性があります。
後者の場合はこの手順をスキップできますが、前のコマンドを使用してイーサネットインターフェイスが最初に設定されていないことを確認してください。
指定されたインターフェイス(例:eth0
)は、dhcpcd -k [interface]
コマンドを使用するか、dhcpcd --release [interface]
を使用して構成を解除できます。
これらのコマンドのいずれかにインターフェイス引数を指定する必要があることに注意してください。指定しないと、実行中のインターフェイスがないため、dhcpcd
が終了します。
また、デフォルトの pi
ユーザーとしてログインしている場合は、すべての dhcpcd
コマンドの特権を昇格させるために、sudo
プレフィックスを含める必要があります。
sudo dhcpcd -k eth0
次に、ip a
または ifconfig
コマンドを実行して、eth0
が構成解除されたことを確認できます。前の操作が成功した場合は、/etc
ディレクトリにある dhcpcd.conf
ファイルでスタティック IP 構成を指定できます。
このファイルには通常、サンプルのスタティック IP 構成行が含まれているため、これらのコメントを解除してアドレスのみを変更する必要がある場合があります。それ以外の場合は、構成ファイルの最後に次の行を挿入し、ローカルネットワーク設定に基づいてローカルアドレスを指定します。
interface eth0
static ip_address=192.168.0.111/24
static routers=192.168.0.1
static domain_name_servers=192.168.0.1 8.8.8.8
コマンド DHCP 構成には、スタティック IP アドレス/ネットマスクに加えて、デフォルトゲートウェイアドレスと DNS サーバーが含まれていることに注意してください。前のスニペットでは、192.168.0.111
スタティック IP アドレスを eth0
インターフェースに割り当てました。ここで、これらの変更をすぐに有効にする必要があるため、次のコマンドを実行します。
sudo dhcpcd -n eth0
このコマンドは、dhcpcd
プロセスに構成ファイルを再ロードさせ、eth0
インターフェースを再バインドします。前のコマンドにインターフェース名を指定しない場合、すべてのインターフェースが再バインドされます。
Raspberry PI のスタティック IP アドレスを設定する別のシナリオには、dhcpcd.conf
ファイルを変更してからシステムを再起動することが含まれます。これは機能します。それでも、再起動を待つのに時間がかかります。また、SSH またはその他のリモート接続を使用して Raspberry Pi に接続している場合、dhcpcd -k
コマンドを使用するとセッションが使用できなくなることに注意してください。
関連記事 - Raspberry Pi
- Raspberry Pi 4 で OpenCV をセットアップする
- Raspberry Pi OS で日付と時刻を設定する
- Raspberry Pi ディスプレイの回転
- Raspberry Pi の TeamViewer
- Raspberry Pi ファイル サーバーのセットアップ
- Raspberry Pi 上の Chromium OS