Konfiguracja USB WiFi po podłączeniu.

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

Moderatorzy: Moderatorzy, Administratorzy

kazek3018
Użytkownik
Posty: 181
Rejestracja: 2006-12-10, 14:27

Konfiguracja USB WiFi po podłączeniu.

Post autor: kazek3018 »

Mam kartę WiFi na USB:
Bus 005 Device 007: ID 148f:3070 Ralink Technology, Corp. RT2870/RT3070 Wireless Adapter

Poczytawszy trochę:
http://alien.slackbook.org/dokuwiki/dok ... re:network
Doszedłem do wniosku że można ją tak skonfigurować, żeby po podłączeniu automatycznie się skonfigurowała:
Runtime
UDEV will also take care of dynamic additions and removals of hardware. This involves networking hardware as well - think of wireless PCCard or USB devices. The same basic procedure as described in the previous bullet pont applies here, with the addition that on hardware removal, ultimately the following command will run:

/etc/rc.d/rc.inet1 INTERFACE_stop

which will de-activate the interface.

Umieściłem następujący wpis w /etc/rc.d/rc.inet1.conf:

Kod: Zaznacz cały

# Config information for ra0:
IFNAME[2]="ra0"
IPADDR[2]="10.0.0.1"
NETMASK[2]="255.255.255.0"
USE_DHCP[2]=""
DHCP_HOSTNAME[2]=""
Niestety, to jak na razie pozwala na konfiguracje WiFi w momencie startu systemu (jeżeli karta jest podłączona do portu USB).
Jeżeli usunę kartę i podłącze ją z powrotem wtedy ifconfig -a:

Kod: Zaznacz cały

ra0: flags=4098<BROADCAST,MULTICAST>  mtu 1500
        ether 00:00:00:00:00:00  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
iwconfig:

Kod: Zaznacz cały

ra0       Ralink STA  
          
lo        no wireless extensions.
Czego jeszcze brakuje?

PS.
Czy ktoś wie dlaczego iw list nie wyświetla żadnych informacji o tej karcie (po uprzednim wydaniu komendy: ifconfig ra0 up)?
kazek3018
Użytkownik
Posty: 181
Rejestracja: 2006-12-10, 14:27

Re: Konfiguracja USB WiFi po podłączeniu.

Post autor: kazek3018 »

Dalej nie bardzo wiem czemu nie działa, ale zrobiłem to za pomocą reguł udev:

/etc/udev/rules.d/95-wifi-detect.rules:

Kod: Zaznacz cały

ACTION=="add", KERNEL=="ra0", SUBSYSTEM=="net", RUN+="/bin/sh -c '/etc/rc.d/rc.ra0_wifi start &'"
ACTION=="remove", KERNEL=="ra0", SUBSYSTEM=="net", RUN+="/bin/sh -c '/etc/rc.d/rc.ra0_wifi stop &'"
A teraz w etc/rc.d/rc.ra0_wifi:

Kod: Zaznacz cały

#! /bin/sh
# /etc/rc.d/rc.ra0_wifi
# Skrypt podnosi i zatrzymuje development network.


# Function to start the network:
start() {
  /sbin/ifconfig ra0 10.0.0.1 netmask 255.255.255.0 up
}

# Function to stop the network:
stop() {
  sleep 1
}


############
### MAIN ###
############

case "$1" in
'start') # "start" brings up all configured interfaces:
  start
  ;;
'stop') # "stop" takes down all configured interfaces:
  stop
  ;;
*) # The default is to bring up all configured interfaces:
  start
esac

# End of /etc/rc.d/rc.ra0_wifi
Ciekawy jest fakt, że stop() nie może być pusty (albo tylko komentarz), bo inaczej to nie będzie działać.
W star i stop planuje jeszcze dodanie hotspota razem z szyfrowaniem.
ODPOWIEDZ