ラズパイを持ち歩いているときでも、ラズパイにWifiで繋がりたい。でもネットワークにつなげられる時はラズパイ自身もインターネットに繋がりたい。なので、ちっこいUSBドングルはラズパイ自身のインターネット接続用。Pi3自身のWifiはアクセスポイントとして他のクライアントから繋ぎにこれるようにしてみた。
やり方も、必要なものも、まるまる
ここに書いてあった。
インストール
apt-getするだけ
pi@raspberrypi:~ $ sudo apt-get update
pi@raspberrypi:~ $ sudo apt-get install hostapd dnsmasq
hostapdの設定
/etc/hostapd/hostapd.confを作って編集。内容はここのCONFIGURE HOSTAPDを丸写し。パスフレーズだけこんな感じで変更。
# The network passphrase
# wpa_passphrase=raspberry
wpa_passphrase=iukosoyorasshaimashita
作った設定を読み込ませるために /etc/default/hostapd を編集
#DAEMON_CONF=""
DAEMON_CONF="/etc/hostapd/hostapd.conf"
dnsmasqの設定
手順はここのCONFIGURE DNSMASQを丸写し。オリジナルをリネームしてから/etc/dnsmasq.confを作り編集。ここPaste the following into the new file:の内容をコピーしてベタリと貼り付け。待ち受けアドレスとDHCPサーバとして配布するアドレスの範囲だけ変えた。
interface=wlan0 # Use interface wlan0
#listen-address=172.24.1.1 # Explicitly specify the address to listen on
listen-address=192.168.100.100
bind-interfaces # Bind to the interface to make sure we aren't sending things elsewhere
server=8.8.8.8 # Forward DNS requests to Google DNS
domain-needed # Don't forward short names
bogus-priv # Never forward addresses in the non-routed address spaces.
# dhcp-range=172.24.1.50,172.24.1.150,12h # Assign IP addresses between 172.24.1.50 and 172.24.1.150 with a 12 hour lease time
dhcp-range=192.168.100.150,192.168.100.199,12h
IPv4フォワード設定
ここのSET UP IPV4 FORWARDINGに従い進めた。
なにはともあれ、IPv4フォワードの有効化。/etc/sysctl.confを開いて編集
# Uncomment the next line to enable packet forwarding for IPv4
#net.ipv4.ip_forward=1
net.ipv4.ip_forward=1
例だとwlan0へ繋ぎに来たクライアントを有線LANのeth0から外に出してあげてるので、ここをwlan0に繋ぎに来た、wlan1から外に出してと読み替えて以下のコマンドを実施。
pi@raspberrypi:~ $ sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"
pi@raspberrypi:~ $ sudo iptables -t nat -A POSTROUTING -o wlan1 -j MASQUERADE
pi@raspberrypi:~ $ sudo iptables -A FORWARD -i wlan1 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
pi@raspberrypi:~ $ sudo iptables -A FORWARD -i wlan0 -o wlan1 -j ACCEPT
pi@raspberrypi:~ $ sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"
最後に自動起動の設定をする。/etc/rc.localを編集
iptables-restore < /etc/iptables.ipv4.nat
exit 0
保存したらサービス開始
pi@raspberrypi:~ $ sudo service hostapd start
pi@raspberrypi:~ $ sudo service dnsmasq start
SSIDの候補になんか出てくるかと思いきや出なかったので、困ったときのリブート
SSIDを変えたければ/etc/hostapd/hostapd.confを編集
# This is the name of the network
# ssid=Pi3-AP
ssid=KEISATSUJYANAI
多分SSH切れてるけど。