Home > 備忘録(Fedora) > ネットワーク構築 > アクセスポイントの構築( 130 )
Fedora19 に hostapd を利用して無線ランをアクセスポイントにすることを考える
# systemctl disable NetworkManager
# systemctl stop NetworkManager# systemctl start network
# chkconfig network on# iw list
Wiphy phy0
max # scan SSIDs: 20
max scan IEs length: 195 bytes
Coverage class: 0 (up to 0m)
Device supports RSN-IBSS.
Supported Ciphers:
* WEP40 (00-0f-ac:1)
* WEP104 (00-0f-ac:5)
* TKIP (00-0f-ac:2)
* CCMP (00-0f-ac:4)
Available Antennas: TX 0 RX 0
Supported interface modes: ←ここにAPがあるかを確認、なければアクセスポイントとしては利用できない
* IBSS
* managed
* AP
* AP/VLAN
* monitor
Band 1:
Capabilities: 0x1072
HT20/HT40
Static SM Power Save
RX Greenfield
RX HT20 SGI
RX HT40 SGI
No RX STBC
Max AMSDU length: 3839 bytes
DSSS/CCK HT40
Maximum RX AMPDU length 65535 bytes (exponent: 0x003)
Minimum RX AMPDU time spacing: 4 usec (0x05)
~~~~~途中省略~~~~~
Device supports TX status socket option.
Device supports HT-IBSS.
Device supports scan flush.# lspci
00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 14h Processor Root Complex
~~~~~途中省略~~~~~
03:00.0 Network controller: Intel Corporation Centrino Advanced-N 6235 (rev 24)
04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 09)
05:00.0 USB controller: ASMedia Technology Inc. ASM1042 SuperSpeed USB Host Controller
06:00.0 USB controller: ASMedia Technology Inc. ASM1042 SuperSpeed USB Host Controllerここ を参考にしてインストールして下さい。
# yum install hostapd -y# [root@leom zensin]# ifconfig -a
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
~~~~~途中省略~~~~~
p33p1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.xxx.yy netmask 255.255.255.0 broadcast 192.168.xxx.255
inet6 fe80::62a4:4cff:feb0:be30 prefixlen 64 scopeid 0x20<link>
inet6 2400:217e:77c6:c600:62a4:4cff:feb0:be30 prefixlen 64 scopeid 0x0<global>
~~~~~途中省略~~~~~
wlp3s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
~~~~~途中省略~~~~~
ether ff:c8:74:49:e1:9f txqueuelen 1000 (Ethernet)
~~~~~途中省略~~~~~# vi /etc/hostapd/hostapd.conf
#
# This will give you a minimal, insecure wireless network.
#
# DO NOT BE SATISFIED WITH THAT!!!
#
# A complete, well commented example configuration file is
# available here:
#
# /usr/share/doc/hostapd-2.0/hostapd.conf
#
# For more information, look here:
#
# http://wireless.kernel.org/en/users/Documentation/hostapd
#
ctrl_interface=/var/run/hostapd
ctrl_interface_group=wheel
# Some usable default settings...
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
# Uncomment these for base WPA & WPA2 support with a pre-shared key
#wpa=3
#wpa_key_mgmt=WPA-PSK
#wpa_pairwise=TKIP
#rsn_pairwise=CCMP
# DO NOT FORGET TO SET A WPA PASSPHRASE!!
#wpa_passphrase=YourPassPhrase
# Most modern wireless drivers in the kernel need driver=nl80211
driver=nl80211
# Customize these for your local configuration...
interface=wlp3s0 ←無線ランのdeviceの合わせる
hw_mode=g
channel=2
ssid=myssid ←各自で設定して下さい
wpa=1
wpa_passphrase=aaaaaaaaaaaaaaaaa ←接続時のネットワーク・セキュリティキーです
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP有線ランのIPアドレスはDHCPで取得する
# vi /etc/sysconfig/network-scripts/ifcfg-p33p1
DEVICE=p33p1
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes ←念の為に追加する
IPV4_FAILURE_FATAL=no
ONBOOT=yes
HWADDR=e5:05:58:34:08:5d
PEERDNS=yes
PEERROUTES=yes無線ランのIPアドレスが10.42.1.1の場合です
# vi /etc/sysconfig/network-scripts/ifcfg-wlan0
DEVICE=wlp3s0
BOOTPROTO=static
HWADDR=ff:c8:74:49:e1:9f ←マックアドレスです
TYPE=Wireless
NM_CONTROLLED=no
USERCTL=no
IPV6INIT=no
ONBOOT=yes
DEFROUTE=no ←念の為に追加する
MODE=Master ←Fedora20ではこれがないと無線interfaceを認識してくれない
IPADDR=10.42.1.1 ←無線ランのIPアドレスです
NETWORK=10.42.1.0
NETMASK=255.255.255.0
BROADCAST=10.42.1.255# ifconfig -a
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
~~~~~途中省略~~~~~
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
p33p1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.25 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::62a4:4cff:feb0:be30 prefixlen 64 scopeid 0x20<link>
inet6 2400:217e:77c6:c600:62a4:4cff:feb0:be30 prefixlen 64 scopeid 0x0<global>
~~~~~途中省略~~~~~
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlp3s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.42.1.1 netmask 255.255.255.0 broadcast 10.42.1.255
inet6 fe80::caf7:33ff:fea4:bb45 prefixlen 64 scopeid 0x20<link>
ether ff:c8:74:49:e1:9f txqueuelen 1000 (Ethernet)
~~~~~途中省略~~~~~
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0# yum install dhcp -y# vi /etc/dhcp/dhcpd.conf
#
# DHCP Server Configuration file.
# see /usr/share/doc/dhcp*/dhcpd.conf.example
# see dhcpd.conf(5) man page
#
default-lease-time 600; #クライアントIPアドレスのデフォルトリース時間
max-lease-time 7200; #クライアントIPアドレスの最大リース時間
log-facility local7; #ログ出力の指定
subnet 10.42.1.0 netmask 255.255.255.0 {
range 10.42.1.10 10.42.1.50; #クライアントに付与するIPアドレス
option routers 10.42.1.1; #ルーターのIPアドレス
option domain-name-servers 8.8.8.8, 8.8.4.4; #DNSサーバーのIPアドレス
}device wlp3s0に 10.42.1.0/24 → 192.168.1.1 のルーティングを追加する
# vi /etc/sysconfig/network-scripts/route-wlan0
10.42.1.0/24 via 192.168.1.1# systemctl restart network# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 p33p1
10.42.1.0 0.0.0.0 255.255.255.0 U 0 0 0 wlp3s0
169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 p33p1
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 p33p1# route del -net 10.42.1.0 netmask 255.255.255.0 ←削除# systemctl start iptables ←iptables の起動
# systemctl enable iptables ←iptables の自動起動設定# vi /etc/sysctl.conf
net.ipv4.ip_forward=1上記は再起動しないと効かないので、今すぐ設定する場合は# echo "1 > /proc/sys/net/ipv4/ip_forward"下記のコマンドを実行する# iptables -t nat -A POSTROUTING -o p33p1 -j MASQUERADE
# iptables -A FORWARD -i p33p1 -o wlp3s0 -m state --state RELATED,ESTABLISHED -j ACCEPT
# iptables -A FORWARD -i wlp3s0 -o p33p1 -j ACCEPT上記の設定を保存する# service iptables save# systemctl restart iptables# systemctl start hostapd ←hostapd の起動
# systemctl enable hostapd ←hostapd の自動起動設定