1、安装需要的包

sudo apt-get install hostpad uhdcpd

2、配置/etc/network/interfaces文件

配置wlan0为静态地址

格式如下:

iface wlan0 inet static

address 192.168.10.1

netmask 255.255.255.0

保存,退出

3、配置/etc/udhcpd.conf文件

设置 自动分配地址范围  dns  网关等

具体如下:(依据个人需要进行配置)

start 192.168.10.2 # This is the range of IPs that the hostspot will give to client devices.

end 192.168.10.200

interface wlan0 # The device uDHCP listens on.

remaining yes

opt dns 8.8.8.8 8.8.4.4 # The DNS servers client devices will use.

opt subnet 255.255.255.0

opt router 192.168.10.1 # The Pi's IP address on wlan0 which we will set up shortly.

opt lease 864000 # 10 day DHCP lease time in seconds

4、sudo vim /etc/default/hostpad

#DAEMON_CONF= ""  改为

DAEMON_CONF= "/etc/hostapd/hostapd.conf"

5、编辑/etc/hostapd/hostapd.conf

如下:

  1. # 把无线网卡wlan0 作为接入点
  2. interface=wlan0
  3. # 使用nl80211驱动
  4. driver=nl80211  (有的可能是rtl871xdrv,我的不行,提示“未知的”)
  5. #共享网络的SSID是RaspberryPi
  6. ssid=RaspberryPi(WiFi名)
  7. # 网卡工作在802.11G模式
  8. hw_mode=g
  9. #无线网卡选用11信道
  10. channel=11
  11. # WPA2 配置
  12. wpa=2
  13. #wpa密码是raspberry
  14. wpa_passphrase=raspberry(WiFi密码)
  15. #认证方式为WPA-PSK 加密方式为CCMP
  16. wpa_key_mgmt=WPA-PSK
  17. wpa_pairwise=CCMP
  18. rsn_pairwise=CCMP
  19. beacon_int=100
  20. auth_algs=3
  21. wmm_enabled=1

6、编辑 /etc /default/udhcpd

将 其注释掉

#DHCPD_ENABLED=no

7、配置路由转发

下一步就是让从无线网卡 wlan0 进来的数据 转发到 有线网卡 eth0上面 通过有线网卡连接网络接到互联网。

因为eth0是获取的动态ip,所以这里通过iptables来实现简单的路由转发。

输入命令

  1. sudo iptables -F
  2. sudo iptables -X
  3. sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
  4. sudo bash
  5. iptables-save > /etc/iptables.up.rules
  6. exit


输入命令

  1. sudo nano /etc/network/if-pre-up.d/iptables


把下面两行复制粘贴到编辑窗口

  1. #!/bin/bash
  2. /sbin/iptables-restore < /etc/iptables.up.rules


保存退出
输入命令

  1. sudo chmod 755 /etc/network/if-pre-up.d/iptables


开启内核转发
输入命令

  1. sudo nano /etc/sysctl.conf


找到这里

  1. # Uncomment the next line to enable packet forwarding for IPv4
  2. #net.ipv4.ip_forward=1


去掉 net.ipv4.ip_forward 前面的#
保存退出

输入命令

  1. sudo sysctl -p


 

8、将服务设置为开机自启模式

sudo update-rc.d hostapd enable

sudo update-rc.d udhcpd enable


之后,重启机器,使用手机应该能看到设置的WiFi,连接后,访问以下外网,看看是否可用

树莓派设置成无线路由(AP)的更多相关文章

  1. 树莓派.设置无线网卡为AP工作模式(pi2和pi3)

    树莓派2的设置办法: 1. 安装NetworkManager管理工具(可选),以支持nmcli命令 sudo apt-get install -y network-manager 2. 安装hosta ...

  2. 树莓派设置静态IP地址

    树莓派设置静态IP地址http://www.jianshu.com/p/b0e6d066d6b6 ——————————————————————————————————————————————————— ...

  3. 华为无线ap3010dn-agn刷成胖ap

    刚买的华为ap3010dn-agn 版本为 v200R007C20SPC500  默认不带命令 ap-mode-switch [Huawei]dis version Huawei Versatile ...

  4. C++构造函数/析构函数 设置成private的原因

    C++构造函数/析构函数 设置成private的原因 标签(空格分隔): c/c++ 将构造函数,析构函数声明为私有和保护的,那么对象如何创建? 已经不能从外部调用构造函数了,但是对象必须被构造,应该 ...

  5. Mac下输入法总是默认中文,怎么设置成英文的?

    最近一同事在DreamWeaver里,写CSS样式的时候,默认总是中文,切到别的窗口,再切回来,就变成中文了,总要按一下切换键,时间长了特别烦人. 在网上找了一些方法,最后找到一个有效的. 总结一下就 ...

  6. 关于网页控件设置成disabled以后,提交不到后台的问题

    在开发的时候经常遇到这样的问题,就是需要设置某个控件不可编辑,这个控件可能是一个input文本框,可能是一个select下拉列表 遇到这样的问题,一般有两种处理方法 第一种是将input 控件添加 d ...

  7. C#.NET Form设置/取消开机自动运行,判断程序是否已经设置成开机自动启动(转载)

    #region//开机自动运行        private void CB_Auto_CheckedChanged(object sender, EventArgs e)        {//CB_ ...

  8. C#项目打包后安装的桌面快捷方式图标怎么设置成自己想要的图标

    #项目打包后安装的桌面快捷方式图标怎么设置成自己想要的图标 2012-08-25 09:11匿名 | 浏览 3286 次  C#编程 C#项目用vs2005自带的工具打包后安装的桌面快捷方式图标怎么设 ...

  9. 让超链接点击后不跳转,可以用href = "#",但是这个#就会锚点到页面最上边 点击链接后不跳转可以设置成

    让超链接点击后不跳转,可以用href = "#",但是这个#就会锚点到页面最上边     点击链接后不跳转可以设置成     1.<a href="javascri ...

随机推荐

  1. (转)发现两个有用的C函数_alloca()、_msize()

    转自: http://blog.csdn.net/pony12/article/details/8678071 (1)_alloca()alloca也是用来分配存储空间的,它和malloc的区别是它是 ...

  2. jqGrid实现虚拟滚动和合并单元格

    如图: 关键点:1.scroll: 1, //虚拟滚动,解决大数据一次性加载慢的问题,同时解决分页 2.function merge(names)//自定义函数 $(function () { //查 ...

  3. Error:(108) No resource identifier found for attribute 'style' in package 'android'

    Error:(108) No resource identifier found for attribute 'style' in package 'android' 解决方案: 这是错误的写法: a ...

  4. 国内好用的公用DNS 服务器。

    阿里 AliDNS 223.5.5.5 223.6.6.6 CNNIC SDNS 1.2.4.8 210.2.4.8 Google DNS 8.8.8.8 8.8.4.4 OpenDNS 208.67 ...

  5. git安装及使用简介

    从源代码安装 有人觉得从源码安装 Git 更实用,因为你能得到最新的版本. 二进制安装程序倾向于有一些滞后,当然近几年 Git 已经成熟,这个差异不再显著. 如果你想从源码安装 Git,需要安装 Gi ...

  6. HDU 4121 Xiangqi

    模拟吧,算是... 被这个题wa到哭,真是什么都不想说了...上代码 #include <iostream> #include <cstring> using namespac ...

  7. mysql隔离级别的设置和检索

    001.设置方式: 001.在/etc/my.cnf配置文件中设置,这个格式一定要记清楚呀! transaction-isolation=READ-COMMITTED 这里要写在“-”号不是“_&qu ...

  8. 浅谈标签构建——TagBuilder

    在很多项目中,可能我们需要写一些通用的控件标签,今天来简单的学习一下吧. 在前文中已经学习了 如何自定义MVC控件标签 ,感兴趣的朋友可以去看看. 今天主要还是讲解一下TagBuilder 我们打开源 ...

  9. filestream streamreader

    filestream是一个读取文件的stream,其本身也是支持read和write的,负责的对文件的读与写,而streamreader则是建立在对流的基础上的读,同时还有streamwrite ht ...

  10. Delphi与Javascript的交互

    网络上也有人写了关于Delphi与Javascript的文章,其大多数使用ScriptControl等,均无法达到与Delphi自身融合的效果.我也是在翻阅自己的组件库的时候发现了这个以前收集来的代码 ...