更新: 2012-03-03 
 
 
Android是不支持Ad-hoc模式的WiFi.Windows 7软AP一个还是比较简单的.本文介绍在Ubuntu下实现软AP.(需要你的无线网卡支持AP哈) 
 
使用工具hostapd,dnsmasq.我的环境时Ubuntu10.10;手机Android 2.1;网卡ath5k.有线网络使用静态的IP. 
 
首先,系统是Ubuntu 11.10,安装软件: 
 
sudo apt-get install hostapd dnsmasq 
 
为无线添加路由规则 
sudo iptables -F 
sudo iptables -X 
sudo iptables -t nat -F 
sudo iptables -t nat -X 
sudo iptables -t nat -A POSTROUTING -s 10.1.1.0/24 -o eth0 -j MASQUERADE 
sudo iptables -A FORWARD -s 10.1.1.0/24 -o eth0 -j ACCEPT 
sudo iptables -A FORWARD -d 10.1.1.0/24 -m conntrack --ctstate ESTABLISHED,RELATED -i eth0 -j ACCEPT 
 
10.1.1.0/24是我设置的地址段,可以自己改。 
 
若要记录下路由的情况可以加如下语句: 
 
sudo iptables -A INPUT -m conntrack --ctstate NEW -p tcp --dport 80 -j LOG --log-prefix "NEW_HTTP_CONN: " 
 
其中NEW_HTTP_CONN是日记中的标识。 
 
然后把现在iptables的规则写进/etc/iptables.rules 
 
sudo sh -c "iptables-save > /etc/iptables.rules" 
 
配置/etc/network/interfaces文件,使每次eth0启动时自动写规则 
 
auto eth0 
pre-up iptables-restore > /etc/iptables.rules
post-down iptables-save > /etc/iptables.rulse 
 
配置/etc/network/hostapd.conf 
 
interface=wlan0 
#bridge=br0 #方法二中有用到 
driver=nl80211 
ssid=wbyxu 
hw_mode=g 
channel=11 
dtim_period=1 
rts_threshold=2347 
fragm_threshold=2346 
macaddr_acl=0 
auth_algs=3 
ieee80211n=0 
wpa=3 
wpa_passphrase=* #设置密码 
wpa_key_mgmt=WPA-PSK 
wpa_pairwise=TKIP 
rsn_pairwise=CCMP 
 
详细hostapd.conf配置请看http://linuxwireless.org/en/users/Documentation/hostapd. 
 
配置/etc/network/dnsmasq.conf 
 
interface=wlan0 
bind-interfaces #这个是只监听wlan0,没有之会检测所有卡 
except-interface=lo 
dhcp-range=10.1.1.10,10.1.1.110,6h #设置dhcp地址范 
#address=/#/10.1.1.1 #这个会把#(代表所有网址)的dns到10.1.1.1这个地址 
 
dnsmasq与named 
 
一般情况下bind的named会占了53端口,然后dnsmasq会启动不了,所以我用killall named来杀了named再启动dnsmasq。 
 
启动脚本 
 
#! /bin/sh 
        killall named 
        killall hostapd 
        ifconfig wlan0 10.1.1.1 
        hostapd -B /etc/network/hostapd.conf 
        /etc/init.d/dnsmasq restart 
 
“-B”后台运行,之后的hostapd.conf需要指名路径. 
 
电脑上完成. 
 
手机上设置WiFi不使用静态IP就可以了.

Ubuntu共享WiFi(AP)给Android方法的更多相关文章

  1. ubuntu 共享WIFI并分享主机的代理服务

    背景是这样的: 公司内的主机访问外网需要通过一个HTTP代理服务器,主机ubuntu共享wifi给手机使用的时候需要在手机上配置一个代理才能访问互联网. 我觉得这样比较麻烦,所以想在主机上直接把共享w ...

  2. ubuntu创建wifi热点(android可识别)亲测可用

    转自http://jingyan.baidu.com/article/ea24bc39b03fc6da62b331f0.html 如何在ubuntu系统下创建android可识别热点?一般环境下创建的 ...

  3. Ubuntu 14.04 x64配置Android 4.4 kitkat编译环境的方法

    Ubuntu 14.04 x64配置Android 4.4 kitkat编译环境的方法跟Ubuntu 12.04 - 13.10 以及jellybean编译环境配置没多大区别, 顺便记录下而已: Ub ...

  4. 笔记本win8系统共享wifi上网方法

    华硕笔记本电脑,安装了win8系统,使用wifi上网,由于连接无线路由的机器太多,超过路由连接数上限,因此转为使用笔记本共享wifi方式给手机上网. 最终上网方式为: 笔记本网卡接入无线路由器上网,笔 ...

  5. android wifi state and wifi ap state

    /** * Wi-Fi is currently being disabled. The state will change to {@link #WIFI_STATE_DISABLED} if * ...

  6. Ubuntu 14.04 LTS 下 android 2.3.5 源码编译过程

    Ubuntu 14.04 LTS 下 android 2.3.5 源码编译过程   在新的Ubuntu 64位系统下去编译早期的安卓源码是会出现很多问题的,因为64位系统在安装完成后,很多32位的兼容 ...

  7. win7系统用笔记本共享wifi热点 让手机免费上网

    之前一直在用这个方法把自己的笔记本变成一个wifi热点,让手机也可以直接连wifi上网,节省网费和路由器购买费. 其实就是开启了windows 7的隐藏功能:虚拟WiFi和SoftAP(即虚拟无线AP ...

  8. 超简单让ubuntu开启wifi热点(亲测16.04与14.04可用)

    今天教大家一个简单方法让ubuntu发散wifi热点给手机或者其他设备使用. 首先,创建一个普通的热点,点击右上角的网络,然后选择下拉菜单中的编辑连接,然后出现以下界面. 然后点击增加,连接类型选接W ...

  9. Kubuntu(14.04)共享wifi(热点)

    笔记本(kubuntu14.04)通过有线上网,共享本机无线给手机.平板及其他通过wifi上网的设备. 曾经在网上找过各种方法.下载了非常多软件都不能在本机上实现wifi共享,以下这样的方法眼下相对简 ...

随机推荐

  1. Jquery焦点图/幻灯片效果 插件 KinSlideshow

    JavaScript $(function(){         $("#KinSlideshow").KinSlideshow({                 moveSty ...

  2. Java开发环境搭建详解

    一.jdk安装与配置 jdk7于3月份刚刚发布,目前eclipse的最新版本中还没有提供对jdk7的编译支持,所以我们只下载jdk6. 下载地址:http://download.java.net/jd ...

  3. C/C++嵌入式开发面试题

    C/C++嵌入式开发面试题 预处理器(Preprocessor) 1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define SECONDS_PER_YEA ...

  4. Matlab注释多行和取消多行注释的快捷键

    matlab里注释符号是%,只是单行注释,可是没有多行注释符号,就像C/C++/Java中都有多行注释符号/*  */. 如果利用单行注释的方式手工注释一段程序会很麻烦,matlab软件自带快捷键支持 ...

  5. Android几种Service常驻内存的小思路

    老话说的好:躲得了初一,躲只是高三 ! 大多数的Android开发人员遇到的一个问题-怎样保证Service常驻内存. 近期我最终也在项目中务必幸运的遇到了 先来了解一下什么是Service常驻内存. ...

  6. Spark向HDFS中存储数据

    程序如下: import org.apache.spark.sql.Row; import org.apache.spark.SparkConf; import org.apache.spark.ap ...

  7. Android -- Drawable && Bitmap

    Bitmap转Drawable Bitmap bm=xxx; BitmapDrawable bd=new BitmapDrawable(bm); 因为BtimapDrawable是Drawable的子 ...

  8. 在Linux上安装Chef工作站

    导读 Chef是一个IT基础设施自动化软件,它可以管理你组织中所有的服务器和网络设备.当我们想与Chef服务器.任何物理节点(服务器.网络设备等)的基础设施进行交互时,我们需要一个Chef工作站.本教 ...

  9. https://leetcode-cn.com/

    https://leetcode-cn.com/ 码,马不停蹄,码不停题 英文版:https://leetcode.com/

  10. Iterable转List

    Iterable转List Iterable<Entity> geted = entityDao.findAll(); List<Entity> list = Lists.ne ...