Установка ADSL USB модема на примере Comtrend CT-351

Материал из FedoraMD.org Wiki
Перейти к навигации Перейти к поиску

ВНИМАНИЕ: команды предваряемые символом '#' должны выполняться с правами root (Суперпользователь). Открыв терминал (или находясь в консоли) с правами обычного пользователя, введите команду $ su - для повышения уровня привелегий. Символы '$' и '#' в начале строки не являются частью команды и не должны вводится. Прочие команды могут выполняться с правами обыкновенного пользователя.


Документация

По этим ссылкам вы найдете описание других методов подключения:

Подготовка

Дистрибутив Fedora Core 6 стандартно включает в себя драйверы USB ATM чипов:

  • cxacru - Conexant Access``Runner ADSL USB modem driver
  • speedtch - Alcatel Speed``Touch USB driver
  • ueagle-atm - ADI 930/Eagle USB ADSL Modem driver

Однако USB модемы, как правило устройства "без памяти" и требуют загрузку микрокода при инициализации. Поэтому нам потребуется прошивка.

Поиск прошивки

Имеем на руках: ADSL USB модем Comtrend CT-351. Нагло включаем его в USB порт и смотрим /var/log/messages:

Mar  7 09:15:19 chomper kernel: usb 1-3: new full speed USB device using ohci_hcd and address 4
Mar  7 09:15:19 chomper kernel: usb 1-3: configuration #1 chosen from 1 choice
Mar  7 09:15:20 chomper kernel: NET: Registered protocol family 8
Mar  7 09:15:20 chomper kernel: NET: Registered protocol family 20
Mar  7 09:15:20 chomper kernel: [ueagle-atm] driver ueagle 1.4 loaded
Mar  7 09:15:20 chomper kernel: usb 1-3: [ueagle-atm] ADSL device founded vid (0X1110) pid (0X9022) : Eagle II pots
Mar  7 09:15:20 chomper kernel: usb 1-3: reset full speed USB device using ohci_hcd and address 4
Mar  7 09:15:20 chomper kernel: usb 1-3: [ueagle-atm] pre-firmware device, uploading firmware
Mar  7 09:15:20 chomper kernel: usb 1-3: [ueagle-atm] loading firmware ueagle-atm/eagleII.fw
Mar  7 09:15:20 chomper kernel: usbcore: registered new interface driver ueagle-atm
Mar  7 09:15:20 chomper kernel: usb 1-3: [UEAGLE-ATM] firmware is not available
Mar  7 09:15:20 chomper firmware_helper[4139]: Loading of /lib/firmware/ueagle-atm/eagleII.fw for usb driver failed: No such file or directory

Видно что драйвер заявил о отсутствии firmware-файла ueagle-atm/eagleII.fw.

Поэтому ищем знакомых с Интернетом. Используем google для нахождения нужных файлов. Поисковик дал нам ссылку на http://eagle-usb.org/. Далее находим и сами прошивки, скачиваем их:

$ wget http://eagle-usb.org/ueagle-atm/non-free/ueagle-data-1.1.tar.gz

Установка

Распаковываем архив в /lib/firmware/ueagle-atm

# mkdir /lib/firmware/ueagle-atm
# tar -C /lib/firmware/ueagle-atm -xf ueagle-data-1.1.tar.gz

Устанавливаем средства поддержки ATM

# yum install linux-atm

если вы не озаботились созданием локального репозитория, тогда возьмем нужные пакеты с установочного диска:

# cd /media/Fedora*
# rpm -ivh Fedora/RPMS/linux-atm-2*rpm Fedora/RPMS/linux-atm-libs-2*rpm

перезагружаем драйвер, чтобы он смог подхватить прошивку:

# rmmod ueagle-atm
# modprobe ueagle-atm

Можно и просто выдернуть USB кабель, и вернуть его на место.

Опять смотрим в /var/log/messages:

Mar  7 09:37:10 chomper kernel: usb 1-3: [ueagle-atm] pre-firmware device, uploading firmware
Mar  7 09:37:10 chomper kernel: usb 1-3: [ueagle-atm] loading firmware ueagle-atm/eagleII.fw
Mar  7 09:37:12 chomper kernel: usb 1-3: [ueagle-atm] firmware uploaded

Отлично, прошивка загрузилась.

Внимание: для ueagle-atm возможен конфликт с некоторыми USB-контроллерами. В лог-файле можно заметить строку:

ATM dev 0: usbatm_submit_urb: urb 0xffff81001c22bc80 submission failed (-28)!

Решается добавлением опции use_iso:

# echo "options ueagle-atm use_iso=0" >>/etc/modprobe.conf
# depmod -a
# rmmod ueagle_atm
# modprobe ueagle_atm

Предположим что провайдера мы получили ряд параметров соединения: PVC VCI, PVC VPI, тип инкапсуляции, IP-адрес наш, маска под-сети, шлюз и адреса DNS серверов.

Проверим эти параметры вручную:

# br2684ctl -c 0 -b -e 0 -a 0.35

эта команда создаст сетевое устройство nas0 (-c 0), и установит его параметры: VPI=0, VCI=35 (-a 0.35) Инкапсуляция - LLC (-e 0). Для VC mux инкапсуляции передаем параметр -e 1

"Поднимаем" сетевой интерфейс:

# ifconfig nas0 <ip> <netmask> <ip-mask> up

устанавливаем маршрут по умолчанию:

# route add -net 0.0.0.0 netmask 0.0.0.0 gw <gateway-ip> dev nas0

добавляем адрес DNS сервера в файл конфигурации:

# echo nameserver <dns-ip> >>/etc/resolv.conf

Вот и все - пинг-уем провайдера, запускаем браузер, и пр. В случае проблем не лишне посмотреть в лог-файл.

Скрипты ининциализации

Для большего удобства, возьмем скрипты управления ATM соединением от драйвера модема ACORP:

$ cd /tmp
$ wget http://www.beta.acorp.ru/files/center/adsl/usb/driver/Acorp_Sprinter@ADSL_USB-1.0.tar.tar
$ tar xf Acorp_Sprinter@ADSL_USB-1.0.tar.tar
# cd Acorp_Sprinter@ADSL_USB-1.0/RPMS/ && rpm -ivh network-scripts-br2684-0.1-1.i386.rpm

и пропишем все нужные параметры в стандартный файл конфигурации сети Red``Hat/Fedora:

# cat <<EOF >/etc/sysconfig/network-scripts/ifcfg-nas0
> USERCTL=yes
> BOOTPROTO=static
> DEVICE=nas0
> ONBOOT=yes
> VPI=0
> VCI=35
> ENCAPSULATION=LLC
> NETMASK=255.255.255.0
> GATEWAY=87.248.199.254
> IPADDR=87.248.199.99
> EOF

Теперь нет нужды выполнять br2684ctl, route, ifconfig вручную. Используем команды ifup nas0 для активации интерфейса, и ifdown nas0 для де-активации. Параметр ONBOOT в файле ifcfg-nas0 определяет будет ли соединение устанавливаться автоматически при запуске системы.

Полезное

Удобную утилиту для диагностики соединения можно найти здесь (выбираем stats, потом первый сверху download). Сохраняем, и даем право на исполнение chmod +x stats.

$ chmod +x stats
$ ./stats
$ ueagle-atm status display
-------------------------------------------------------------
Vendor ID : 0x1110     Product ID : 0x9021   Rev: 0x5002(pots)
USB Bus : 001    USB Device : 005        Dbg : 0
VID-CPE           28     Firmware version 44e2ea17

Tx Rate         1024 Kps Rx Rate         8128 Kps
Tx Atten          20 dB  Rx Atten          31 dB
Tx Margin          6 dB  Rx Margin          8 dB
Tx Blocks   15172686     Rx Blocks   15178068
Tx FEC             0     Rx FEC             0
Tx Error        4140     Rx Error        6348
Delin           GOOD     Flags     0000008004
Modem is operational