modprobe ndiswrapper

Serwery i sieci oparte na Slackware, wszelkiego rodzaju usługi, troubleshooting.

Moderatorzy: Moderatorzy, Administratorzy

Awatar użytkownika
uzytkownik
Użytkownik
Posty: 26
Rejestracja: 2005-08-08, 11:59

modprobe ndiswrapper

Post autor: uzytkownik »

Jestem szczęśliwym posiadaczem słynnej już karty d-link dwl-520+. Skonfigurowałem i zainstalowałem sterownik zgodnie z opisem na http://forum.slackware.pl/viewtopic.php?t=1388. Mój problem jest następujący:
uruchamiam komputer i wpisuję #iwconfig

Kod: Zaznacz cały

lo	no wireless extension

eth0	no wireless extension 
no to daję #modprobe ndiswrapper a potem #iwconfig

Kod: Zaznacz cały

lo        no wireless extension

eth0      no wireless extension

wlan0     IEEE 802.11b  ESSID:"poprawny_ESSID"  
          Mode:Managed  Frequency:2.462GHz  Access Point: 00:60:B3:22:1C:2B  
          Bit Rate:11Mb/s   Tx-Power:0 dBm   Sensitivity=0/3  
          RTS thr:4096 B   Fragment thr:4095 B   
          Encryption key:off
          Power Management:off
          Link Quality:84/100  Signal level:-59 dBm  Noise level:-256 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:1  Invalid misc:2   Missed beacon:0 
czyli jakiś postęp jest, a następnie pinguję bramę #ping 172.17.0.1

Kod: Zaznacz cały

connect: Network is unreachable
w taki razie wpisuję #ifconfig wlan0 172.17.8.51 a potem pinguję bramę no i jest :) 0% straty. W FAQ jest polecenie #ndiswrapper -m, któro ma spowodować, że w pliku /etc/modprobe.conf zostanie dodany wpis: alias wlan0 ndiswrapper. Najciekawsze jest to, że ten plik jest pusty, a gdy wydaję to polecenie ponownie dostaję komunikat: modprobe config already contains alias directive co nie zmienia faktu, że plik konfiguracyjny jest nadal pusty ;/. Nie pomaga wyedytowanie i wpisanie ręcznie alias wlan0 ndiswrapper do /etc/modprobe.conf i za każdym razem, gdy uruchamiam kompa muszę na nowo wydawać te polecenia, żeby móc sobie... pingować :(. Nawet gdy już mogę sobie poniepokoić bramę, to i tak nie mam netu.
Chciałbym wiedzieć jak zautomatyzować ten proces umożliwiania skutecznego pingowania bramy, tak abym nie musiał za każdym razem wpisywać tych poleceń(jakieś skrypty albo pliki konfiguracyjne?)
[url=http://www.slackware.com][img]http://www.zwahlendesign.ch/images/badges2/get_slackware_80x15.png[/img][/url] TheMusicSoundsBetterWithYou!
Awatar użytkownika
Kosma
Użytkownik
Posty: 531
Rejestracja: 2005-04-02, 00:44
Lokalizacja: Wrocław
Kontakt:

Re: modprobe ndiswrapper

Post autor: Kosma »

Spróbuj dodać do modules.conf linie:

Kod: Zaznacz cały

alias eth1 ndiswrapper
options ndiswrapper if_name=eth1 hangcheck_interval=30
Od teraz zamiast wlan0 masz eth1, przez co slak jest dużo bardziej zadowolony.

A co do essid, to w /etc/rc.d/rc.wireless.conf znajdź sekcję:

Kod: Zaznacz cały

# Pick up any Access Point, should work on most 802.11 cards
*)
    INFO="Any ESSID"
    ESSID="any"
    ;;
# ---------- END SECTION TO REMOVE ------------
I zmień zmienną ESSID na właściwa dla Twojego operatora. Oprócz tego w /etc/rc.d/rc.inet1.conf wpisz pod interfejsem eth1 odpowiednie IP, maskę i gateway. Powinno ruszyć.
Kot, etatowy opieprzacz z zakresu kart AC'97.
Awatar użytkownika
uzytkownik
Użytkownik
Posty: 26
Rejestracja: 2005-08-08, 11:59

Re: modprobe ndiswrapper

Post autor: uzytkownik »

Dalej muszę wpisywać ręcznie tak jak poprzednio:(. A po za tym w czasie ładowania systemu pojawiają się jakieś informacje o kłopotach z modułem agpgart.
[url=http://www.slackware.com][img]http://www.zwahlendesign.ch/images/badges2/get_slackware_80x15.png[/img][/url] TheMusicSoundsBetterWithYou!
Awatar użytkownika
brx
Użytkownik
Posty: 723
Rejestracja: 2004-06-24, 14:37
Lokalizacja: Poznań/Lublin

Re: modprobe ndiswrapper

Post autor: brx »

Dopisz do rc.local. Jest wykonywany jeko ostatni ze skryptów startowych i może radiówka zdąży się podnieść...
Slackware Current - Kernel 2.6.18 - Xfce - - Aterm - Kadu
_______________________________________
Registered Linux User 363857 :D
przemek999
Pomocnik
Posty: 1157
Rejestracja: 2005-03-04, 18:27

Re: modprobe ndiswrapper

Post autor: przemek999 »

uzytkownik wróżkami nie jesteśmy - pokaż te logi . Najlepiej napisz mały, posty skrypt, który zastąpi rc.inet1 - w Current PV go skopał. Pamiętaj o depmod po zmodyfikowaniu modules.conf.
Pozdrawiam Przemek.
Awatar użytkownika
uzytkownik
Użytkownik
Posty: 26
Rejestracja: 2005-08-08, 11:59

Re: modprobe ndiswrapper

Post autor: uzytkownik »

W /etc/rc.d/rc.local wpisałem modprobe ndiswrapper, potem sleep 2 i pozostałe instrukcje. Działa. Bolszoje spasiba.
[url=http://www.slackware.com][img]http://www.zwahlendesign.ch/images/badges2/get_slackware_80x15.png[/img][/url] TheMusicSoundsBetterWithYou!
Awatar użytkownika
uzytkownik
Użytkownik
Posty: 26
Rejestracja: 2005-08-08, 11:59

Re: modprobe ndiswrapper

Post autor: uzytkownik »

:D pierwszy post pod systemem z pingwinem w herbie, a teraz idę mecz oglądać
[url=http://www.slackware.com][img]http://www.zwahlendesign.ch/images/badges2/get_slackware_80x15.png[/img][/url] TheMusicSoundsBetterWithYou!
luka5z
Użytkownik
Posty: 19
Rejestracja: 2004-12-15, 16:22

Re: modprobe ndiswrapper

Post autor: luka5z »

Pomozta bo mnie juz nerwy zjadaja...
Karta d-link dwl-510
Wszystko ladnie laduje sie jako eth0, miodzik. Gdy sprawdzam sobie przestrzen poleceniem:

Kod: Zaznacz cały

iwlist eth0 scan 
wlan0     Scan completed :
          Cell 01 - Address: 02:E0:5C:F9:B5:34
                    ESSID:"xxx"
                    Protocol:IEEE 802.11b
                    Mode:Ad-Hoc
                    Frequency:2.412GHz
                    Quality:0/100  Signal level:100/154  Noise level:0/154
                    Encryption key:off
                    Bit Rate:1Mb/s
                    Bit Rate:2Mb/s
                    Bit Rate:5.5Mb/s
                    Bit Rate:11Mb/s
                    Extra:bcn_int=100
                    Extra:atim=0
Odpalam sobie skrypcik:

Kod: Zaznacz cały

#!/bin/bash 
# 
# /etc/rc.d/rc.wlan 

# Sekcja DANE SIECI zmień zgodnić zgodnie z parametrami sieci Exclamation 
ETH=eth0 # interfejs radiówki 
ESSID=xxx # nazwa sieci - acces pointa, z którym się łączysz 
MODULE=ndistwrapper # moduł radiówki 
TEST=192.168.1.1 # host do testów (najlepiej brama) np. 192.168.0.1 
DHCP=no # yes | no - obsługa poprzez DHCP 
MODE=Ad-Hoc # Ad-Hoc, Managed, Master, Repeater, Secondary, auto 
RATE=11M # Bit rate : auto, 1M, 11M 
CHANNEL=6 # 1, 2, 3 (kanał) 

# Tylko jeśli nie korzystasz z DHCP w przeciwnym razie zahashować ! 

IP=192.168.1.188 # twój adres IP 
NETMASK=255.255.255.0 # maska podsieci 
BROADCAST=192.168.1.255 # adres rozgłoszeniowy 
GATEWAY=192.168.1.1 # brama domyślna 

# Koniec sekcji DANE SIECI. Nie zmieniać niczego poniżej Exclamation 
# Podnoszenie loopback'a 
lo_up() 
{ 
  if grep lo: /proc/net/dev 1> /dev/null ; then 
  if ! /sbin/ifconfig | grep "^lo" 1> /dev/null ; then 
             /sbin/ifconfig lo 127.0.0.1 
             /sbin/route add -net 127.0.0.0 netmask 255.0.0.0 lo 
        fi 
  fi 
}      
    
# Podnoszenie interfejsu sieciowego                          
function eth_up() 
{ 
echo -n "$ETH: Wgrywam modul karty sieciowej ... " 
if  lsmod | grep $MODULE >> /dev/null ; then 
/sbin/modprobe $MODULE 2>&1 
sleep 1 
echo "Zakonczono" 
else 
echo "Nie wgralem modulu...." 
fi 
echo -n "$ETH: Ustawiam ESSID... " 
if /sbin/iwconfig $ETH essid $ESSID mode $MODE rate $RATE channel $CHANNEL  2>&1 ; then 
sleep 2 
echo "Zakonczono" 
else 
echo "BLAD!" 
exit 
fi 
if [ "$DHCP" == "no" ]; then 
echo -n "$ETH: Podnosze interfejs... " 
if /sbin/ifconfig $ETH $IP netmask $NETMASK broadcast $BROADCAST 2>&1 ; then 
echo "Zakonczono" 
else 
echo "BLAD!" 
exit 
fi 
echo -n "$ETH: Ustawiam domyslna brame... " 
if  /sbin/route add default gw $GATEWAY 2>&1 ; then 
echo "Zakonczono" 
else 
echo "BLAD!" 
fi 
else 
echo -n "$ETH: Konfiguracja z uzyciem DHCP... " 
if ( /sbin/dhcpcd $ETH -t 10 2> /dev/null ); then 
echo "Zakonczono" 
else 
echo "BLAD!" 
exit 
fi 
fi 
} 

# Zamknięcie interfejsu sieciowego 
function eth_down() 
{ 
if [ "$DHCP" == "no" ]; then 
echo -n "$ETH: Zamykanie interfejsu... " 
if ( /sbin/ifconfig $ETH down 2> /dev/null ); then 
echo "Zakończono" 
else 
echo "BLAD!" 
fi 
else 
echo -n "$ETH: Zamykanie DHCP... " 
if ( /sbin/dhcpcd $ETH -k 2>> /dev/null ); then 
sleep 2 
echo "Zakonczono" 
else 
echo "BLAD!" 
fi 
fi 
echo -n "$ETH: Zamykanie interfejsu WLAN... " 
if ( /sbin/iwconfig $ETH essid "" 2>> /dev/null ); then 
sleep 1 
echo "Zakonczono" 
else 
echo "BLAD!" 
fi 

# Usunięcie modułu - może powodować zawieszenie systemu na niektórych maszynach 
# Jeśli nie potrzebujesz tej opcji to ją zahashuj # 
echo -n "$ETH: Usuwanie modułu... " 
if ( /sbin/rmmod $MODULE 2>> $LOG ); then 
echo "Zakonczono" 
else 
echo "BLAD!" 
fi 
} 

# Test interfejsu 
function eth_test() 
{ 
echo -n "$ETH: Testuje polaczenie... " 
PING=`ping -c 5 $TEST | grep " 0% packet loss" 2> /dev/null` 
if [ "$PING" ]; then 
echo "DOBRE" 
return 1 
else 
echo "ZLE" 
return 0 
fi 
} 

# 
case "$1" in 
"start") 
lo_up 
eth_up 
;; 
"stop") 
eth_down 
;; 
"restart") 
eth_down 
sleep 4 
eth_up 
;; 
"test") 
eth_test 
;; 
*) 
echo "Dostepne parametry: 

start - uruchomienie interfejsu sieciowego 
stop - zatrzymanie interfejsu sieciowego 
restart - uruchamia ponownie interfesj (resetuje go) 
test - sprawdza poprawnosc polaczenia" 
;; 
esac
Chce pingowac brame i nic... ogolnie nie ma z nia lacznosci. Co musze pokonfigurowac by to wreszcie zadzialalo ?! Po co jest plik wireless.conf, a jesli juz musze go wypelniac to moze ktos powie co i jak!
MaXTeR
Użytkownik
Posty: 11
Rejestracja: 2005-09-26, 12:55
Lokalizacja: Krosno

Re: modprobe ndiswrapper

Post autor: MaXTeR »

ja mam dwl-510 i też ją odpalam na ndiswrapperze.
Mój sposób:

Kod: Zaznacz cały

#!/bin/bash
function ustaw_karte
{
	echo "Ładowanie modułu ndiswrapper...";
	modprobe ndiswrapper;
	sleep 3;
	test=`lsmod | grep ndiswrapper`;
	if [ -z "$test" ]; then
		echo "Błąd ładownania modułu ndiswrapper...";
		echo "Ponowienie próby...";
		modprobe ndiswrapper;
		sleep 2;
		test=`lsmod | grep ndiswrapper`;
		if [ -z "$test" ]; then
			echo "Załadowanie modułu zakończyło się niepowodzeniem."
			exit;
		else
			echo "Moduł załadowany.";
		fi
	else
		echo "Moduł załadowany.";
	fi
	
	echo "Ustawianie klucza sieci...";
	iwconfig wlan0 key 1234567890;
	test=`iwconfig wlan0 | grep 1234-5678-90`;
	if [ -z "$test" ]; then
		echo "Klucz nie został ustawiony.";
		echo "Ponowienie próby...";
		iwconfig wlan0 key 1234567890;
		test=`iwconfig wlan0 | grep 1234-5678-90`;
		if [ -z "$test" ]; then
			echo "Błąd ustawienia klucza.";
			exit;
		else
			echo "Klucz ustwiony";
		fi
	else
		echo "Klucz ustawiony";
	fi
	
	echo "Ustawianie kanału 5";
	iwconfig wlan0 channel 5;
	test=`iwconfig wlan0 | grep "2.432 GHz"`;
	if [ -z "$test" ]; then
		echo "Kanał nie został ustawiony.";
		echo "Ponowienie próby...";
		iwconfig wlan0 channel 5;
		test=`iwconfig wlan0 | grep "2.432 GHz"`;
		if [ -z "$test" ]; then
			echo "Błąd ustawienia kanału.";
			exit;
		else
			echo "Kanał ustwiony";
		fi
	else
		echo "Kanał ustawiony";
	fi
}
function nawiaz_polaczenie
{
	echo "Nawiązywanie połączenia z AP-kiem...";
	iwconfig wlan0 essid "sid_sieci";
	sleep 2;
	test=`iwconfig wlan0 | grep sidsieci`;
	if [ "$test" ]; then
		polaczenie=true;
		echo "Połączenie nawiązane.";
	else
		echo "NIEUDANE";
		polaczenie=false;
	fi
}
function ustaw_wlan
{
	echo "Ustawinie interfejsu wlan0...";
	ifconfig wlan0 192.168.1.123 netmask 255.255.255.0 up;
	echo "Ustawianie domyślenj bramy...";
	route add default gw 192.168.1.1;
}

ustaw_karte;
nawiaz_polaczenie;
ustaw_wlan;
wpis do rc.local:

exec /sciezka_do_skryptu/skrypt

Oczywiście nie należy zapomnieć o ustawiniu /etc/resolv.conf
nameserver ...
ODPOWIEDZ