Wireless Networking in the Developing World (Second Edition)

Wireless Networking in the Developing World (Second Edition)
Page144
1.将无线AP通过Masquerading/NAT与有线连入internet(作为无线网关)
2.将无线AP作为透明桥,桥接被用来做一个简单的AP或者两个无线设备的中继器。

预准备工作:
1.Wireless Tools (iwconfig, iwlist commands),目前iw有替代这些命令的趋势。
2.iptables firewall
3.dnsmasq (caching DNS server and DHCP server)

方案1: Masquerading access point(NAT方式:此方式可以保证接口名不变,启用新的网络段,正好适合我目前使用的情况)
这是最简单的方案,在linux上运行了防火墙和网关,你只需要添加无线接口。
你至少需要有一个有线的接口(如eth0)和一个无限的接口(wlan0),eth0连入了internet,wlan0提供ap功能。
iwconfig wlan0 mode Master
如果报错说明不支持access point模式,你可以尝试Ad-hoc模式
apt-get install dnsmasq
eth0使用DHCP连入internet,使用下面命令获取IP和默认网关
dhclient eth0
然后设置无线接口为Master模式并输入SSID名,关闭加密:
iwconfig wlan0 essid "my wlan" mode Master enc off
也可以开启wep加密:
iwconfig wlan0 essid "my wlan" mode Master enc 1A2B3C4D5E
或者
iwconfig wlan0 essid "my wlan" mode Master enc "s:apple"
设置wlan0一个私有子网地址,不能和eth0同段。
ifconfig wlan0 10.0.0.1 netmask 255.255.255.0 broadcast 10.0.0.255 up
为了两个地址之间的联系,我们需要在kernel中开启masquerading (NAT)
1.加载有关的kernel模块
modprobe ipt_MASQUERADE
清空防火墙规则,确保包数据不被阻塞
iptables -F
开启两接口之间的NAT功能
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
最后我们要开启kernel到两个接口之间的前向包
echo 1 > /proc/sys/net/ipv4/ip_forward
在ubuntu系统下,
vi /etc/network/options中确保
ip_forward=yes
然后/etc/init.d/network restart
开启DHCP服务器
目前为止,我们已经能访问一个叫"my wlan"的无线网络,但是只能通过手动设置IP才能进行通信,接下来我们需要让我们的AP可以为连接他的设备动态获取IP。
需要使用dnsmasq工具包,可以从
http://www.thekelleys.org.uk/dnsmasq/doc.html
获取相关信息;其配置为
vi /etc/dnsmasq.conf
interface=wlan0
dhcp-range=10.0.0.10,10.0.0.110,255.255.255.0,6h
保存之后重启:
/etc/init.d/dnsmasq restart
到此,连入该wifi热点的设备可以自动获取IP了。




方案2:透明桥AP(桥接方式:使用简单,将新增一个桥接口,本地接口使用桥接口访问网络,都在同一个网段中)

他们可以保持在同一个子网中,也就是说eth0获取的192.168.1.23;那么桥接后的接口都还是在192.168.1.段中,他们使用的是192.168.1.之前的同一个DHCP服务器分配的IP地址。桥接方式不需要使用dnsmasq工具包,但需要使用到bridge-utils工具包,主要用到里面的brctl命令
在ubuntu系统下,修改的配置文件如下:你需要将名字和IP改为你自己网络中的名字和IP
vi /etc/network/interfaces
auto br0
iface br0 inet static
address 192.168.1.2
network 192.168.1.0
netmask 255.255.255.0
broadcast 192.168.1.255
gateway 192.168.1.1
pre-up ifconfig wlan 0 0.0.0.0 up
pre-up ifconfig wlan1 0.0.0.0 up
pre-up iwconfig wlan0 essid “office” mode Managed
pre-up iwconfig wlan1 essid “repeater” mode Master
bridge_ports wlan0 wlan1
post-down ifconfig wlan1 down
post-down ifconfig wlan0 down

iface br0 inet static
pre-up ifconfig wlan 0 0.0.0.0 up
pre-up ifconfig wlan1 0.0.0.0 up
pre-up iwconfig wlan0 essid “office” mode Managed
pre-up iwconfig wlan1 essid “repeater” mode Master
pre-up brctl addbr br0
pre-up brctl addif br0 wlan0
pre-up brctl addif br0 wlan1
post-down ifconfig wlan1 down
post-down ifconfig wlan0 down
post-down brctl delif br0 wlan0
post-down brctl delif br0 wlan1
post-down brctl delbr br0
开启桥
ifup -v br0
#ifconfig br0 192.168.1.2 netmask 255.255.255.0 broadcast 192.168.1.255
#route add default gw 192.168.1.1
查看桥信息
#brctl show br0


在看这本书之前,我已经尝试了桥接OK,以下是我使用的命令
桥接网卡的方法:
ifconfig eth0 0.0.0.0 promisc
brctl addbr br0
brctl addif br0 eth0
ifconfig mon.wlan0 0.0.0.0 promisc
brctl addif br0 mon.wlan0
./hostapd hostapd.conf -B
brctl show
ifconfig br0 up

【hostapd.conf】内容如下:
interface=wlan0
bridge=br0
driver=nl80211
ssid=bcmstb
hw_mode=g
channel=1

基于STM32F407,使用DFS算法实现最短迷宫路径检索,分为三种模式:1.DEBUG模式,2. 训练模式,3. 主程序模式 ,DEBUG模式主要分析bug,测量必要数据,训练模式用于DFS算法训练最短路径,并将最短路径以链表形式存储Flash, 主程序模式从Flash中….zip项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值