1、首先呢,把三个工具安进去,iptables我的本机自带了,不知道什么情况。dnsmasq可能会提示port:53的fail,那个不用管。
2、准备配置文件hostapd的配置文件在/usr/share/doc/hostapd/examples下,解压出hostapd.conf,为了方便cp到/etc下。里面的内容不必像网上乱飞的文章上改那么多,直接把interface=wlan0改成你要用作发射wifi的网卡(网卡要支持ap模式wilist查看),其他的看着改吧,都不是必须的,只有这个非常重要。dnsmasq的新建吧。内容如下interface=wlan0 #你猜dhcp-range=192.168.123.100,192.168.123.199,12h #分配地址的这些就够了,不用像乱飞的文章里改那么多,需求另类的当我白说。
3、哈哈 下面的我就懒一些了直接复制朋友的代码了,每次想开启的时候 sh ×× start下面有解释,自己看吧#!/bin/sh#Clean things upinit() { #Stop NetworkManager, if already running (it will disturb you) /usr/sbin/service network-manager stop #Stop named, if already running. dnsmasq cannot run because it take up port 53 killall named #Stop dnsmasq, if already running /usr/sbin/service dnsmasq stop #Stop hostapd, if already running /usr/bin/pkill hostapd #Bring down wlan0 /sbin/ip link set down dev wlan0}start() { #First clean things up init #Start hostapd, and it will automatically be bringed up /usr/sbin/hostapd -B /etc/hostapd.conf #Set ip on wlan0 /sbin/ip addr add 192.168.123.1/24 dev wlan0 #Start dnsmasq /usr/sbin/service dnsmasq start #Start ip_forward echo 1 > /proc/sys/net/ipv4/ip_forward #add iptables rule for NAT /sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE}stop() { #Remove iptables rule /sbin/iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE #Stop dnsmasq /usr/sbin/service dnsmasq stop #Stop hostapd /usr/bin/pkill hostapd #bring down wlan0, and its ip address will automatically be removed /sbin/ip link set down dev wlan0}case "$1" in'start') start ;;'stop') stop ;;*) echo "usage $0 start|stop"esac