我正在我的 Pi 上運行最新 11 月版本的 Raspian Stretch Lite。
/etc/network/interfaces
每當我將 USB wifi 加密狗插入連接到相應網路的 USB 介面時,我都會建立一個包含此資訊的檔案。
source-directory /etc/network/interfaces.d
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 10.0.0.1
gateway 10.0.0.1
network 10.0.0.0
netmask 255.255.255.0
broadcast 10.0.0.255
auto wlan0
iface wlan0 inet static
address 10.10.10.1
gateway 10.10.10.1
network 10.10.10.0
netmask 255.255.255.0
broadcast 10.10.10.255
auto wlan1
iface wlan1 inet dhcp
wpa-ssid "ssidssidssid"
wpa-psk "pskpskpsk"
但是,我需要能夠成功連接到多個網絡,因此做了一些研究使我發現如何設定網路 wifi 靜態 IP 位址
這篇討論的是保留/etc/network/interfaces
文件,並對 only/etc/wpa_supplicant/wpa_supplicant.conf
或/etc/wpa_supplicant/wpa_supplicant-wlan1.conf
forstretch 進行更改。
country=US
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
scan_ssid=1
ssid="ssid1ssid1ssid1"
psk="psk1psk1psk1"
id_str="AP1"
}
network={
scan_ssid=1
ssid="ssid2ssid2ssid2"
psk="psk2psk2psk2"
id_str="AP2"
}
我必須sudo systemctl enable wpa_supplicant
啟用 wpa_supplicant,sudo systemctl start wpa_supplicant
因為它在我的建置中顯示為停用。
我什至嘗試過啟用此服務後重新啟動。但我沒有顯示使用 的接入點的 IP 位址ip address
。使用iwgetid
對我沒有任何幫助,也不iwconfig
顯示它已連接。
答案1
透過使用手冊頁範例,我能夠讓 wpa_supplicant 從命令列工作,而無需將其作為服務運行。
wpa_supplicant -B -c/etc/wpa_supplicant/wpa_supplicant.conf -iwlan0
將其作為服務運行並使其正常工作需要我修改 wpa_supplicant.service 的單元文件
sudo systemctl edit --full wpa_supplicant.service
將 execstart 行更改為:
ExecStart=/sbin/wpa_supplicant -iwlan0 -c/etc/wpa_supplicant/wpa_supplicant.conf -u -s -O /run/wpa_supplicant
仍然不確定如何讓所有介面使用這個 .conf 文件,但這讓我作為服務工作。