Попытка запустить HSDPA USB-модем имени Huawei на FreeBSD потерпела сокрушительный провал.
То есть, сам модем обнаруживается, но – как USB Mass Storage Device. У него сбоку есть слот для microSD, вот он и обнаруживается.
А чтобы переключить эту поганую китайскую железяку в режим модема, надо засобачить в неё волшебную последовательность байтиков. Это умеет делать программа usb_modeswitch. Она вообще под линукс писалась, но под FreeBSD тоже работает через userspace’овую libusb. Но – сюрприз! – работает только в отсутствие драйвера umass. Который а) в generic ядро прибит гвоздиками и б) если его оттуда выколупать, то перестанет работать внешний USB-диск, с которого эта FreeBSD и грузится.
Не ожидал я такой заподлянки от FreeBSD. А в Убунте этот модем подцепился вообще без всяких телодвижений, причём одновременно в виде UMS и двух USB-serial-девайсов. Второй девайс оказался собственно модемом, а зачем первый – не знаю, наверное, для сбора статистики, есть у этих модемов такая фича.
Вот такая засада..
Оригинал этой записи в личном блоге.
Любые материалы из этого блога запрещается использовать на сайте livejournal.ru в любой форме и любом объёме.
no subject
> kavkazcenter.com
Server: yota.ru
Address: 94.25.128.74
------------
SendRequest(), len 34
HEADER:
opcode = QUERY, id = 2, rcode = NOERROR
header flags: query, want recursion
questions = 1, answers = 0, authority records = 0, additional = 0
QUESTIONS:
kavkazcenter.com, type = A, class = IN
------------
------------
Got answer (90 bytes):
HEADER:
opcode = QUERY, id = 2, rcode = NOERROR
header flags: response, auth. answer, want recursion, recursion avail.
questions = 1, answers = 1, authority records = 1, additional = 1
QUESTIONS:
kavkazcenter.com, type = A, class = IN
ANSWERS:
-> kavkazcenter.com
type = A, class = IN, dlen = 4
internet address = 127.0.0.1
ttl = 86400 (1 day)
AUTHORITY RECORDS:
-> kavkazcenter.com
type = NS, class = IN, dlen = 12
nameserver = 127.0.0.1.kavkazcenter.com
ttl = 86400 (1 day)
ADDITIONAL RECORDS:
-> 127.0.0.1.kavkazcenter.com
type = A, class = IN, dlen = 4
internet address = 127.0.0.1
ttl = 86400 (1 day)
------------
Name: kavkazcenter.com
Address: 127.0.0.1
no subject