Настройте сеть со статическим IP и wpa_supplicant на Debian

В Debian я пытаюсь настроить свою сеть на использование ad-hoc-режима со статическим IP-адресом. Я также хочу, чтобы wpa_supplicant работал, чтобы я мог сканировать его использовать для сканирования сетей WiFi в диапазоне.

Чтобы получить специальную сеть со статическим IP-адресом, я изменил файл /etc/network/interfaces чтобы он выглядел так:

 auto lo iface lo inet loopback iface eth0 inet dhcp auto wlan0 iface wlan0 inet static address 192.168.1.1 netmask 255.255.255.0 wireless-channel 1 wireless-essid MyNetworkName wireless-mode ad-hoc 

Но с этой конфигурацией, если я попытаюсь получить доступ к wpa_supplicant с помощью wpa_cli я получаю сообщение об ошибке, указывающее, что wpa_supplicant не запущен. Есть ли что-то, что я могу добавить в эту конфигурацию, которая позволит wpa_supplicant запускаться, но не использоваться для подключения к сети?

Полагаю, я мог бы просто использовать iwlist scan чтобы найти список доступных беспроводных сетей в диапазоне … но у меня уже есть моя настройка синтаксиса для вывода wpa_cli scan_results 🙂

wireless-tools (т.е. iwlist , iwconfig , iwpriv …) являются доисторическими и должны быть заменены iwpriv iw . wireless- вещи в /etc/network/interfaces не обрабатываются wpa_supplicant , а теми старыми wireless-tools , которые отправляют скрипты в /etc/network/if-*.d/wireless-tools .

Сравните со сценарием, отправленным wpa_supplicant в /etc/network/if-*.d/wpasupplicant которые являются только символическими ссылками на скрипты в /etc/wpa_supplicant/ . Они обрабатывают варианты формы wpa-*

Чтобы запустить wpa_supplicant без активной конфигурации, просто укажите пустой файл конфигурации, например … /dev/null . Не забудьте использовать драйвер nl80211 , потому что все остальное (включая wext ) просто устарело, но по-прежнему остается дефолтом в старой версии версии wpa_supplicant которую wpa_supplicant Debian.

 auto wlan0 iface wlan0 inet static address 192.168.1.1 netmask 24 wpa-conf /dev/null wpa-driver nl80211