正常我们的无线网卡工作在sta模式,通过连接路由进行上网。在Windows下,我们可以用猎豹、360和腾讯管家里的一些软件助手,把我们的无线网卡开一个热点,同样,在Linux中。我们也可以把我们无线网卡的热点打开,让其他设备能够连接。
基本配置
首先确保Linux能识别到无线网卡
ifconfig 能看到 wlan0 并且有路由分配的ip
把原来的动态IP改为静态IP
sudo vim /etc/network/interface
auto lo
iface lo inet loopback
auto wlan0
iface wlan0 inet static
wpa-ssid "路由名"
wpa-psk "密码"
address **.**.**.**就写上面的ifconfig的吧
netmask 255.255.255.0
gateway 192.168.0.1
重启网络 sudo /etc/init.d/networking restart
重启网卡 sudo ifup wlan0
安装hostapd服务
hostapd就是用来打开无线网卡的AP模式的
sudo apt-get install hostapd
sudo vim /etc/default/hostapd
修改 #DAEMON_CONF=""为
DAEMON_CONF="/etc/hostapd/hostapd.conf"
sudo vim /etc/hostapd/hostapd.conf
#网卡
interface=wlan0
#驱动
driver=*
#WiFi名
ssdi=wifi-name
#工作模式 802.11n
hw_mode=n
#信道
channel=*
#WPA2配置
wpa=2
#WiFi密码
wpa_passphrase=wifi-passwd
#认证方式 WPA-PSK
wpa_key_mgmt=WPA-PSK
#加密方式
wpa_pairwise=CCMP
rsn_pairwise=CCMP
beacon_int=100
auth_algs=3
wmm_enabled=1
sudo service hostapd restart 重启hostapd服务
安装配置 isc-dhcp-server服务
hostapd仅仅开启了无线网卡的AP模式,但是设备连接时,该如何分配IP呢,这就需要借助isc-dhcp-server来动态分配IP
sudo apt-get install isc-dhcp-server
sudo vim /etc/dhcp/dhcpd.conf
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
//网关IP 就是无线网卡的static ip
subnet 192.168.**.**
netmask 255.255.255.0{
range 192.168.0.1 192.168.0.120;
option routers 192.168.**.**;
option broadcast-address 192.168.0.105;
option domain-name-servers 8.8.8.8,8.8.4.4;
default-lease-time 600;
max-lease-time 7200;
}
sudo service isc-dhcp-server restart //重启服务
配置路由转发规则
上面两步仅仅保证了,AP服务,你可以连接、有了dhcp你可以获得动态IP,但是如何保证设备能通过这个无线网卡来上网呢,这需要配置,将无线网卡wlan0的设备传输数据转发到有线网卡eth0上面。所以需要配置一下路由转发规则,打通数据传输的链路。
使用iptables实现简答的转发
sudo iptables -F
sudo iptables -X
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo bash
iptables-save > /etc/iptables.up.rules
exit
sudo /etc/init.d/iptables start
sudo echo 1> /proc/sys/net/ipv4/ip——forward
开启路由转发
来源:oschina
链接:https://my.oschina.net/u/4363024/blog/3210708