From: sypper-pit <sypper-pit@mail.ru.>
Newsgroups: email
Date: Mon, 9 Mar 2005 14:31:37 +0000 (UTC)
Subject: Использование Windows драйверов D-Link DWL-G520+ под FreeBSD
NDIS wi-fi проект_evil и DWL-G520+
Благодарен за помощь "Madzhara" ака "OF462M-2".
Нужно было мне настроить dwl-g520+, как извесно во FreeBSD начиная
с 5 ветки имеет такую вещь как NDIS (для тех кто не в курсе это эмулятор
для Windows драйверов, из *.sys & *.ini фаилов ...)
Поставил я FreeBSD-5.3-generic, и взял диск D-Link DWL-G520+ c набором
XP-шных драйверов в составе:
FwRad16.bin
FwRad17.bin
GPLUS.inf
GPLUS.sys
скопировал в /usr/src/d-link (или куда хотите, это не имеет значение)
// заходим в каталог с NDIS - файлами для компиляции
#cd /usr/src/sys/dev/if_ndis/
правим файлы
if_ndis.c
if_ndis_pccard.c
if_ndis_pci.c
на предмет замены в них строчки
#include "ndis_driver_data.h" на
#include "/usr/src/sys/modules/if_ndis/ndis_driver_data.h" // путь до фаила
В конфиге ядра прописываем: (по совету Madzhara, правда я этого не делал)
options NDISAPI
device ndis
device wlan
(я так не делал .... я поше написал скрипт в rc.d он ниже)
#cd /usr/local/etc/rc.d
#ee ndis_run.sh
дальше пишем скрипт
#!/bin/sh
sleep 5
#только если нет в ядре "options NDISAPI" и "device ndis" ,
# а если есть то не пишите эту строчку
kldload ndis
sleep 5
ifconfig 172.16.0.2 netmask 255.255.255.0 ssid mu_ssid up
sleep 5
route add default 172.16.0.1
Возможно, что можно запускать как-то еще, однако и так ничего.
Когда начинает подгружаться скрипт, то пишется что нет *.bin и не могу загрузить.
Решение
#mkdir /compat/ndis (тут мне подсказал "Madzhara" ака "OF462M-2")
#cp /usr/src/d-link/FwRad16.bin /compat/ndis
#cp /usr/src/d-link/FwRad17.bin /compat/ndis
#reboot //перезагрузка
#kldstat -v|grep ndis должен выдать:
112 ndisapi
119 pci/ndis
120 cardbus/ndis
Если все прошло нормально, то дальше ifconfig отдаст устроиство как ndis0
МИНУСЫ ПОДХОДА (думаю, легко устраняем, после внимательного изучения процесса
загрузки и сборки ядра):
1. Скрипт /etc/rc.network отрабатывается раньше, чем запустится драйвер
ndis0, что мешает конфигурить логические составляющие интерфейса типа
SSID и IP-адреса посредством прописывания оных в /etc/rc.conf.
Выход - настраивать все в /etc/rc.local, что не есть правильно. (C)"Madzhara" ака "OF462M-2"
(мне это не понадобилось за счёт скрипта и я даже ядро не пересобирал,
ну кроме как в целях включения NAT)
2. Неупорядоченность самого процесса сборки. Думаю, при правильном
размещении ndis_driver_data.h иили написании добротного патчика к
соответствующим Makefile'ам все будет гораздо изящнее. (C)"Madzhara" ака "OF462M-2"
580 Прочтений • [Использование Windows драйверов D-Link DWL-G520+ под FreeBSD (wifi wavelan freebsd driver win)] [08.05.2012] [Комментариев: 0]