参考: http://blog.csdn.net/u011641885/article/details/49512199
1.工具/原料
    有无线网卡(usb接口的RT3070无线网卡)、有线网卡的台式机
    安装linux操作系统,我使用的是ubuntu14.04
2.方法/步骤
    a.检查确认无线网卡支持master模式
    执行命令:iw list
    在命令执行结果中如果看到了下面的内容(AP, AP/VLAN),就说明这张网卡是支持用于ap做路由的
    Supported interface modes:
    * IBSS
    * managed
    * AP
    * AP/VLAN
    * monitor
    * mesh point
    
    b.安装hostapd
    我是手动编译的, 目录在/home/edward/opt/edward/hostapd/
    修改hostapd配置文件vim /etc/dhcp/dhcpd.conf
    将此文件改成如下:
    ctrl_interface=/var/run/hostapd
    interface=wlan0
    driver=nl80211
    ssid=emma
    hw_mode=g
    channel=10
    macaddr_acl=0
    auth_algs=3
    wpa=2
    wpa_passphrase=fah191430
    wpa_key_mgmt=WPA-PSK
    wpa_pairwise=TKIP
    rsn_pairwise=TKIP CCMP
    
    AP热点名称为emma, 密码为fah191430
    然后开启hostapd, 进入到/home/edward/opt/edward/hostapd/hostapd目录
    sudo ./hostapd -B /etc/hostapd.conf  
    发现有以下错误:
    Configuration file: /etc/hostapd/hostapd.conf
    nl80211: Could not configure driver mode
    nl80211: deinit ifname=wlan0 disabled_11b_rates=0
    nl80211 driver initialization failed.
    wlan0: interface state UNINITIALIZED->DISABLED
    wlan0: AP-DISABLED
    wlan0: CTRL-EVENT-TERMINATING
    hostapd_free_hapd_data: Interface wlan0 wasn't started
    解决办法:
    改变NetworkManager里的状态,关闭wifi,同时软锁定
    sudo nmcli nm wifi off
    sudo rfkill unblock wlan
    然后再启动hostapd服务    
    sudo hostapd -B /etc/hostapd.conf
    
    c.安装配置dhcp服务器
    sudo apt-get install isc-dhcp-server
    修改配置文件/etc/dhcp/dhcpd.conf
    option domain-name-servers 218.85.157.99;
    subnet 192.168.1.0 netmask 255.255.255.0 {    //注意:这里192.168.1.0不能写成192.168.1.1
    range 192.168.1.77 192.168.1.250;
    option routers 192.168.1.3;    // 网关 要写成这台机器的 wlan0 的ip
    option broadcast-address 192.168.1.255;
    }
    启动dhcp服务器
    启动前先配置网卡的IP和子网掩码
    sudo ifconfig wlan0 192.168.1.3 netmask 255.255.255.0 up
    sudo /etc/init.d/isc-dhcp-server restart  
    
    d.iptables配置转发规则
    配置转发前需要打开linux转发功能
    临时改变,重启后恢复
    sudo sysctl -w net.ipv4.ip_forward=1
    永久改变
    vim /etc/sysctl.conf  
    #添加或修改这样一段:  
    net.ipv4.conf.default.rp_filter = 1  
    #然后执行命令  
    sysctl -p
    使用 iptables 设置转发
    iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE      
        iptables -A FORWARD -s 192.168.1.0/24 -j ACCEPT  
        iptables -A FORWARD -d 192.168.1.0/24 -j ACCEPT  
    其中第一条表示将通过本机的转发数据包从eth0(外网)这个网卡发出去,另外两条表示只转发192.168.1.0/24这个网段过来的数据包,
    这个网段正好是wlan0其它设备连上本机以后分配的网段

Linux制作wifi热点/无线路由的更多相关文章

  1. Linux创建WiFi热点

    手机流量用完,需要开WiFi,由于是LinuxMint,感觉配置还算容易,找到一个不错的教程,收藏一下,以备后用.除了修改配置文件那步在我的电脑不需要外其他基本正确,而且Mint本来就衍生自Ubunt ...

  2. linux 开启wifi热点

    1,在网络连接管理中创建一个wifi连接,点击 Add,然后选Wi-Fi 2,设置wifi热点名字.wifi接连名字 3,设置 Mode 选 Ad-hoc,其它默认. 4,在 Wi-Fi Securi ...

  3. Linux:Ubuntu16.04下创建Wifi热点

    Linux:Ubuntu16.04下创建Wifi热点 说明: 1.Ubuntu16.04里面可以直接创建热点,而不用像以前的版本,还要其他辅助工具. 2.本篇文章转载自编程人生 具体步骤如下: 1.  ...

  4. Linux/Ubuntu 16.04 使用校园网客户端Dr.com DrClient 有线连网,同时开启WiFi热点

    前面写过Ubuntu 16.04 使用校园网客户端 DrClient 无线上网,在这篇文章中将要介绍下,在Ubuntu 16.04上如何使用校园网客户端实现有线登录,这个问题也让博主困惑了很久,但是问 ...

  5. Linux:Ubuntu16.04下创建Wifi热点

    Linux:Ubuntu16.04下创建Wifi热点说明 1.Ubuntu16.04里面可以直接创建热点,而不用像以前的版本,还要其他辅助工具. 2.本篇文章参考自编程人生 具体步骤如下: 1. 点击 ...

  6. linux wifi热点服务脚本

    最近有关wifi热点的驱动,启动参数都调试完了,验证可以连接传输数据. 首先要在系统启动脚本中插入wifi驱动,配置wlan0的ip insmod /system/vendor/modules/818 ...

  7. Kali Linux破解wifi密码(无须外置网卡)

    环境准备:  方式一(选择该方式):Kali Linux.笔记本一台.U盘(至少8G)  方式二:Kali Linux.外置网卡.笔记本一台.VM   特别说明,主要是使用方式一进行破解,如果有外置网 ...

  8. 【树莓派】【转】将树莓派Raspberry Pi设置为无线路由器(WiFi热点AP,RTL8188CUS芯片)

    下文为转载,文章转自:http://wangye.org/blog/archives/845/,仅供本次学习实践参考. 最近又开始折腾起Raspberry Pi来了,因为某处上网需要锐捷拨号,于是我就 ...

  9. Android抓包方法(三)之Win7笔记本Wifi热点+WireShark工具

    Android抓包方法(三) 之Win7笔记本Wifi热点+WireShark工具 前言 做前端测试,基本要求会抓包,会分析请求数据包,查看接口是否调用正确,数据返回是否正确,问题产生是定位根本原因等 ...

随机推荐

  1. http://blog.csdn.net/congcong68/article/details/39256307

    http://blog.csdn.net/congcong68/article/details/39256307

  2. HDU5312 Sequence

    题意:t组数据,每组数据给个m.问m最少能由几项形如3*n*(n-1)+1的数表示 eg 7=1(n=1)+1(n=1)+1(n=1)+1(n=1)+1(n=1)+1(n=1)+1(n=1);     ...

  3. 云计算之路-试用Azure:竟然无法重置虚拟机的管理员密码

    在忘记管理员密码的情况下,可以远程重置服务器的管理员密码是云计算服务的一个优势,这是使用自己的物理服务器无法实现的. 但是,在使用Azure的时候,我们找遍Azure管理控制台也没找到可以重置虚拟机( ...

  4. AWS RDS mysql无法连接的问题

    rds创建后,无法连接mysql 检查安全组规则是否配置了 1. 2. 这样你的EC2就可以访问了.如果还不行,检查数据库是否和EC2在同一 VPC内. 官方文档:https://docs.amazo ...

  5. 改造的unity3d文件打包脚本

    ExportAssetBundles.rar // C# Example // Builds an asset bundle from the selected objects in the proj ...

  6. Odoo/OpenERP 日志配置、使用及实现

    当应用处于生产环境时,日志提供了有价值的运行时调试及监控信息,并且,也是一个有用的调试工具对于处于开发阶段的应用来说.此文描述在Odoo8.0中日志的配置.使用及实现 日志配置        Odoo ...

  7. python xml.etree.ElementTree解析xml文件获取节点

    <?xml version = "1.0" encoding = "utf-8"?> <root> <body name=&quo ...

  8. Springmvc UPDATE 数据时 ORA-01858:a non-numeric character was found where a numeric was expected

    ORA-01858:a non-numeric character was found where a numeric was expected 异常. 我的代码: 主要是绑定变量带出来的问题. 出错 ...

  9. mongodb的基本语法(一)

    一.数据库常用命令 1.Help查看命令提示 help db.help(); db.yourColl.help(); db.youColl.find().help(); rs.help(); 2.切换 ...

  10. 【转】GGTalk即时通讯系统(支持广域网)终于有移动端了!(技术原理、实现、源码)

    原文地址:http://www.cnblogs.com/justnow/p/4836636.html 首先要感谢大家一直以来对于GGTalk即时通讯系统的关注和支持!GGTalk即时通讯系统的不断完善 ...