Хочу сообщить всем заинтересованным и ещё неосведомлённым, что ZyXEL ADSL USB модем _работает_ под Linux'ом. Причём (ясное дело) под любым дистрибутивом, в котором установлены нужные пакеты и соответствующим образом сконфигурировано ядро. Эти модемы распространяют многие провайдеры, предоставляющие ADSL-доступ. В частности - WebPlus и, кажется, РОЛ в Санкт-Петербурге. Говорят, этим же занимается точка.ру в Москве и ещё какие-то.
Как его настроить? Для этого нужно установить несколько пакетов. Во-первых, linux-atm 2.4.1:
Во-вторых, libusb 0.1.7:
В-третьих, ppp 2.4.1 (он обычно поставляется с любым нормальным дистрибутивом).
Далее, необходимо скомпилировать ядро с включёнными нужными параметрами. Параметры следующие:
Цитата:
Code maturity level options[*] Prompt for development and/or uncompletes code/drivers
Loadable modulates support[*] Enable loadable modulates support[*] Set version information on all modulates symbols[*] Kernel modulates loader
Networking options
Packet socket
Unix domain sockets[*] TCP/IP networking[*] Asynchronous Transfer Mode (ATM)
USB support
Support for USB[*] Preliminary USB device filesystem
Networking options[*] Asynchronous Transfer Mode (ATM)[*] Classical IP over ATM
[M] RFC1483/2684 Bridged protocols
Также нужно включить
Цитата:
Network Device Support
и выключить (ОБЯЗАТЕЛЬНО!!!)
Цитата:
Processor type and features
[ ] Symmetric multi-processing support
После этого необходимо скачать и установить драйвер модема:
Перед установкой его необходимо подпатчить. А именно - в файле module/xdslusb.c изменить значения констант
Код:
Код: Выделить всё
#define UDSL_DEFAULT_RCV_BUF_SIZE 32
#define UDSL_DEFAULT_SND_BUF_SIZE 32с значений по умолчанию на
Код:
Код: Выделить всё
#define UDSL_DEFAULT_RCV_BUF_SIZE 64
#define UDSL_DEFAULT_SND_BUF_SIZE 64Ещё нужно закомментировать вызов функции
Код:
Код: Выделить всё
clear_endpoints (ads_handle, 1 );в файле init/amload.c, НО ТОЛЬКО ТОТ ВЫЗОВ, КОТОРЫЙ ПРОИСХОДИТ ПЕРЕД ПОСЫЛКОЙ FIRMWARE (это строка 484 в версии драйвера от 29 октября 2003).
После этого можно установить драйвер:
Код:
Код: Выделить всё
make install.
Теперь нужно настроить ppp. Для этого нужно поместить следующие строки в /etc/ppp/options:
Код:
Код: Выделить всё
lock
defaultroute
plugin /usr/lib/pppd/plugins/pppoatm.so
1.32Разумеется, вам нужно указать путь, по которому расположен ваш модуль pppoatm.so (или pppoatm.o). У меня это где-то в /lib/modules/... Боюсь наврать. Попробуйте найти этот файл сами.
В принципе, после этого всё должно заработать. То есть, нужно вызывать amstart.sh для подключения модема и amstop.sh для отключения.
Предупреждение: я мог забыть или случайно пропустить какую-то опцию ядра или ещё какую-нибудь ерунду. Если что-то не работает, вопросы лучше задавать не здесь, а на форуме sourceforge.net, посвященном этому драйверу:

или задавать вопросы на тамошнем форуме. Всё - на