我正在尝试使用 Hostapd 在 Fedora 上设置无线接入点,因为 Hostapd 比 Gnome 网络管理器的默认热点功能具有一些我需要的额外功能。
我已将以下行添加到/etc/NetworkManager/NetworkManager.conf
,以确保 NetworkManager 不会干扰 Hostapd。
[keyfile]
unmanaged-devices=interface-name:wl*
我已禁用 Dnsmasq 的 DNS 功能,并设置了 DHCP 地址范围。我的/etc/dnsmasq.conf
如下所示:
port=0
interface=wlp3s0
dhcp-range=192.168.8.20,192.168.8.254,255.255.255.0,12h
server=8.8.8.8
server=8.8.4.4
我etc/sysctl.conf
添加了这一行:
net.ip4.ip_forward=1
然后我执行了:
$ killall dnsmasq
$ iptables -t nat -A POSTROUTING -s 192.168.8.0/24 ! -d 192.168.8.0/24 -j MASQUERADE
$ service NetworkManager restart
$ service dnsmasq start
$ service hostapd start
问题是其他设备在尝试连接到接入点时不会收到 IP 地址。我不确定如何以及在哪里找到问题。
我之所以问这个问题,是因为旧版本和其他发行版似乎存在一些差异。例如,我没有,wlan0
但Fedora 中不存在wlp3s0
该文件夹。/etc/network/
好吧,我必须在防火墙配置中启用 DHPC,但现在 Dnsmasq 一直说
dnsmasq-dhcp: DHCP packet received on wlp3s0 which has no address
我又进步了一步!
ifconfig wlp3s0 192.168.8.20/24 up
现在设备可以连接,但还没有互联网。