zoukankan      html  css  js  c++  java
  • 搭建软AP

     

    Soft AP是一种通过无线网卡,使用专用软件在PC上实现AP功能的技术,它可以取代无线网络中的AP(Access Point,无线接入点),从而会降低无线组网的成本。

    长期以来,高昂的组网成本是WLAN普及的最大障碍,虽然现在WLAN设备的价格已经降低了很多,但对价格敏感的SOHO用户而言,WLAN依然太贵。其中“昂贵”的AP就是造成总成本居高不下的主要因素,毕竟相对于价格低廉的HUB和交换机,600~1000元的AP要贵得多。

    不过,Soft AP的出现将有可能扫除WLAN进入小型办公室及家庭的最后一道障碍,毕竟这类用户对价格的关注要远超过对安全性的担忧。

    其实,Soft AP技术出现得并不晚,早期所谓的主机AP就是一种利用软件来实现AP功能的设备,它一般采用PC机,使用Windows、VXWorks、Linux等操作系统和主机AP程序。不过这种主机AP由于使用专用的设备,比AP便宜不了多少。而现在所说的Soft AP则是英特尔等公司力推的一个新概念,它可以让任何一台拥有无线网卡的PC或笔记本电脑具备AP功能!

    Windows7搭建

    1. 首先在网络和共享中心-更改适配器设置里,删除已有的桥接,之后状态如下图:

     

    1. 然后在开始-所有程序-附件里,以管理员身份运行“命令提示符”,如图所示:  

    1. 输入命令行(1),如下图,其中allow为网络承载模式为允许,Marcia是无线网络的ssid,12345678是密码,都可自己设定。

    netsh wlan set hostednetwork mode=allow ssid=Marcia key=12345678      (1)

    1. 在网络和共享中心-更改适配器设置里的情况见下图,这时输入:

    netsh wlan start hostednetwork                                          (2)

    可是万一并不能启动承载网络(如果可以的请跳过)。怎么办?

     

    1. 这里就是要特别注意的地方!!!为了能够让运行命令行(2)启动承载网络,本人摸索出了一个简单的解决方法,即先把无线网路连接和虚拟产生的无线网络连接2桥接,见下图。请注意,桥接要在两者设置成自动获得IP地址后,以及在网络和共享中心-管理无线网里删除所有临时点对点的ssid后再进行。

     

    1. 在刚才以管理员身份运行的dos下输入命令行(2),便‘激活’承载网络的启动。如图:

     

    1. 接着马上删除刚才建立的桥接!便可以用单无线网卡建立无线中继了,即在网络和共享中心-更改适配器设置里,把已经能无线上网的无线网络连接(比如abcd)共享给刚才产生的无线网络连接2(Marcia)。请见示意图:

    再运行命令行(2)就可以实现一个中继后的无线AP。这样其他的无线设备就可以连接到Marcia、用同一网卡的网络上网,从而完美实现无线网中继和无线AP。

     

    1. 附注:

    启动和取消承载网络可以用以下两个批处理文件,然后以管理员身份运行

    l  start.bat:

    netsh wlan set hostednetwork mode=allow ssid=Marcia key=12345678

    netsh wlan start hostednetwork

    l  stop.bat:

    netsh wlan set hostednetwork mode=disallow

    Linux搭建

    l  将无线AP通过Masquerading/NAT与有线连入internet(作为无线网关);

    l  将无线AP作为透明桥,桥接被用来做一个简单的AP或者两个无线设备的中继器。

     

    预准备工作:

    1.Wireless Tools (iwconfig, iwlist commands);

    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;

    动手操作

    我尝试了方案1桥接,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;

  • 相关阅读:
    推荐系统 蒋凡译 第一章 引言 读书笔记
    神经网络与深度学习 邱锡鹏 第5章 卷积神经网络 读书笔记
    神经网络与深度学习 邱锡鹏 第4章 前馈神经网络 读书笔记
    神经网络与深度学习 邱锡鹏 第3章 线性模型 读书笔记
    神经网络与深度学习 邱锡鹏 第2章 机器学习概述 读书笔记
    神经网络与深度学习 邱锡鹏 第1章 绪论 作业
    神经网络与深度学习 邱锡鹏 第1章 绪论 读书笔记
    算法笔记 上机训练实战指南 第13章 专题扩展 学习笔记
    算法笔记 第13章 专题扩展 学习笔记
    算法笔记 上机训练实战指南 第11章 提高篇(5)--动态规划专题 学习笔记
  • 原文地址:https://www.cnblogs.com/aixin0813/p/3303223.html
Copyright © 2011-2022 走看看