一、hostapd.
1.hostapd编译:
在rtl8188wifi资料包中解压wpa_supplicant_hostapd-0.8_rtw_20120803.zip,并进入hostapd源码目录:
修改Makefile文件,添加
1)CC=arm-linux-gcc
2)CFLAGS = -MMD -O2 -Wall -g
保存退出,make。编译完毕生成hostapd,将其拷贝到开发板/sbin目录下。
2.配置文件:hostap.conf:
内容如下:
#wifi接口
interface=wlan0
#wifi热点名称
ssid=rocky
#通道
channel=1
#可以默认为g
hw_mode=g
wpa=1
#密码
wpa_passphrase=123456789
#加密方式
wpa_key_mgmt=WPA-PSK
wpa_pairwise=CCMP
3.获得最佳频道的方法:
ifconfig wlan0 up
iwlist wlan0 scan
cat /proc/net/rtl819xD/wlan0/best_channel
4.开发板上设置wifi的地址为:192.168.1.1
5.开发板上启动wifi热点服务:
./hostapd hostap.conf -B
6.到此为止,wifi热点已经开启,其他设备可通过静态ip来连接这个热点。若要使用动态获取ip,则还需要开启udhcpd服务。
二、udhcpd:
1.无需再编译,由busybox中已编出。
2.TQ2440上无/var/lib/misc/udhcpd.leases这个文件,开启udhcpd服务的时候会提示错误。解决方法就是自己手动创建它。
3.启动udhcpd服务命令:
udhcpd -fS /etc/udhcpd.conf &
4.配置文件dhcpd.conf内容:
1)需要注意修改的地方
interface eth0 改为 interface wlan0
2) 注释掉:option 0x08 01020304 这一行。
3)其他参数根据实际情况去修改。
5.以下附上udhcpd.conf的内容及说明:
######################################################################################
# Sample udhcpd configuration file (/etc/udhcpd.conf)
# Values shown are defaults
# The start and end of the IP lease block
start 192.168.1.20
end 192.168.1.254
# The interface that udhcpd will use
interface wlan0
# The maximum number of leases (includes addresses reserved
# by OFFER's, DECLINE's, and ARP conflicts). Will be corrected
# if it's bigger than IP lease block, but it ok to make it
# smaller than lease block.
#max_leases 254
# The time period at which udhcpd will write out a dhcpd.leases
# file. If this is 0, udhcpd will never automatically write a
# lease file. Specified in seconds.
#auto_time 7200
# The amount of time that an IP will be reserved (leased to nobody)
# if a DHCP decline message is received (seconds)
#decline_time 3600
# The amount of time that an IP will be reserved
# if an ARP conflict occurs (seconds)
#conflict_time 3600
# How long an offered address is reserved (seconds)
#offer_time 60
# If client asks for lease below this value, it will be rounded up
# to this value (seconds)
#min_lease 60
# The location of the leases file
#lease_file /etc/udhcpd.leases
# The location of the pid file
#pidfile /var/run/udhcpd.pid
# Every time udhcpd writes a leases file, the below script will be called
#notify_file # default: no script
#notify_file dumpleases # useful for debugging
# The following are bootp specific options
# next server to use in bootstrap
#siaddr 192.168.1.22 # default: 0.0.0.0 (none)
# tftp server name
#sname zorak # default: none
# tftp file to download (e.g. kernel image)
#boot_file /var/nfs_root # default: none
# Static leases map
#static_lease 00:60:08:11:CE:4E 192.168.1.54
#static_lease 00:60:08:11:CE:3E 192.168.1.44
# The remainder of options are DHCP options and can be specified with the
# keyword 'opt' or 'option'. If an option can take multiple items, such
# as the dns option, they can be listed on the same line, or multiple
# lines.
# Examples:
opt dns 210.21.4.130 221.5.88.88
option subnet 255.255.255.0
opt router 192.168.1.2
opt wins 192.168.1.8
option dns 210.21.4.130 # appended to above DNS servers for a total of 3
option domain local
option lease 864000 # default: 10 days
# Arbitrary option in hex form:
#option 0x08 01020304 # option 8: "cookie server IP addr: 1.2.3.4"
# Currently supported options (for more info, see options.c):
#opt lease NUM
#opt subnet IP
#opt broadcast IP
#opt router IP_LIST
#opt ipttl NUM
#opt mtu NUM
#opt hostname STRING # client's hostname
#opt domain STRING # client's domain suffix
#opt search STRING_LIST # search domains
#opt nisdomain STRING
#opt timezone NUM # (localtime - UTC_time) in seconds. signed
#opt tftp STRING # tftp server name
#opt bootfile STRING # tftp file to download (e.g. kernel image)
#opt bootsize NUM # size of that file
#opt rootpath STRING # (NFS) path to mount as root fs
#opt wpad STRING
#opt serverid IP # default: server's IP
#opt message STRING # error message (udhcpd sends it on success too)
# Options specifying server(s)
#opt dns IP_LIST
#opt wins IP_LIST
#opt nissrv IP_LIST
#opt ntpsrv IP_LIST
#opt lprsrv IP_LIST
#opt swapsrv IP
# Obsolete options, no longer supported
#opt logsrv IP_LIST # 704/UDP log server (not syslog!)
#opt namesrv IP_LIST # IEN 116 name server, obsolete (August 1979!!!)
#opt cookiesrv IP_LIST # RFC 865 "quote of the day" server, rarely (never?) used
#opt timesrv IP_LIST # RFC 868 time server, rarely (never?) used
######################################################################################
1.hostapd编译:
在rtl8188wifi资料包中解压wpa_supplicant_hostapd-0.8_rtw_20120803.zip,并进入hostapd源码目录:
修改Makefile文件,添加
1)CC=arm-linux-gcc
2)CFLAGS = -MMD -O2 -Wall -g
保存退出,make。编译完毕生成hostapd,将其拷贝到开发板/sbin目录下。
2.配置文件:hostap.conf:
内容如下:
#wifi接口
interface=wlan0
#wifi热点名称
ssid=rocky
#通道
channel=1
#可以默认为g
hw_mode=g
wpa=1
#密码
wpa_passphrase=123456789
#加密方式
wpa_key_mgmt=WPA-PSK
wpa_pairwise=CCMP
3.获得最佳频道的方法:
ifconfig wlan0 up
iwlist wlan0 scan
cat /proc/net/rtl819xD/wlan0/best_channel
4.开发板上设置wifi的地址为:192.168.1.1
5.开发板上启动wifi热点服务:
./hostapd hostap.conf -B
6.到此为止,wifi热点已经开启,其他设备可通过静态ip来连接这个热点。若要使用动态获取ip,则还需要开启udhcpd服务。
二、udhcpd:
1.无需再编译,由busybox中已编出。
2.TQ2440上无/var/lib/misc/udhcpd.leases这个文件,开启udhcpd服务的时候会提示错误。解决方法就是自己手动创建它。
3.启动udhcpd服务命令:
udhcpd -fS /etc/udhcpd.conf &
4.配置文件dhcpd.conf内容:
1)需要注意修改的地方
interface eth0 改为 interface wlan0
2) 注释掉:option 0x08 01020304 这一行。
3)其他参数根据实际情况去修改。
5.以下附上udhcpd.conf的内容及说明:
######################################################################################
# Sample udhcpd configuration file (/etc/udhcpd.conf)
# Values shown are defaults
# The start and end of the IP lease block
start 192.168.1.20
end 192.168.1.254
# The interface that udhcpd will use
interface wlan0
# The maximum number of leases (includes addresses reserved
# by OFFER's, DECLINE's, and ARP conflicts). Will be corrected
# if it's bigger than IP lease block, but it ok to make it
# smaller than lease block.
#max_leases 254
# The time period at which udhcpd will write out a dhcpd.leases
# file. If this is 0, udhcpd will never automatically write a
# lease file. Specified in seconds.
#auto_time 7200
# The amount of time that an IP will be reserved (leased to nobody)
# if a DHCP decline message is received (seconds)
#decline_time 3600
# The amount of time that an IP will be reserved
# if an ARP conflict occurs (seconds)
#conflict_time 3600
# How long an offered address is reserved (seconds)
#offer_time 60
# If client asks for lease below this value, it will be rounded up
# to this value (seconds)
#min_lease 60
# The location of the leases file
#lease_file /etc/udhcpd.leases
# The location of the pid file
#pidfile /var/run/udhcpd.pid
# Every time udhcpd writes a leases file, the below script will be called
#notify_file # default: no script
#notify_file dumpleases # useful for debugging
# The following are bootp specific options
# next server to use in bootstrap
#siaddr 192.168.1.22 # default: 0.0.0.0 (none)
# tftp server name
#sname zorak # default: none
# tftp file to download (e.g. kernel image)
#boot_file /var/nfs_root # default: none
# Static leases map
#static_lease 00:60:08:11:CE:4E 192.168.1.54
#static_lease 00:60:08:11:CE:3E 192.168.1.44
# The remainder of options are DHCP options and can be specified with the
# keyword 'opt' or 'option'. If an option can take multiple items, such
# as the dns option, they can be listed on the same line, or multiple
# lines.
# Examples:
opt dns 210.21.4.130 221.5.88.88
option subnet 255.255.255.0
opt router 192.168.1.2
opt wins 192.168.1.8
option dns 210.21.4.130 # appended to above DNS servers for a total of 3
option domain local
option lease 864000 # default: 10 days
# Arbitrary option in hex form:
#option 0x08 01020304 # option 8: "cookie server IP addr: 1.2.3.4"
# Currently supported options (for more info, see options.c):
#opt lease NUM
#opt subnet IP
#opt broadcast IP
#opt router IP_LIST
#opt ipttl NUM
#opt mtu NUM
#opt hostname STRING # client's hostname
#opt domain STRING # client's domain suffix
#opt search STRING_LIST # search domains
#opt nisdomain STRING
#opt timezone NUM # (localtime - UTC_time) in seconds. signed
#opt tftp STRING # tftp server name
#opt bootfile STRING # tftp file to download (e.g. kernel image)
#opt bootsize NUM # size of that file
#opt rootpath STRING # (NFS) path to mount as root fs
#opt wpad STRING
#opt serverid IP # default: server's IP
#opt message STRING # error message (udhcpd sends it on success too)
# Options specifying server(s)
#opt dns IP_LIST
#opt wins IP_LIST
#opt nissrv IP_LIST
#opt ntpsrv IP_LIST
#opt lprsrv IP_LIST
#opt swapsrv IP
# Obsolete options, no longer supported
#opt logsrv IP_LIST # 704/UDP log server (not syslog!)
#opt namesrv IP_LIST # IEN 116 name server, obsolete (August 1979!!!)
#opt cookiesrv IP_LIST # RFC 865 "quote of the day" server, rarely (never?) used
#opt timesrv IP_LIST # RFC 868 time server, rarely (never?) used
######################################################################################