目次

注意

  • 実機がないため、細かな動作検証は行っていない。参考情報としてご覧願います。

概要

主な内容

  • iptablesでMASQUERADEを有効にする
  • WPAに対応するため、無線LANアクセスポイントにhostapdを使用
  • DHCPサーバとDNSサーバにdnsmasqの最新版を使用
    • Atmark-Dist標準のdnsmasqは古くてDHCPサーバとして動かないため

参考情報

構築手順

開発環境の準備

  • ATDEをインストールして起動
  • 作業は原則/home/atmark/atmark-dist-20090318 以下で行う

make menuconfig

kernel

  • NATを有効にする
    [*] MASQUERADE target support
    [*] REDIRECT target support

Userland Configuration

  • Network Applicationsで次を選択
    [*] madwifi-tools
    [*]   wlanconfig
    [*] dnsmasq
    [*] hostapd

コンバイルの準備

hostapd

  • atmark-dist-20090318/user/hostap/hostapd/.configを次の通り編集
    CONFIG_DRIVER_MADWIFI=y
    CFLAGS += -I../../madwifi-tools

dnsmasq

  • dnsmasqの最新版を開発環境にコピー
    cd user
    mv dnsmasq dnsmasq_bkup
    wget http://www.thekelleys.org.uk/dnsmasq/dnsmasq-2.57.tar.gz
    tar -xzvf dnsmasq-2.57.tar.gz
    ln -s dnsmasq-2.57 dnsmasq
  • makefileに次を追加
    romfs:
      $(ROMFSINST) $(SRC)/dnsmasq /bin/dnsmasq

コンパイルの実行

  • makeコマンドをターゲット指定なしで実行
    # make

設定ファイルの準備

  • 必要なファイルを/etc/defaults 以下に作成する

hostapd.conf

  • SSIDとパスフレーズは適宜修正
    interface=ath0
    driver=madwifi
    
    logger_syslog=-1
    logger_syslog_level=2
    logger_stdout=-1
    logger_stdout_level=2 
    
    debug=0
    dump_file=/tmp/hostapd.dump
    ctrl_interface=/var/run/hostapd
    ctrl_interface_group=0 
    
    ssid=【SSID】
    max_num_sta=255
    macaddr_acl=0
    auth_algs=1
    
    wme_enabled=1
    wme_ac_bk_cwmin=4
    wme_ac_bk_cwmax=10
    wme_ac_bk_aifs=7
    wme_ac_bk_txop_limit=0
    wme_ac_bk_acm=0
    wme_ac_be_aifs=3
    wme_ac_be_cwmin=4
    wme_ac_be_cwmax=10
    wme_ac_be_txop_limit=0
    wme_ac_be_acm=0
    wme_ac_vi_aifs=2
    wme_ac_vi_cwmin=3
    wme_ac_vi_cwmax=4
    wme_ac_vi_txop_limit=94
    wme_ac_vi_acm=0
    wme_ac_vo_aifs=2
    wme_ac_vo_cwmin=2
    wme_ac_vo_cwmax=3
    wme_ac_vo_txop_limit=47
    wme_ac_vo_acm=0
    eapol_key_index_workaround=0
    eap_server=0
    own_ip_addr=127.0.0.1
    wpa=1
    wpa_passphrase=【パスフレーズ】
    wpa_key_mgmt=WPA-PSK
    wpa_pairwise=TKIP

dnsmasq.conf

  • DHCPで配布するIPアドレスは192.168.100.50~192.168.100.100まで
    domain-needed
    bogus-priv
    
    interface=ath0
    no-dhcp-interface=eth0
    dhcp-range=192.168.100.50,192.168.100.100,12h
    dhcp-leasefile=/var/run/dnsmasq.leases

interfaces

  • WAN側はDHCPクライアント、LAN側は192.168.100.1の固定
    # /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
    
    
    auto lo eth0 ath0
    
    iface lo inet loopback
    
    iface eth0 inet dhcp
        up echo 1 > /proc/sys/net/ipv4/ip_forward
        up iptables -t nat -A POSTROUTING -o eth0 -s 192.168.100.0/24 -j MASQUERADE
        down iptbles -t NAT -F
    
    iface ath0 inet static
        address 192.168.100.1
        netmask 255.255.255.0
        broadcast 192.168.100.255
        pre-up wlanconfig ath0 destroy
        pre-up wlanconfig ath0 create wlandev wifi0 wlanmode ap

inittab

  • アプリが停止しても自動起動するようにrespawnで起動指定
    ::respawn:/bin/dnsmasq -k -C /etc/config/dnsmasq.conf
    ::respawn:/bin/hostapd /etc/config/hostapd.conf 2>&1 > /dev/null

イメージの再作成

  • 上記設定をromfs.imgに反映するためにmakeを再実行
    # make image

インストール


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-09-25 (日) 19:27:03 (442d)