![見出し画像](https://assets.st-note.com/production/uploads/images/134143338/rectangle_large_type_2_3a0ade6b0dc84ac44d46036296255ffc.png?width=1200)
80. Raspberry Pi を Wi-Fi Spot 化する
はじめに
75回の記事から続けてきた、
![](https://assets.st-note.com/img/1710566078821-RoBW5yoFvz.png?width=1200)
という構成に関する記事の最後の投稿です。今回は、Raspberry Pi の Wi-Fi Spot 化を試します。
やること
Raspberry Pi の Wi-Fi Spot 化は、オープンソースで公開されている hostapd を使います。また、スマートフォン等が、この Wi-Fi Spot に接続した際に、IP Address が必要になるので、DHCP Server の設定も行います。こちらは、DNS と DHCP Server が一体化している dnsmasq を使います。
これらのインストール・設定方法は、
Raspberry PiをWiFiアクセスポイント化してスタンドアロン運用 - みかんのゆるふわ技術ブログ (mikan-tech.net)
を参考にさせていただきました。
なお、初期化設定が終わったら、Wi-Fi Spot と DHCP Server 機能は停止します。
dnsmasq のインストール
Raspberry Pi は、有線LAN と Wi-Fi の両方が装備されているのはご存じですよね。インストール設定等は、Raspberry Pi を有線 LAN でローカルネットに接続し、Wi-Fi は未接続にして、ネットワーク越しに作業用 PC から RSH でリモート接続して作業を進めます。ちなみに、
pi@raspi-taruto:~ $ 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 noprefixroute
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether d8:3a:dd:a8:2d:c5 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.35/24 brd 192.168.0.255 scope global dynamic noprefixroute eth0
valid_lft 2236sec preferred_lft 2236sec
inet6 fe80::b992:78fe:179f:7b7b/64 scope link noprefixroute
valid_lft forever preferred_lft forever
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether d8:3a:dd:a8:2d:c6 brd ff:ff:ff:ff:ff:ff
inet 192.168.68.59/22 brd 192.168.71.255 scope global dynamic noprefixroute wlan0
valid_lft 5838sec preferred_lft 5838sec
inet6 fe80::c404:cc2d:5eb9:fec4/64 scope link noprefixroute
valid_lft forever preferred_lft forever
こんな感じ。あ、Wi-Fi もつながってますね(笑)
早速インストールを行います。
$ sudo apt-get install dnsmasq
Wi-Fi spot 化するのは、Wi-Fi 側なので、/etc/dnsmasq.conf の一番最後に以下の記述を行います。
interface=wlan0
dhcp-range=192.168.200.10,192.168.200.20,255.255.255.0,12h
ip address で三番目に表示されていたのが、Wi-Fi 用ネットワークで、wlan0 となります。二行目は、DHCP Server の設定で、192.168.200.10~20 の範囲で割り当てるよという設定です。
次に、wlan0 の IP アドレスを固定指定に変更します。192.160.200.2 とします。意味は特にありません。/etc/dhcp/dhcpd.conf の最後に以下の記述を行います。
interface wlan0
static ip_address=192.168.200.2/24
以上で、完了
hostapd のインストール
次に、hostapd をインストールします。
$ sudo apt-get install hostapd
インストールが終わったら、Wi-Fi Spot の設定を行います。
SSID は ”IoT<<MAC Address >>”とし、パスワードは”123456”とします。MAC Address は、先ほど ip address コマンドを実行した際に表示されていた値を使います。
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether d8:3a:dd:a8:2d:c6 brd ff:ff:ff:ff:ff:ff
inet 192.168.68.59/22 brd 192.168.71.255 scope global dynamic noprefixroute wlan0
valid_lft 5838sec preferred_lft 5838sec
inet6 fe80::c404:cc2d:5eb9:fec4/64 scope link noprefixroute
valid_lft forever preferred_lft forever
この二行目に表示された D83ADDA82DC6 を使います。
/etc/hostapd/hostapd.conf というファイルを作成し、以下の内容を記述します。
ctrl_interface=/var/run/hostapd
ctrl_interface_group=0
interface=wlan0
driver=nl80211
ssid=IoTD83ADDA83DC6
hw_mode=g
country_code=JP
channel=11
ieee80211d=1
wmm_enabled=0
macaddr_acl=0
auth_algs=1
wpa=2
wpa_passphrase=123456
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP
設定の詳細は、Raspberry PiをWiFiアクセスポイント化してスタンドアロン運用 - みかんのゆるふわ技術ブログ (mikan-tech.net) の説明を読んでくださいね。(丸投げ:笑)
設定が終わったので、hostapd を有効化します。
$ sudo systemctl unmask hostapd.service
$ sudo systemctl enable hostapd.service
おや?
ここから先は
Azure の最新機能で IoT を改めてやってみる
2022年3月にマイクロソフトの中の人から外の人になった Embedded D. George が、現時点で持っている知識に加えて、頻繁に…
この記事が気に入ったらサポートをしてみませんか?