文档章节

树莓派变身智能无线路由器

素人派
 素人派
发布于 2016/12/31 20:45
字数 911
阅读 29
收藏 0
  • 选购合适的无线网卡
进过我测试的网卡包括:腾达(TENDA)、360随身wifi 通过lsusb命令可以看到USB接口的网卡型号,可能类似如下: Ralink Technology, Corp. RT5370 Wireless Adapter
  • 安装软件
apt-get update apt-get upgrade apt-get install hostapd dhcpd hostapd是用于AP用户认证的守护进程 udhcpd是用于提供DHCP服务
  • 配置dhcp
/etc/udhcpd.conf [codesyntax lang="java"]
# Sample udhcpd configuration file (/etc/udhcpd.conf)

# The start and end of the IP lease block

start		192.168.19.20	#default: 192.168.0.20
end		192.168.19.254	#default: 192.168.0.254


# The interface that udhcpd will use

interface	wlan0		#default: eth0


# The maximim number of leases (includes addressesd reserved
# by OFFER's, DECLINE's, and ARP conficts

#max_leases	254		#default: 254


# If remaining is true (default), udhcpd will store the time
# remaining for each lease in the udhcpd leases file. This is
# for embedded systems that cannot keep time between reboots.
# If you set remaining to no, the absolute time that the lease
# expires at will be stored in the dhcpd.leases file.

remaining	yes		#default: yes


# 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		#default: 7200 (2 hours)


# The amount of time that an IP will be reserved (leased) for if a
# DHCP decline message is received (seconds).

#decline_time	3600		#default: 3600 (1 hour)


# The amount of time that an IP will be reserved (leased) for if an
# ARP conflct occurs. (seconds

#conflict_time	3600		#default: 3600 (1 hour)


# How long an offered address is reserved (leased) in seconds

#offer_time	60		#default: 60 (1 minute)

# If a lease to be given is below this value, the full lease time is
# instead used (seconds).

#min_lease	60		#defult: 60


# The location of the leases file

lease_file	/var/lib/misc/udhcpd.leases	#defualt: /var/lib/misc/udhcpd.leases

# The location of the pid file
#pidfile	/var/run/udhcpd.pid	#default: /var/run/udhcpd.pid

# Everytime udhcpd writes a leases file, the below script will be called.
# Useful for writing the lease file to flash every few hours.

#notify_file				#default: (no script)

#notify_file	dumpleases	# <--- useful for debugging

# The following are bootp specific options, setable by udhcpd.

#siaddr		192.168.0.22		#default: 0.0.0.0

#sname		zorak			#default: (none)

#boot_file	/var/nfs_root		#default: (none)

# The remainer of options are DHCP options and can be specifed 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. The only option with a default is 'lease'.

#Examles
opt	dns	192.168.19.1 192.168.18.1
option	subnet	255.255.255.0
opt	router	192.168.19.1
opt	wins	192.168.10.10
option	dns	129.219.13.81	# appened to above DNS servers for a total of 3
option	domain	local
option	lease	864000		# 10 days of seconds


# Currently supported options, for more info, see options.c
#opt subnet
#opt timezone
#opt router
#opt timesrv
#opt namesrv
#opt dns
#opt logsrv
#opt cookiesrv
#opt lprsrv
#opt bootsize
#opt domain
#opt swapsrv
#opt rootpath
#opt ipttl
#opt mtu
#opt broadcast
#opt wins
#opt lease
#opt ntpsrv
#opt tftp
#opt bootfile
#opt wpad

# Static leases map
#static_lease 00:60:08:11:CE:4E 192.168.0.54
#static_lease 00:60:08:11:CE:3E 192.168.0.44
static_lease CC:07:AB:4F:97:F7 192.168.19.2
static_lease 68:17:29:43:D2:4E 192.168.19.3
[/codesyntax]
  • 配置网卡
/etc/network/interfaces [codesyntax lang="php"]
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp
address 192.168.1.123
netmask 255.255.255.0
gateway 192.168.1.1

auto wlan0
iface wlan0 inet static
address 192.168.19.1
netmask 255.255.255.0
#gateway 192.168.19.1
#allow-hotplug wlan0
[/codesyntax]
  • 配置AP
/etc/hostapd/hostapd.conf [codesyntax lang="php"]
interface=wlan0
driver=nl80211
ssid=suren_pi
hw_mode=g
channel=6
auth_algs=1
ignore_broadcast_ssid=0

wpa=2
wpa_passphrase=12345678
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP

#wpa=1
#wpa_passphrase=surenyufu
#wpa_key_mgmt=WPA-PSK
#wpa_pairwise=TKIP
#rsn_pairwise=CCMP

macaddr_acl=0
accept_mac_file=/etc/hostapd/hostapd.accept
deny_mac_file=/etc/hostapd/hostapd.deny
[/codesyntax]  
  • 配置数据包转发
echo 1 > /proc/sys/net/ipv4/ip_forward 在/etc/rc.local中添加如下代码: iptables-restore /etc/hostapd/ip_ruler 以下是文件/etc/hostapd/ip_ruler的内容 [codesyntax lang="php"]
# Generated by iptables-save v1.4.14 on Thu Jul  3 09:31:08 2014
*nat
:PREROUTING ACCEPT [193:31412]
:INPUT ACCEPT [49:4920]
:OUTPUT ACCEPT [70:4419]
:POSTROUTING ACCEPT [1:108]
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
# Completed on Thu Jul  3 09:31:08 2014
# Generated by iptables-save v1.4.14 on Thu Jul  3 09:31:08 2014
*filter
:INPUT ACCEPT [794:69937]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [611:63929]
-A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i wlan0 -o eth0 -j ACCEPT
COMMIT
# Completed on Thu Jul  3 09:31:08 2014
[/codesyntax] 注意:上面的eth0是可以上网的网卡名称,wlan0是要分配ip地址的网卡名称,实际中要做相应的修改。
  • 服务启动
service hostapd restart service udhcpd restart
  • 功能验证
到此时,你就可以通过手机或者笔记本连接到suren的wifi了。

本文转载自:http://surenpi.com/2015/03/05/%e6%a0%91%e8%8e%93%e6%b4%be%e5%8f%98%e8%ba%ab%e6%99%ba%e8%83%bd%e6%...

上一篇: SLF4J
下一篇: 简笔画~大象
素人派
粉丝 26
博文 1907
码字总数 10223
作品 6
东城
程序员
私信 提问

暂无文章

读书笔记:深入理解ES6 (五)

第五章 解构:使数据访问更便捷 第1节 为什么使用解构功能?   在ES5中,开发者们从对象、数组中获取特定数据并赋值给变量,编写了很多看起来同质化的代码。例如: 1 let options = {2 ...

张森ZS
4分钟前
1
0
CentOS7 yum方式安装MySQL5.7

在CentOS中默认安装有MariaDB,这个是MySQL的分支,但为了需要,还是要在系统中安装MySQL,而且安装完成之后可以直接覆盖掉MariaDB。 1 下载并安装MySQL官方的 Yum Repository [root@localho...

roockee
13分钟前
3
0
Allegro三种自定义设置快捷键的方法

Allegro自定义设置快捷键的三种方法: 1、在Allegro PCB editor 命令窗口直接定义 2、通过修改用户变量env文件来设置快捷键 3、定义笔画为快捷键 1、在Allegro PCB editor 命令窗口直接定义 ...

demyar
17分钟前
2
0
如何做一张能让人眼前一亮的大屏?

作为在职场驰骋的社会人,提到数据可视化大家应该都不陌生了。数据可视化的作用也不用我多说,主要是利用图形化手段,更清晰直观地将数据展示。多层次、交互式的可视化分析能够方便决策者理解...

朕想上头条
18分钟前
2
0
TL138/1808/6748-EthEVM开发板硬件CPU、FLASH、RAM

TL138/1808/6748-EthEVM是广州创龙基于SOM-TL138/1808/6748核心板开发的一款开发板,具有三个网络接口。由于SOM-TL138/1808/6748核心板管脚兼容,所以此三个核心板共用同一个底板。开发板采用...

Tronlong创龙
22分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部