验证设备:hciconfig
bluetoothctl
iw list | grep SSID
Wifi STA模式设置:
打开wlan0
ifconfig wlan0 up
搜索WIFI名称:
iw dev wlan0 scan | grep SSID
安装 wpasupplicant
sudo apt-get install wpasupplicant
输入要连接的WIFI名称和密码:
wpa_passphrase "名称" "密码" > wifi (具体看你要连接的wifi)
连接:
wpa_supplicant -Dnl80211 -iwlan0 -c wifi -B
分配IP给wlan0:
dhclient wlan0
查看获得IP
ifconfig
Wifi AP模式设置:
打开端口节点:ifconfig wlan0 up
sudo apt-get install hostapd
创建hostapd.conf配置文件。注意热点名称密码,可以自行设置(已标红)。
vi /etc/hostapd/hostapd.conf
配置内容:
interface=wlan0
driver=nl80211
#driver=madwifi
ssid=FBWFBI9
channel=9
hw_mode=g
macaddr_acl=0
ignore_broadcast_ssid=0
auth_algs=1
wpa=3
wpa_passphrase=12345678wer
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
开启热点,执行:hostapd /etc/hostapd/hostapd.conf -B
此时手机能发现 FBWFBI9的热点,但连接不了。
需要安装udhcpd 它是工作在server端的DHCP服务。
sudo apt-get install udhcpd
打开 vi /etc/udhcpd.conf 注意自己看是不是wlan0,不是要修改。下图画红也要改,配置内容:
ifconfig wlan0 192.168.0.1
给连接热点的设备分配地址:
udhcpd /etc/udhcpd.conf &
打开 IP 转发模式:
echo 1 > /proc/sys/net/ipv4/ip_forward
启用iptables伪装ip,注意网口eth:
iptables -F
iptables -P FORWARD ACCEPT
iptables -t nat -A POSTROUTING -o eth3 -j MASQUERADE
然后用手机打开wifi,输入密码连接热点,成功实现上网。
!](https://img-blog.csdnimg.cn/9fe756731073454089b71a2b6d8dcdd8.jpeg)