The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Настройка USB ADSL модема AusLinx AL-2006 в ОС Linux (linux adsl modem)


<< Предыдущая ИНДЕКС Правка src / Печать Следующая >>
Ключевые слова: linux, adsl, modem,  (найти похожие документы)
From: Evil-And <Evil-And at nm dot ru> Date: Wed, 14 Apr 2006 18:21:07 +0000 (UTC) Subject: Настройка USB ADSL модема AusLinx AL-2006 в ОС Linux Оригинал: http://www.evil-and.nm.ru/instruction-2.6.10.html Настройка USB ADSL модема AusLinx AL-2006(Annex A) в ОС Linux (ядра 2.6.10 и выше) для пользования услугой "СТРИМ" (Недавно я обнаружил, что эта инструкция и файл cxacru-cf.bin подходят также для настройки модемов Zyxel Omni Adsl USB EE, подробности смотрите[2] ниже.) Стал доступен первый "официальный" релиз драйвера cxacru и обновление usbatm. Архив доступен здесь. Сайт разработчика драйвера: http://accessrunner.sourceforge.net Эта инструкция предназначенна для владельцев модемов AusLinx AL-2006, которые хотели бы пользоваться "СТРИМом" в Linux. Данная инструкция описывает процесс настройки модема в случае использования ядра 2.6.10. Для тех, кто пользуется ядрами 2.6.6-2.6.9 существует другая инструкция. Узнать версию ядра можно, запустив в консоли команду: uname -a . При написании этой инструкции я расчитывал на наличие у читателя некоторых знаний и навыков работы с ОС GNU/Linux, как то: * знание базовых команд UNIX; * умение ориентироваться в структуре каталогов своего дистрибутива; * умение устанавливать в систему как бинарные пакеты программ, взятые из дистрибутива, так и из исходных кодов; * умение пересобирать ядро (процесс описан во многих книгах по Linux, статьях, HOWTO и FAQ); * знание перечня установленного в компьютере оборудования, знание типов файловых систем, используемых у вас; * самое важное - умение находить и читать документацию к программам; * умение правильно задавать вопросы; * внимательность. Если вы ещё не испугались, продолжайте читать дальше :), тем, кто сомневается в своих способностях рекомендую получше изучить систему, научиться решать другие проблемы, перечитать побольше man'ов, HOWTO и FAQ - получаемые при этом знания стоят потраченного времени! Предыстория До появления услуги "СТРИМ", а точнее, тарифных планов НЕО и НЕО+ я, как и многие другие москвичи, пользовался для доступа в Интернет обычным аналоговым модемом. Так как модем был аппаратным и подключался через COM-порт, трудностей при его использовании в Linux'е не возникало. Однако, появившаяся возможность иметь подключение со скоростью 160 Кбит/с и почти неограниченным трафиком (<=20 Гб/месяц) не давало мне покоя. Перед подключением к СТРИМу я облазил Интернет в поисках совместимых с Linux ADSL-модемов. Узнав, что USB ADSL модемы кому-то удалось заставить работать в Linux'e, я поехал в офис МТУ-Интел, в надежде взять со скидкой для студентов ADSL-модем с портом Ethernet. Как выяснилось, скидки для студентов распространялись только на USB модемы, и, понадеявшись на "авось" я взял имевшийся там AusLinx AL-2006 за 24$. Подключения пришлось дожидаться почти неделю, но ожидание не прошло даром - радость, наступившая после скачивания музыкального альбома со скоростью 1 Мбайт/мин. была неописуемой. Омрачали эту радость две неприятности: работать приходилось в Windows XP - это после 2,5 лет использования Linux, и другая, не менее неприятная - связь периодически обрывалась и приходилось долго дожидаться сброса сессии на МТУ-шном оборудовании ~10 мин. (на DIAL-UP'е я такого откровенного маразма не встречал). Первое время я мирился с невозможностью использовать высокоскоростное соединение в Linux, но от вынужденного использования нелюбимой ОС становилось всё противней и противней. Некоторое время я даже пытался разобраться с Cooperative Linux (изменённое ядро Linux, которое можно запускать поверх NT), но поленился и решил вернуться к попыткам заставить модем работать в Linux'е. Моё внимание привлекло руководство по установке модемов на чипе Connexant на ядрах 2.6.3-2.6.5 и 2.6.6-2.6.9 на сайте http://www.zullinux.it. Оно отличалось подробностью описания действий и ясностью. Опираясь на это руководство, я добился функционирования подключения в Linux посредством cxacru. Но работало всё только в том случае, если перед загрузкой Linux'а загружался Windows XP и загружал в модем микропрограмму. Покопавшись в исходном коде программы cxload и получив "правильную" микропрограммы из файла CnxETU.sys из поставки драйвера для Windows от МТУ, я таки добился автономной работы модема под своей любимой ОС. Также я написал краткое руководство по настройке модема для ядер 2.6.6-2.6.9. Ознакомиться с нею можно тут. Появление ядра 2.6.10 застало меня врасплох. Стремительно приближалась зачётная неделя, приходилось в спешке доделывать курсовой, сдавать лабы и т.д. Ядро 2.6.10 отличалось от 2.6.9 невозможностью применения патча для драйвера speedtch, который в новом ядре был переписан с целью поддержки новой инфраструктуры usb_atm-устройств. В начале 2005 года я (а может быть, и не я, а МТУ-шные технари) избавился от другой проблемы - периодических обрывов связи. Согласно показаниям dmesg, при обрывах ядро "теряло", а затем снова "находило" модем. Сначала я пробовал "химичить" с настройками hotplug, но затем смог решить эту проблему просто и эффективно - воткнул модем в другой USB-порт материнской платы и проблема исчезла - разрывы соединения на ядрах 2.6.6-2.6.9 происходили только при подключении во время работы модема флэш-драйва. После успешной сдачи предпоследнего экзамена я нашёл на сайте www.zullinux.it ссылку на новый драйвер для своего модема. Его написал Роман Каган, на основе старого cxacru и с использованием инфраструктуры ядра usb_atm. Компиляция нового модуля в составе ядра не составила особого труда, однако, драйвер помимо микропрограммы требует также предоставить ему файл настроек. Его я набрал в hexedit'е и он доступен здесь. С новым драйвером процесс использования модема напоминает процесс его использования в Windows: при подключении модема к компьютеру начинает мигать индикатор "ADSL" и устанавливается ADSL-соединение (при правильно работающем hotplug). Файлы Для настройки вам понадобятся: 1. Собственно, драйвер. Распространяется в виде патча к ядру. Можно скачать отсюда. Дополнение: для ядер 2.6.11 и выше лучше взять драйвер из CVS проекта accessrunner. Для тех, у кого нет CVS под Windows или доступа к Интернету под Linux, на сайте выложен архив, полученный из CVS. Файлы нужно распаковать в подкаталог drivers/usb/atm/ исходных текстов ядра. 2. Исходники ядра 2.6.10. Лучше всего взять из дистрибутива, либо с kernel.org. 3. Файл конфигурации модема cxacru-cf.bin. 4. Файл с Firmware bootROM patch cxacru-bp.bin. 5. Файл с микропрограммой модема cxacru-fw.bin. Его можно получить из файла CnxETU.sys с диска из Вашего абонентского комплекта. Процесс описан ниже. 6. Если у вас в системе нет утилит adsl-config(включает adsl-setup, adsl-start, adsl-stop) или pppoeconf, установите одну из них (должны быть в вашем дистрибутиве). 7. В некоторых дистрибутивах пакет ppp собран без поддержки PPPoATM и PPPoE. Можно взять новый ppp-2.4.3 либо взять патч для 2.4.2 8. Вам понадобится br2684ctl для настройки atm - подключения (если у Вас в дистрибутиве нет отдельного пакета, можно взять из старого cxacru, но устанавливать старый cxacru не нужно (он устанавливает себя при запуске make) ) . 9. Для сборки ppp вам могут понадобиться библиотеки: libpcap libatm Установка Несомненно, самым трудным этапом установки драйвера для начинающих пользователей является пересборка ядра. Если Вы уже собрали и установили ядро 2.6.10, или оно было в Вашем дистрибутиве то достаточно будет его пропатчить и выполнить "oldconfig" , выбрать драйвер cxacru как модуль "m" и выполнить "make && make install " ещё раз. Перед компиляцией/перекомпиляцией нужно: 1. Распаковать исходники ядра (для тех, у кого их нет): cd /usr/src/ && tar -jxvf <путь_к_архиву>/linux-2.6.10 2. Применить патч: cd /usr/src/linux-2.6.10 && zcat <путь_к_патчу>/patch-cxacru-2.6.10.diff.gz | patch -p1 3. Если ядро уже было установлено: cp /boot/config /usr/src/linux-2.6.10/ && make oldconfig На вопрос о включении в ядро драйвера cxacru следует ответить "m". 4. Если Вы не пробовали собирать ядро 2.6.10 для поддержки старого драйвера, то лучше поступить вот так: cp /boot/config /usr/src/linux-2.6.10/ && make menuconfig В секции Device Driver -> Networking Support -> Networking Options -> ... выберите такие установки: <M> Asynchronous Transfer Mode (ATM) (EXPERIMENTAL) <M> Classical IP over ATM (EXPERIMENTAL) [*] Do NOT send ICMP if no neighbour (EXPERIMENTAL) <M> LAN Emulation (LANE) support (EXPERIMENTAL) <M> Multi-Protocol Over ATM (MPOA) support (EXPERIMENTAL) <M> RFC1483/2684 Bridged protocols [*] Per-VC IP filter kludge В секции Device Driver -> USB Support -> установите: <M> Support for USB ...... --- USB Host Controller Drivers <M> EHCI HCD (USB 2.0) support [ ] Full speed ISO transactions (EXPERIMENTAL) [ ] Root Hub Transaction Translators (EXPERIMENTAL) <M> OHCI HCD support <M> UHCI HCD (most Intel and VIA) support .... (page) <M> Connexant Accessrunner USB support Для ядра 2.6.11 (при использовании драйвера из CVS: USB DSL modem support ---> <M> Conexant AccessRunner USB support 5. После выхода из программы конфигурирования ядра выполните команды: # make # make install 6. При необходимости переустановите загрузчик. В случае lilo просто введите команду: # /sbin/lilo (Может понадобиться предварительно отредактировать /etc/lilo.conf). 7. Теперь нужно позаботиться о микропрограмме и файле конфигурации, их hotplug будет передавать драйверу cxacru для отправки в модем. Файл конфигурации cxacru-cf.bin можно взять здесь. Файл cxacru-fw.bin нужно получить самостоятельно. Для этого нужно вставить в привод CDROM диск из Вашего комплекта, смонтировать его и извлечь firmware командой вида: # dd bs=1 skip=16832 count=625147 if=/mnt/cdrom/Drivers/Usb-only/Lan/CnxEtU.sys of=/tmp/cxacru-fw.bin следует помнить, что правильная микропрограмма получится только в том случае, если файл CnxEtu.sys на вашем CD совпадает с моим. Поэтому проверьте, совпадает ли md5-сумма вашего файла (#md5sum CnxEtU.sys) с md5-суммой моего (28775c3f6df8c1f364f67d7121191000). Пользователям модемов Zyxel Omni Adsl USB EE для получения cxacru-fw.bin рекомендуется воспользоваться программой cutst. (Автор - stalkerg.) Её нужно скачать, распаковать (tar -zxvf cutst-source.tar.gz), перейти в каталог с исходником, выполнить ./make.sh, запустить: # ./cutst /mnt/cdrom/<Путь_к_CnxEtU.sys>/CnxEtU.sys /tmp/cxacru-fw.bin От Романа поступило сообщение, что cutst в некоторых случаях работает некорректно. Роман Каган обещает в скором времени сделать и выложить у себя на сайте программу для извлечения firmware. В CVS проекта доступна утилита cxacru-fw. Её исходники также можно скачать отсюда. Оба файла нужно поместить в один из каталогов, содержащихся в переменной FIRMWARE_DIRS в скрипте /etc/hotplug/firmware.agent. Как правило, это каталоги /lib/firmware /usr/local/lib/firmware /usr/lib/hotplug/firmware . (Для подстраховки перепишите их во все эти каталоги). Тем, у кого модем с USB ID 572:cafe, нужно также переписать в этот каталог файл cxacru-bp.bin. Узнать USB ID своего модема можно командой lsusb. У меня она выводит такой список: Bus 003 Device 001: ID 0000:0000 Bus 002 Device 001: ID 0000:0000 Bus 001 Device 002: ID 0572:cb00 Conexant Systems (Rockwell), Inc. Bus 001 Device 001: ID 0000:0000 ID моего модема 572:cb00 => мне cxacru-bp.bin не требуется. 8. Убедитесь, что у вас при загрузке системы монтируется файловая система sysfs. В файле /etc/fstab должна быть строка вида: sysfs /sys sysfs defaults 0 0 9. Наконец, можно перезагрузить компьютер. При загрузке следует выбрать в меню новое ядро, если Вы не прописали его в конфиге загрузчика. Во время загрузки модем должен определиться, индикатор "ADSL" должен начать мигать. После установки ADSL соединения можно приступить к настройке ATM. 10. Введите команды: # modprobe br2684 # br2684ctl -b -c 0 -a 0.1.50 # ifconfig nas0 результатом последней команды должен быть вывод вида: nas0 Link encap:Ethernet HWaddr 00:05:25:B0:15:0A UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:894 errors:0 dropped:0 overruns:0 frame:0 TX packets:783 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:719554 (702.6 KiB) TX bytes:68443 (66.8 KiB) 11. Для начала попробуйте настроить PPPoE соединение с помощью adsl-setup. В качестве Ethernet интерфейса укажите nas0. 12. Введите команду adsl-start. Если соединение не устанавливается, проверьте правильность ввода Login'а и пароля, также проверьте, поддерживает ли ваш ppp соединения PPPoE и PPPoA (в версии 2.4.3 поддержка включена, для 2.4.2 есть патч). 13. Остановить соединение можно командой adsl-stop. 14. Для упрощения процесса установки ATM и PPPoE соединений можно воспользоваться моим скриптом. 15. Если у вас получилось настроить модем по этой инструкции сообщите об этом в форуме, если не жалко, укажите MAC-адрес вашего модема ( cat /proc/net/atm/cxacru\:0 ). Обратная связь Если у Вас возникли трудности при использовании этого руководства, задавайте вопросы в форуме. Если у Вас есть предложения, дополнения к инструкции, если Вы обнаружили в ней ошибки или неточности - пишите мне: Evil-And at nm dot ru . Благодарности В первую очередь хочется выразить огромную благодарность Роману Кагану за написание драйвера cxacru. Без него этого руководства не было бы. Выражаю благодарность Stalkerg за программу cutst для получения cxacru-fw.bin. Также благодарю всех тех пользователей, которые настраивали свои модемы с использованием моих кратких инструкций в форуме. Их вопросы и проблемы помогли сделать это руководство лучше и полнее. Если у вас получилось настроить модем по этой инструкции сообщите об этом в форуме, если не жалко, укажите MAC-адрес вашего модема ( cat /proc/net/atm/cxacru\:0).
Инструкция по настройке модема AusLinx AL-2006 для использования в ОС Linux (для ядер версий 2.6.6-2.6.9) Документ описывает процесс установки драйверов, необходимых для работа ADSL USB модема AusLinx в ОС Linux для пользователей услуги "СТРИМ". Инструкции, приведённые здесь, позволили мне настроить свой модем для полноценной работы в Интернет. На момент написания этого документа мне не было известно о других способах настройки этого модема в Linux, если Вы знаете способы, отличные от данного, пожалуйста, сообщите мне. Пока я протестировал драйверы только в системе Debian на ядре 2.6 (2.6.6, 2.6.8.1 и 2.6.9). Если вам удалось воспользоваться моим методом на других системах и ядрах, сообщите мне. 1) Проделайте действия, описанные в инструкции, находящейся по адресу: http://www.zullinux.it/linux/accessrunner.html После выполнения всех действий, описанных там, у вас по команде cxstart.sh должен запускаться скрипт, выполняющий загрузку в модем микропрограммы, настройку модема, установку ADSL соединения с модемом провайдера. У меня этот скрипт работал верно только в тех случаях, когда перед загрузкой драйвера я загружал Windows XP, для которого доступен драйвер от производителя, а затем перезагружался в Linux. Если Вас устраивает такой режим работы, то можете бросить читать эту инструкцию, меня же такое положение дел разочаровало и побудило к поиску более правильного способа настройки. 2) Итак, после выполнения пункта 1 у Вас должно быть: свежепересобранное ядро с пропатченным модулем speedtouch, pppd с поддержкой PPPoE и PPPoATM. Вы также должны были скачать модифицированные скрипты cxload.sh и cxunload.sh. найдите на компакт диске с драйверами модема файл CnxEtU.sys, он содержит правильную firmware. На диске, поставляемом "СТРИМ'ом" он лежал по адресу: Drivers/Usb-only/Lan/CnxEtU.sys. Помимо firmware этот файл содержит программу для windows, загружающую этот файл, а нам нужна только микропрограмма для модема. Перепишите этот файл во временный каталог, например, в /tmp. Теперь получим firmware: #dd bs=1 skip=16832 count=625147 if=/tmp/CnxEtU.sys of=cxfirm4.bin файл cxfirm4.bin перепишите в каталог с распакованными исходниками cxacru в вместо firmware/cxfirm4.bin. 3) Теперь пора кое-что подправить в файле init/cxload.c (в дереве исходников cxacru). Находим в файле строки: /* Amigo AMX-CA80U-2M */ case 5: и добавляем строки: /* my parameters*/ modem_char.params[0x0a] = 0x03; modem_char.params[0x12] = 0x39; modem_char.params[0x1b] = 0x0a; modem_char.params[0x1c] = 0x01; modem_char.params[0x1d] = 0x03; modem_char.params[0x1e] = 0x0a; Результирующий файл можно взять здесь: cxload.c Теперь нужно заново выполнить команду make, установить модифицированные версии скриптов cxload.sh и cxunload.sh. 4) После проделанных манипуляций cxstart.sh должен сработать успешно.

<< Предыдущая ИНДЕКС Правка src / Печать Следующая >>

Обсуждение [ RSS ]
  • 1, Петр (??), 10:51, 07/03/2007 [ответить]  
  • +/
    Блин! Все так просто! Как я сам не догадался?
     
  • 2, ламусанонимус (?), 14:18, 07/03/2007 [ответить]  
  • +/
    А еще проще использовать вместо этой (довольно глючной) usb-шной каки что-нить Ethernet-овское и не греть моск.До кучи в эзернет модемах часто стоит линукс и есть простор для действительно стоящих пересборок ядра и ФС - можно сбагрить некоторые писючные функции мелкой железке :)
     
  • 3, nurkasim (?), 18:07, 21/11/2008 [ответить]  
  • +/
    Некоторые хакеры включается к интернету с моего имя пользователем,чтобы этого не была мне нужно найти свой МАС номер,где можно найти свой МАС код ADSL модем
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2021 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру