Raspberry Pi 3 をアクセスポイントにする

公式のサイトのACCESS-POINTの "Using the Raspberry Pi as an access point to share an internet connection (bridge)" を参考に Raspberry Pi 3 をアクセスポイントにしました。

$ sudo -s
# apt-get update
# apt-get upgrade
# apt-get install hostapd bridge-utils
# systemctl stop hostapd

/etc/dhcpcd.conf の最後に、denyinterfaces wlan0denyinterfaces eth0 を追記します。

ブリッジを追加します。

# brctl addbr br0

br0 に eth0 を接続します。

# brctl addif br0 eth0

/etc/network/interfaces に追記します。

# Bridge setup
auto br0
iface br0 inet manual
    bridge_ports eth0 wlan0
    bridge_stp on

/etc/hostapd/hostapd.conf を記述します。

interface=wlan0
bridge=br0
#driver=nl80211
ssid=NameOfNetwork
hw_mode=g
channel=7
wmm_enabled=0
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=AardvarkBadgerHedgehog
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
country_code=JP

ここまでの設定でリブートすれば動くように書かれていましたが、試しに、hostapd /etc/hostapd/hostapd.conf を実行してみると、AP-DISABLED となっていました。 rfkill list を実行すると以下のように表示されました。

0: phy0: Wireless LAN
    Soft blocked: yes
    Hard blocked: no
1: hci0: Bluetooth
    Soft blocked: yes
    Hard blocked: no

そこで、rfkill unblock 0 として、Wireless LAN のブロックを解除しました。

最後に、/etc/default/hostapd の DAEMON_CONF="" のところを次のように修正して、reboot します。

DAEMON_CONF="/etc/hostapd/hostapd.conf"