如何在 NixOS 上使用 wpa_supplicant 设置网络(wlan)?每当我尝试连接到本地 wlan 网络时,我都会收到CONN_FAILED
一个原因,但这个原因有点不具信息性。它还告诉我我的pks
无效(WRONG_KEY
),但我通过 trible 确认它是正确的,并且我之前在 Archlinux 机器上的网络上使用了具有相同密钥(git 版本控制)的配置,并且它有效。
答案1
我怀疑它是否会比您已有的信息更具信息量,但我们还是开始吧。
首先,我们需要存储我们的 WPA2-PSK 秘密:
wpa_passphrase MyWifiSSID MySecretPassword > wpa_supplicant.conf
现在,请确保您已停止网络管理器(如果您使用的话),并以 sudo 形式发出以下所有命令。我们清理接口(我称之为 wlan0):
ip link set dev wlan0 down
ip addr flush dev wlan0
ip link set dev wlan0 up
现在我们关联到AP:
wpa_supplicant -B -i wlan0 -Dnl80211 -c wpa_supplicant.conf
dhclient wlan0
如果网络配置正确,那么您就大功告成了。如果 DHCP 配置中存在一些错误,则可能是缺少默认网关或 DNS 服务器。您可以像我将在静态 IP 的情况下所做的那样设置它们。
如果你没有 DHCP 服务器,或者你想给自己一个静态 IP(例如 192.168.1.200),那么请跳过上面的最后一个命令,然后发出
ip addr add 192.168.1.200/24 dev wlan0
请记住,24
是 CIDR 表示法中的网络掩码。如果您的不同,请相应调整。完成此操作后,您将需要一个默认网关:
ip route add default via 192.168.1.1 dev wlan0
其中 192.168.1.1 是你的家庭路由器/网关的地址,以及 DNS 服务器的地址,
echo nameserver 8.8.8.8 >> /etc/resolv.conf
echo nameserver 8.8.4.4 >> /etc/resolv.conf
就是这个。