AX3およびA6におけるUSB Wifiアダプタを使用したAP構築については、前回、
において、bridge接続型の構築方法を紹介していますが、今回、上流を3G/4G通信やWifiで構築する場合に都合のいい、独立したネットワークセグメントをNAT接続する設定を行います。
デバイスには、上記の記事と同じく、APの導入が容易なLogitec LAN-W150N/U2を使用します。
また、本記事の検証環境は、Debian Wheezy rc1を使用しています。
OBDN技術ブログによる動作検証は、該当するデバイスの動作を保証およびサポートを行うものではありません。
内容に関するご指摘などありましたら、ブログ記事の担当までご連絡下さい。
内容に関するご指摘などありましたら、ブログ記事の担当までご連絡下さい。
<検証環境>
Debian 7.0 Wheezy
OpenBlocks AX3/4 kernel: 3.2.36
OpenBlocks A6 kernel: 3.2.36
Logitec LAN-W150N/U2
1. 対応ドライバと事前準備
RT2870を使用しており、AX3のkernel-3.2.36では、rt2800usbドライバでサポートされています。
ただし、このドライバを使用する場合、ralink社のサイトより、
rt2870のファームウェア: rt2870.bin
を取得し、/lib/firmwareの下に置いて下さい。
また、上記ファームウェアはnon-freeのfirmware-ralinkパッケージからも導入することが出来ます。
non-freeパッケージを追加する場合は、/etc/apt/sources.listに、以下の記述を追加します。
deb ftp://ftp.plathome.co.jp/pub/debian wheezy main non-free
deb-src ftp://ftp.plathome.co.jp/pub/debian wheezy main non-free
deb ftp://ftp.plathome.co.jp/pub/debian-security wheezy/updates main
deb-src ftp://ftp.plathome.co.jp/pub/debian-security wheezy/updates main
deb-src ftp://ftp.plathome.co.jp/pub/debian wheezy main non-free
deb ftp://ftp.plathome.co.jp/pub/debian-security wheezy/updates main
deb-src ftp://ftp.plathome.co.jp/pub/debian-security wheezy/updates main
ralink社のデバイス向けファームウェアパッケージの導入を行います。
# aptitude update
# aptitude install firmware-ralink
# aptitude install firmware-ralink
dmesgでは以下のメッセージが表示されます。
usb 1-1.1: USB disconnect, device number 3
usb 1-1.1: new high-speed USB device number 5 using orion-ehci
usb 1-1.1: New USB device found, idVendor=0789, idProduct=0168
usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 1-1.1: Product: 802.11 n WLAN
usb 1-1.1: Manufacturer: Ralink
usb 1-1.1: SerialNumber: 1.0
usb 1-1.1: reset high-speed USB device number 5 using orion-ehci
ieee80211 phy1: Selected rate control algorithm 'minstrel_ht'
Registered led device: rt2800usb-phy1::radio
Registered led device: rt2800usb-phy1::assoc
Registered led device: rt2800usb-phy1::quality
usb 1-1.1: new high-speed USB device number 5 using orion-ehci
usb 1-1.1: New USB device found, idVendor=0789, idProduct=0168
usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 1-1.1: Product: 802.11 n WLAN
usb 1-1.1: Manufacturer: Ralink
usb 1-1.1: SerialNumber: 1.0
usb 1-1.1: reset high-speed USB device number 5 using orion-ehci
ieee80211 phy1: Selected rate control algorithm 'minstrel_ht'
Registered led device: rt2800usb-phy1::radio
Registered led device: rt2800usb-phy1::assoc
Registered led device: rt2800usb-phy1::quality
インタフェースはwlan0となります。
2. ip_forwardの有効化
/etc/sysctl.confを編集し、ip_forwardを有効にします。
# vi /etc/sysctl.conf
net.ipv4.ip_forward=1
net.ipv4.ip_forward=1
修正を反映させるためには再起動が必要ですが、コマンドラインより、
sysctl net.ipv4.ip_forward=1
と入力すればその時点で有効になります。
(上記のsysctl.confの設定がないと再起動時には元に戻ります。)
3. アクセスポイントとしての設定方法 有線LAN-Wifi
wlan0に対してhostapdによりワイヤレスサービスを行います。
今回はbridge接続ではないため、上流からdhcpサービスは受けません。
dhcpサーバを導入し、wlan0に対して適用します。
・事前準備
事前準備として、dhcpdサーバを導入します。
# aptitude install isc-dhcp-server
また、DNSキャッシュとして、dnsmasqを導入します。
# aptitude instal dnsmasq
・/etc/network/interfaces
auto eth0
iface eth0 inet dhcp
auto wlan0
allow-hotplug wlan0
iface wlan0 inet static
address 192.168.0.1
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
iface eth0 inet dhcp
auto wlan0
allow-hotplug wlan0
iface wlan0 inet static
address 192.168.0.1
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
・/etc/dhcp/dhcpd.conf
INTERFACES="wlan0";
option domain-name "hoge.example.org";
option domain-name-servers hoge.example.org;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
subnet 192.168.0.0 netmask 255.255.255.0{
range 192.168.0.100 192.168.0.200;
option routers 192.168.0.1;
option domain-name-servers 192.168.0.1;
}
option domain-name "hoge.example.org";
option domain-name-servers hoge.example.org;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
subnet 192.168.0.0 netmask 255.255.255.0{
range 192.168.0.100 192.168.0.200;
option routers 192.168.0.1;
option domain-name-servers 192.168.0.1;
}
dnsmasqを導入しない場合は、
option domain-name-servers 192.168.0.1
に利用できるDNSサーバアドレスを記述します。
・hostapd-1.0の導入
Debian/Wheezyパッケージより、hostapdも1.0になっており、今回はバイナリパッケージをそのまま利用します。hostapdパッケージのビルド作業は必要ないため、容易に環境を構築出来ます。
hostapdパッケージの導入
# aptitude install hostapd
設定ファイルとして、/etc/hostapd/hostapd.conf を以下の様に記述します。
<SSID>およびパスフレーズはそれぞれの環境に合わせて変更して下さい。
interface=wlan0
driver=nl80211
country_code=JP
ieee80211d=1
ssid=<SSID>
channel=6
hw_mode=g
wpa=2
wpa_passphrase=<設定するパスフレーズ>
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP
ieee80211n=1
wmm_enabled=1
driver=nl80211
country_code=JP
ieee80211d=1
ssid=<SSID>
channel=6
hw_mode=g
wpa=2
wpa_passphrase=<設定するパスフレーズ>
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP
ieee80211n=1
wmm_enabled=1
起動方法は以下の通りです。
# hostapd -B /etc/hostapd/hostapd.conf
自動起動する場合は、/etc/default/hostapdの以下の部分を修正してください。
DAEMON_CONF="/etc/hostapd/hostapd.conf"
・iptablesによるNAT設定
# iptables -A POSTROUTING -t nat -s 192.168.0.0/24 -o eth0 -j MASQUERADE
4. アクセスポイントとしての設定方法 3G/4G-Wifi
上記3項の通り、wlan0側の設定を行い、3Gのモバイルアダプタの設定を追加します。
3G/4Gのモバイル通信に関しては、
周辺機器接続テスト記事一覧-Debian Wheezyベースファームウェア版
にて検証したモバイル通信アダプタを使用しています。
構築方法については記事をご参照下さい。
上記記事に書いたreplacedefaultroute設定を行っていれば、ponで自動的に上流が3G回線に切り替わります。
wlan0から3Gアダプタ側へのNAT設定は、iptablesコマンドで以下の様に指定します。
# iptables -A POSTROUTING -t nat -s 192.168.0.0/24 -o ppp0 -j MASQUERADE
5.さいごに
iptablesに関しては、上記ではコマンドラインより直接入力していますが、本格的に導入する場合は不要なポートを塞ぐなど、十分な設定が必要だと思います。
記述に関しては、Wheezyにて若干手順が変わっているようなので、 別途ご報告します。
0 件のコメント:
コメントを投稿