Hostapd で2.4GHz帯と5GHz帯を同時に利用する。 [Hostapd で無線LAN AP構築]
Ubuntu 12.04をベースにしてHostapdを利用して無線LANアクセスポイントを構築しているのですが、a/n系とb/g/n系両対応するためのメモ。
両方を利用するためには、
1.物理的に別デバイスとして認識される無線LANデバイスが2つ必要
(もちろん、a/n対応のものと、b/g/n対応のもの)
両方のデバイス共に、アクセスポイントモードに対応している
AP modeへの対応可否はこちらから確認できます。
伴い、/etc/network/interfaces の修正が必要。
2.デバイスごとに/etc/hostapd/hostapd.confを用意することと、
それを読み込ませるために、/etc/default/hostapdを修正する。
3.Hostapd ver. 1.0以上を利用する。
さて、早速1からですが、
まえのエントリ「PLANEX 無線LANアダプタ GW-USMICRON をUbuntuで利用する」でGW-USMICRONを認識させましたので、/etc/network/interfacesを修正します。
そもそも2つのデバイスが必要なの??という点については不明です。
1つのデバイスでa/b/g/nに対応しているもので何とかならないのかと、wlan0のaliasを作ったり試行錯誤しましたが、結局わからなかったため、デバイスを2つ用意して、構築した次第です。
物理的に別デバイスとは、iw listしたときに、Wiphy phy0とWiphy phy1が表示されればOKということです。
さてさて、下記の赤字の部分が追記したところです。
--/etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# Wired network interface
auto eth0
iface eth0 inet static
address 0.0.0.0
# Wireless network interface
auto wlan0
iface wlan0 inet static
address 0.0.0.0
auto wlan1
iface wlan1 inet static
address 0.0.0.0
# Bridge network interface
auto br0
iface br0 inet static
address 192.168.1.253
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
dns-nameservers 192.168.1.1
bridge_ports eth0 wlan0 wlan1
bridge_stp off
--
2については、もとの/etc/hostapd/hostapd.conf をベースにhostapd-2.4gh.confとhostapd-5ghz.confを作成します。
--hostapd-2.4ghz.conf
interface=wlan1
bridge=br0
driver=nl80211
country_code=JP
ieee80211d=1
ssid=AP7
channel=6
hw_mode=g
#ssid=AP8
#channel=44
#hw_mode=a
wpa=2
wpa_passphrase=12345678
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP
ieee80211n=1
wmm_enabled=1
ht_capab=[SMPS-STATIC][GF][HT40+][SHORT-GI-20][SHORT-GI-40][RX-STBC1]
macaddr_acl=0
deny_mac_file=/etc/hostapd/hostapd.deny
logger_syslog=-1
logger_syslog_level=3
--
--hostapd-5ghz.conf
interface=wlan0
bridge=br0
driver=nl80211
country_code=JP
ieee80211d=1
#ssid=AP7
#channel=6
#hw_mode=g
ssid=AP8
channel=44
hw_mode=a
wpa=2
wpa_passphrase=12345678
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP
ieee80211n=1
wmm_enabled=1
ht_capab=[LDPC][HT40+][SHORT-GI-20][SHORT-GI-40][TX-STBC][RX-STBC1][DSSS_CCK-40]
macaddr_acl=0
deny_mac_file=/etc/hostapd/hostapd.deny
logger_syslog=-1
logger_syslog_level=3
--
/etc/default/hostapd については、上で作成した2つのファイルを指定します。
DAEMON_CONF="/etc/hostapd/hostapd-5ghz.conf /etc/hostapd/hostapd-2.4ghz.conf"
最後に3ですが、Ubuntu12.04のapt-get installでインストールできるhostapdはver. 0.73で2つのデバイスを起動することには対応していないようです。そこで、ver. 1.0をビルドします。
ここから
# apt-get install libssl-dev libnl-dev
この辺が入っていないと、
../src/drivers/driver_nl80211.c:22:31: warning: netlink/genl/genl.h: No such file or directory
などとおこられます。
# tar zxvf hostapd-1.0.tar.gz
# cd hostapd-1.0
# cp defconfig .config
# vi ./.config
基本的にはそのままですが、
# IEEE 802.11n (High Throughput) support
CONFIG_IEEE80211N=y
ここだけ、コメントを外します。
# make
# make install
あと、serviceコマンドで起動できるようにします。
# vi /etc/init.d/hostapd
#DAEMON_SBIN=/usr/sbin/hostapd
DAEMON_SBIN=/usr/local/bin/hostapd
# service hostapd start
これでOKのはず!
PLANEX 無線LANアダプタ GW-USMICRON をUbuntuで利用する [Hostapd で無線LAN AP構築]
Ubuntu 12.04でPLANEXの無線LANアダプタを利用するためのメモ。
によれば、rt2800usbがドライバのもよう。
# lsusb -v
によると、
Bus 001 Device 002: ID 2019:ed14 PLANEX GW-USMicroN
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x2019 PLANEX
idProduct 0xed14 GW-USMicroN
bcdDevice 1.01
iManufacturer 1 Ralink
iProduct 2 802.11 n WLAN
iSerial 3 1.0
bNumConfigurations 1
(以下略)
# echo "rt2800usb" >> /etc/modules
# echo "install rt2800usb /sbin/modprobe --ignore-install rt2800usb; /bin/echo "2019 ed14" > /sys/bus/usb/drivers/rt2800usb/new_id" >> /etc/modprobe.d/usmicron.conf
# modprobe rt2800usb
これで、OKのはず。