WPA_ACTION

НАЗВАНИЕ
ОБЗОР
ОПИСАНИЕ
IFACE
ACTION
ОКРУЖЕНИЕ
ИСПОЛЬЗОВАНИЕ
СМОТРИ ТАКЖЕ
АВТОР
АВТОРЫ ПЕРЕВОДА

НАЗВАНИЕ

wpa_action − сценарий действий wpa_cli

ОБЗОР

wpa_action IFACE ACTION

ОПИСАНИЕ

wpa_action − это сценарий оболочки, спроектированный для управления набором инструментов ifupdown в соответствии с событиями ACTION от wpa_supplicant. wpa_cli принимает события CONNECTED и DISCONNECTED от wpa_supplicant через сокет управления интерфейсом и передаёт событие ACTION в сценарий wpa_action в качестве аргумента, вместе с именем интерфейса IFACE, для выполнения действия.

wpa_action также принимает переменную окружения от wpa_cli, WPA_ID_STR, содержащую буквенно−цифровую строку идентификации для ТЕКУЩЕГО блока network. WPA_ID_STR предоставляется опцией ’id_str’ блока network wpa_supplicant.conf, и позволяет отобразить событие ACTION на интерфейс LOGICAL, настроенный в файле interfaces.

Если файл interfaces или ifstate пакета ifupdown не найден, wpa_action завершит работу без предупреждений (со статусом 0). wpa_action проверяет существование файлов в следующих местах:

/etc/network/run/ifstate

/run/network/ifstate

/etc/network/interfaces

IFACE

Сетевой интерфейс для выполнения действия, например ’eth1’ или ’wlan0’.

ACTION

ДЕЙСТВИЕ, выполняемое над интерфейсом IFACE.
CONNECTED

wpa_supplicant завершил аутентификацию. Была запущена команда ifup IFACE=WPA_ID_STR, а само действие записано в системный журнал syslog. Применены сетевые настройки логического (LOGICAL) интерфейса WPA_ID_STR.

DISCONNECTED

wpa_supplicant обнаружил отключение. Была запущена команда ifdown IFACE=WPA_ID_STR, а само действие записано в системный журнал syslog. Сетевые настройки логического (LOGICAL) интерфейса WPA_ID_STR отменены.

stop

Пользователь вручную запросил действие (ACTION) ’stop’ для остановки демона wpa_cli, будет запущена команда ifdown IFACE (если интерфейс IFACE присутствует в файле ifstate) и завершён демон wpa_supplicant.

reload

Действие (ACTION) ’reload’ может использоваться для перезагрузки файла конфигурации wpa_supplicant, указанного wpa−roam. ’restart’ − синоним ’reload’ и может использоваться вместо него. Действие записывается в журнал /var/log/wpa_action.log.

ОКРУЖЕНИЕ

В качестве переменной окружения WPA_ID_STR в wpa_action экспортируется буквенно−цифровая строка идентификации, предоставляемая опцией ’id_str’ блока network wpa_supplicant.conf. Если ’id_str’ не указана в ТЕКУЩЕМ блоке network, то в переменную окружения WPA_ID_STR подставляется ’default’.

В wpa_action экспортируется также уникальный идентификатор сети WPA_ID. Это число, назначенное ТЕКУЩЕМУ блоку network wpa_supplicant (network_id).

ИСПОЛЬЗОВАНИЕ

Единственные причины, по которым пользователю может понадобиться запустить wpa_action − это остановка wpa_cli из управляющего пакета ifupdown и перезагрузка файла wpa_supplicant.conf после редактирования.

wpa_action eth1 stop

С другой стороны, wpa_action указывается как аргумент демона wpa_cli.

wpa_cli −i eth1 −a /sbin/wpa_action −B

Это можно сделать с помощью опции wpa−roam в файле interfaces. wpa−roam принимает один аргумент − файл wpa_supplicant.conf, указанный пользователем.

Методом (METHOD) inet для этого интерфейса должен быть ’manual’, который должен быть соответствующим образом настроен на обработку событий wpa_cli. В качестве запасного варианта поддерживается экземпляр интерфейсов ’default’, который использует метод (METHOD) dhcp inet для сетей без опции ’id_str’, который попытается получить IP−адрес по DHCP. Если одна или более сетей требуют дополнительной настройки, укажите уникальный идентификатор ’id_str’ для каждой из сетей, тогда экземпляры интерфейсов будут использовать значение ’id_str’ в качестве логического (LOGICAL) имени интерфейса. Следующий файл interfaces настроен на использование DHCP для любой сети без ’id_str’, статического IP−адреса для сети с ’id_str’ равным ’home_static’ и DHCP вместе с дополнительной командой post−up для сетей с ’id_str’ равным ’uni’.

Пример файла wpa_supplicant.conf, настроенного на перемещение между 3 различными сетями:

network={

ssid="foo"

id_str="uni"

key_mgmt=NONE

}

network={

ssid="bar"

id_str="home_static"

psk=123456789...

}

network={

ssid=""

key_mgmt=NONE

}

Соответствующий файл interfaces должен содержать логические (LOGICAL) интерфейсы, которые соответствуют каждому уникальному ’id_str’, указанному в файле конфигурации:

iface eth1 inet manual

wpa−driver wext

wpa−roam /etc/wpa_supplicant/wpa_supplicant.conf

iface default inet dhcp

iface uni inet dhcp

iface home_static inet static
address 192.168.0.20
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
gateway 192.168.0.1

СМОТРИ ТАКЖЕ

wpa_cli(8), wpa_supplicant(8), wpa_supplicant.conf(5), ifup(8), interfaces(5)

АВТОР

Эта страница руководства была написана Келом Моддерманом (Kel Modderman) <kel@otaku42.de> для системы Debian GNU (но может использоваться другими).

АВТОРЫ ПЕРЕВОДА

Перевод выполнен на сайте коллективных переводов http://translated.by. Авторы перевода Олег Безначев aka saturn721, Владимир Ступин <vladimir@stupin.su>.