Raspberry Pi Zero WH に USB-LAN アダプターを接続して固定 IP アドレスを設定する方法
前書き
Raspberry Pi Zero WH (ラズパイゼロ) に USB-LAN アダプターを接続して、それに固定 IP アドレスを設定する方法について書いておきます。
ラズパイゼロにカメラを接続して Web カメラや監視カメラの用途で使う場合、LAN ケーブルを使って有線 LAN 接続とし、Wi-Fi を OFF にしたほうが通信が安定すると考えて、この方法について調べてみた次第です。
以下について書きます。
- USB-LAN アダプターに固定 IP アドレスを設定する方法
- Wi-Fi を OFF にする方法
ラズパイゼロの設定はすべて ssh でログインしてコマンド操作で行います。
ラズパイゼロに USB-LAN アダプターを接続する
USB-LAN アダプターは家に余っていたものを使いました。
こんなやつ ↓
ラズパイゼロ側の USB インターフェイスは Micro USB Type-B (Micro B などと書かれることが多いようだ) ですが、今は Type-C 全盛でもう Micro B タイプのものはあまり売ってないようです。手に入りにくい場合は、USB ハブとか Type-C から Micro B に変換するアダプターがついているものを買えば良いと思います。
接続したら lsusb でラズパイゼロに認識されているかどうかを確認します。
$ lsusb Bus 001 Device 002: ID 0b95:7720 ASIX Electronics Corp. AX88772 Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub $
我が家にあった USB-LAN アダプターは AX88772 と認識されています。
ラズパイゼロに固定 IP アドレスをコマンド操作で設定する
ラズパイの情報です。
$ cat /etc/os-release PRETTY_NAME="Raspbian GNU/Linux 11 (bullseye)" NAME="Raspbian GNU/Linux" VERSION_ID="11" VERSION="11 (bullseye)" VERSION_CODENAME=bullseye ID=raspbian ID_LIKE=debian HOME_URL="http://www.raspbian.org/" SUPPORT_URL="http://www.raspbian.org/RaspbianForums" BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs" $ uname -a Linux raspberrypi 5.15.61+ #1579 Fri Aug 26 11:08:59 BST 2022 armv6l GNU/Linux $ df -h Filesystem Size Used Avail Use% Mounted on /dev/root 30G 1.4G 27G 5% / devtmpfs 87M 0 87M 0% /dev tmpfs 215M 0 215M 0% /dev/shm tmpfs 86M 932K 85M 2% /run tmpfs 5.0M 4.0K 5.0M 1% /run/lock /dev/mmcblk0p1 255M 50M 206M 20% /boot tmpfs 43M 0 43M 0% /run/user/1000 $
32 GB の MicroSD カードにラズパイゼロがインストールされています。
では、以下を設定していきます。
- IP アドレス は 172.16.2.21/24
- デフォゲは 172.16.1.1
- DNS サーバーは 1.1.1.1
設定するために /etc/dhcpcd.conf というファイルを編集します。vi エディターで編集しますが、vi の操作方法はカットします。
ちなみに固定 IP アドレスを設定するのになんで dhcpcd.conf という DHCP を思わせるファイル名なのかと不思議に思っていましたが、このファイルは dhcp client daemon の設定ファイルという意味で dhcpcd.conf となっているようです。
話を戻して /etc/dhcpcd.conf に以下の 4 行を追記します。
interface eth0 static ip_address=172.16.1.21/24 static routers=172.16.1.1 static domain_name_servers=1.1.1.1
固定 IP アドレスの設定はこれだけです。
Wi-Fi を OFF にするには以下のコマンドを実行して再起動します。
$ sudo iwconfig wlan0 txpower off $ sudo shutdown -r now
起動してきたら ip address コマンドで確認します。
$ ip address 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 inet6 ::1/128 scope host 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 8c:ae:4c:eb:9a:90 brd ff:ff:ff:ff:ff:ff inet 172.16.1.21/24 brd 172.16.1.255 scope global noprefixroute eth0 valid_lft forever preferred_lft forever inet6 fe80::cdb2:640e:1f7e:7917/64 scope link valid_lft forever preferred_lft forever 3: wlan0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 link/ether b8:27:eb:60:9b:da brd ff:ff:ff:ff:ff:ff $
eth0 に 172.16.1.21/24 が設定され、wlan0 には IP が設定されていないことがわかります。
ルーティングテーブルを確認します。
$ ip route
default via 172.16.1.1 dev eth0 src 172.16.1.21 metric 202
172.16.1.0/24 dev eth0 proto dhcp scope link src 172.16.1.21 metric 202
$
デフォゲが 172.16.1.1 になっていることが確認できます。