Strony

wtorek, 1 listopada 2011

Ubuntu 11.10 + karta bezprzewodowa 1030N = skuteczny sposób na zawieszenie routera (sic!)?

Tak, to prawda.

Czegoś takiego jeszcze nie widziałem. Ubuntu 11.10 pracujące na laptopie DELL'a z kartą bezprzewodową Intel Centrino N1030 skutecznie zawiesza u mnie router. Wystarczy kilka pakietów przesłanych w eter i router kompletnie odmawia posłuszeństwa, stając się niedostępnym nie tylko dla tej karty, ale dla wszystkich urządzeń sieciowych (w tym przewodowych).

Znalazłem sporo postów dotyczących problemów z tą kartą, zdecydowana większość z nich mówi o konieczności zrezygnowania z trybu N w routerze na rzecz B/G mixed i wymuszeniu takiego trybu po stronie klienta (Ubuntu).

Niemniej jednak, nie rozwiązywały one problemu podstawowego - padającej sieci. Dlatego przeszedłem do samodzielnych poszukiwań.

Jak się okazuje, problem leży w sterowniku dla karty 1030N, o nazwie iwlagn. Na podstawie komunikatów w dmesg, udało mi się ustalić, że problem leży w agregacji niektórych ramek (ang. subframes aggregation). Sterownik zawarty w kernelu 3.0.0-12, który leży u podstaw Ubuntu 11.10 ma w sobie buga związanego z tym tematem, a patch poprawiający ten bug można znaleźć tutaj.

Rozwiązanie?
W moim przypadku pomogła instalacja kernela 3.1-RC z Mainline Builds.

Krok po kroku, wygląda to następująco:

1. Ściągnij paczki z kernelem z http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.1-rc10-oneiric/, zgodnej z architekturą Twojego PC, do jednego katalogu na dysku.

2. Zainstaluj ściągnięte oprogramowanie za pomocą:
dpkg -i *.deb

3. Zrestartuj maszynę, korzystając z nowo zainstalowanego kernela.

Dzięki temu, moja karta N1030 działa teraz świetnie i to z wykorzystaniem trybu N!

Powodzenia.

Więcej informacji (źródła, które pomogły mi w rozwiązaniu problemu):
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/821034
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/821157
http://superuser.com/questions/340751/dell-laptop-wireless-linux-drivers-xps-l502x
https://bugs.launchpad.net/ubuntu/+source/network-manager/+bug/836250