Linux開啟熱點(diǎn)相關(guān)hostapd+dnsmasq
準(zhǔn)備工作:使用包管理器安裝hostapd和dnsmasq
配置文件都是完整的,可以直接清空默認(rèn)配置粘貼過去
hostapd(5G)參考配置文件,一般在/etc/hostapd/hostapd.conf
interface=wlan0? # 網(wǎng)卡名稱
driver=nl80211?? # 驅(qū)動
ssid=wireless_name ? # 熱點(diǎn)名稱
country_code=CN??? # 區(qū)域
hw_mode=a???????????? # 協(xié)議
ieee80211ac=1??????? # 80211ac? 433Mbps
channel=149??????????? # 信道
dnsmasq參考配置文件,一般在/etc/dnsmasq.conf
dhcp-range=192.168.10.1,192.168.10.253,255.255.255.0,24h # dhcp范圍,地址租期
dhcp-option=3,192.168.10.254??? # 網(wǎng)關(guān),也就是ap自身的ip地址
dhcp-option=6,223.5.5.5,119.29.29.29?? # dhcp分配給客戶端的dns
接著啟動服務(wù):
systemctl start hostapd && systemctl start dnsmasq
設(shè)為開機(jī)自啟動:
systemctl enable hostapd && systemctl enable dnsmasq
開啟網(wǎng)卡,將網(wǎng)關(guān)ip地址分配給wlan0:
ip link set wlan0 up && ip addr replace 192.168.10.254/24 dev wlan0
現(xiàn)在就可以正常連接到wifi了,但是還不能上網(wǎng),需要上網(wǎng)還要配置nat轉(zhuǎn)發(fā)
需要把來自wlan0的請求轉(zhuǎn)發(fā)到有網(wǎng)絡(luò)的接口上,比如eth0,記得留意自己的網(wǎng)卡名稱,不要看都不看就復(fù)制粘貼了。
看看ipv4轉(zhuǎn)發(fā)有沒有開啟:
cat /proc/sys/net/ipv4/ip_forward
如果是0,需要執(zhí)行:
echo 1 > /proc/sys/net/ipv4/ip_forward
添加nat規(guī)則:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
現(xiàn)在應(yīng)該就能正常上網(wǎng)了。
需要開機(jī)自啟動可以寫個systemd服務(wù),這些命令執(zhí)行沒有任何順序要求。