Raspberry pi zero Wで内蔵のWiFiを使わずに、WiFiドングルを使用し、通信距離を伸ばそうと試みた時に苦戦したのでメモ
WiFiアダプタは、TP-link TL-WN823Nを使用した。
TL-WN823NをUSB接続し、内蔵WiFiでネットに接続し、以下のコマンドを実行する
#TL-WN823Nを使えるようにする
sudo wget http://downloads.fars-robotics.net/wifi-drivers/install-wifi -O /usr/bin/install-wifi
sudo chmod +x /usr/bin/install-wifi
sudo install-wifi
これでwlan1が追加されているはず。
###ちなみに、BuffaloのWI-U2-433DHPもこれでいけた。
###今まで、https://github.com/diederikdehaas/rtl8812AU/tree/driver-4.3.20 からダウンロードして、Makefileをどうにかこうにかしてもダメだったのに、今回ものの数分、三行のコマンドで済んでしまった......
###WI-U2-433DHPの方が通信速度や通信距離は優れていた。
気を取り直して......
##内蔵WiFiをOFFにする
sudo nano /etc/modprobe.d/raspi-blacklist.conf
blacklist brcmfmac
blacklist brcmutil
EOF
sudo reboot
以上を入力し、内臓のWiFiをOFFにする。
再起動後にip link showコマンドでwlan0のMACアドレスがb8:27:ebでなくなっていたら、WiFiアダプタに切り替わっている。
##アクセスポイント化
この方の記事を参考にさせていただきました
sudo systemctl stop dnsmasq
sudo systemctl stop hostapd
sudo nano /etc/dhcpcd.conf
interface wlan0
static ip_address=192.168.100.1/24
sudo service dhcpcd restart
sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.old
sudo nano /etc/dnsmasq.conf
interface=wlan0
dhcp-range=192.168.100.2,192.168.100.40,255.255.255.0,24h
sudo nano /etc/hostapd/hostapd.conf
interface=wlan0
driver=nl80211
ssid=YOUR_SSID
hw_mode=g
channel=6
wmm_enabled=0
macaddr_acl=0
auth_algs=1
wpa=2
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP
wpa_passphrase=YOUR_PASSWORD
sudo nano /etc/default/hostapd
# Defaults for hostapd initscript
#
# See /usr/share/doc/hostapd/README.Debian for information about alternative
# methods of managing hostapd.
#
# Uncomment and set DAEMON_CONF to the absolute path of a hostapd configuration
# file and hostapd will be started during system boot. An example configuration
# file can be found at /usr/share/doc/hostapd/examples/hostapd.conf.gz
#DAEMON_CONF=""
DAEMON_CONF="/etc/hostapd/hostapd.conf
DAEMON_CONF="/etc/hostapd/hostapd.conf" ←追加
sudo systemctl unmask hostapd
sudo systemctl enable hostapd
sudo systemctl start hostapd
sudo systemctl start dnsmasq
sudo nano /etc/sysctl.conf
net.ipv4.ip_forward=1
net.ipv4.ip_forward=1 コメント外す
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
最後にrebootすると、アクセスポイント化が完了しています。
お疲れさまでした。