Ключевые слова:freebsd, wifi, wpa2, wireless, (найти похожие документы)
From: Stanislav Lapshansky <http://slapsh.livejournal.com>
Date: Mon, 20 May 2006 18:21:07 +0000 (UTC)
Subject: Насткойка беспроводного доступа под FreeBSD
Оригинал: http://slapsh.livejournal.com/135608.html
Испытывались платы D-Link DWL-G650 (PCMCIA, чипсет Atheros 5212) и
Intel 2200BG (чипсет Centrino).
Точка доступа -- маршрутизатор LinkSys WRT54G. Broadcast SSID disable,
WPA2-PSK, AES.
Windows XP
1) Устанавливаем драйверы (без управляющих программ)
2) Устанавливаем патч KB893357 (без него не будет WPA2)
3) Вызываем Wireless Network Connection Properties. Во вкладке
Wireless Networks, ставим галочку Use Windows to configure my wireless
network settings. Далее нажимаем кнопку Add, в открывшемся диалоговом
окне настраиваем параметры беспроводной сети.
4) Все.
FreeBSD 6.0 (для D-Link)
1) Перекомпилируем ядро со следующими параметрами:
device wlan // поддержка 802.11
device wlan_acl
device wlan_ccmp
device ath // драйвер для D-Link
device ath_hal
device ath_rate_onoe
2) После перезагрузки, вставляем в разъем PCMCIA карточку D-Link,
пишем от пользователя root "ifconfig -a" и среди прочего видим
появившееся устройство ath0.
3) Настроим WPA. Для этого напишем файл /etc/wpa_supplicant.conf
следующего содержания:
# Тут даже не буду ничего комментировать,
# хотим -- читаем описание в
# /usr/src/contrib/wpa_supplicant/wpa_supplicant.conf
ctrl_interface_group=0
eapol_version=1
ap_scan=1
fast_reauth=1
network={
# Определим ssid беспроводной сети
ssid="homenetwork"
# Поскольку рассылка ssid на точке доступа
# у нас заблокирована scan_ssid=1, если она
# разрешена, то scan_ssid=0
scan_ssid=1
# Используем шифрование WPA2
proto=RSN
# А именное его версию с preshared keys
key_mgmt=WPA-PSK
# Шифрование трафика по протоколу AES
pairwise=CCMP
group=CCMP
# Наш секретный preshared key, пароль, по-русски ;-)
psk="password"
}
4) Запускаем беспроводное соединение:
/etc/rc.d/wpa_supplicant start ath0
5) Назначаем IP-адрес для интерфеса ath0, при помощи встроенного в
точку доступа DHCP-сервера: dhclient ath0
6) Все.
Для автоматизации шагов 4) и 5) надо:
а) создать конфигурационный файл для демона devd,
/usr/local/etc/devd/ath.conf, следующего содержания:
attach 10 {
device-name "ath[0-9]+";
action "/etc/rc.d/wpa_supplicant start $device-name &&
/etc/pccard_ether $device-name start";
};
detach 10 {
device-name "ath[0-9]+";
action "/etc/pccart_ether $device-name stop &&
/etc/rc.d/wpa_supplicant $device-name stop";
};
б) и добавить в /etc/rc.conf такую строку (при желании можно просто
указать там IP-адрес интерфейса и его маску):
ifconfig_ath0="DHCP"
Теперь беспроводная сеть будет подниматься автоматически при установке
карточки в PCMCIA-разьем.
FreeBSD (Intel 2200BG)
С Intel 2200BG все немного более "запущено". Кроме того, еще и глючит
немного. Но тоже работает.
Кратко опишу существенные отличия:
1) Устройство называется iwi0, соответственно ядро надо компилировать
со следующими опциями:
device wlan // поддержка 802.11
device wlan_acl
device wlan_ccmp
device iwi
2) Интелевский адаптер требует загрузки firmware. Для этого нам
понадобится установить пакет iwi-firmware-2.4 (или более свежую
версию, главное не перепутать и не установить версию для другого
адаптера). Что бы firmware загружалось в адаптер при старте системы, в
файл /etc/rc.conf надо добавить следующую строку:
iwi_enable="YES"
3) При запуске беспроводного соединения при помощи команды
/etc/rc.d/wpa_supplicant start iwi0 у меня возникал "глюк" --
соединение обычно запускалось не с первого раза, а со
второго-третьего. Возможно это происходит из-за запрета
широковещательной рассылки SSID на моем беспроводном маршрутизаторе.
Настроил сегодня FreeBSD 6.1 + iwi0 + WPA-PSK - действительно, глюк имеет место быть - ассоциация нормально устанавливается только со второго раза - причина - запрет рассылки ssid.
В первый раз карточка узнает ssid (и при отключении он все равно остается).
Во второй раз - устанавливает соединение.
в iwi что-то сломали
после /etc/rc.d/wpa_supplicant start iwi0 криптование не работает, а в dmesg целая куча iwi0: could not allocate firmware DMA memory