3G USB модем Huawei e150 - проблема с подключением и мистика.[РЕШЕНО]

Natrio
Если провайдер действительно выдаёт в качестве DNS 127.0.0.1 , то наверное, вам надо убрать опцию usepeerdns.
Хотя я не думаю, чтобы pppd разорвал связь по такому поводу.
Пробовал убирать - не помогает. Немного погуглил, сложилось мнение, что pppd вообще невозможно отучить делать запросы по поводу DNS к провайдеру( всмысле передавать IPCP опции 129 и 130). Понятно, что можно не пользоваться полученными DNS, но не получить помоему нельзя.
И это не днс, а wins... что забавно когда в качестве модема телефон, провайдер эти wins'ы и не пытается выдавать.
*режим шамана включен. Написанное может противоречить здравому смыслу*

1 попробуй оставить в /etc/ppp/options только lock и hide-password
2 в /etc/ppp/peers/beeline закоментируй строчку usepeerdns

3. Если соединение через pppd не является принципиально критичным можно запустить e150n в режиме rndis.
примерно это выглядит вот так

cat test_ndis.sh
#! /bin/bash
echo -ne '\r\nAT^NDISDUP=1,1,"internet.beeline.ru"\r\n' > /dev/ttyUSB0
#Вот этот ужас потребовался из-за того что у меня модем передавал системе неправильный мак адрес. Выяснилось с помощью tcpdump, Natrio и некоторого количества нецензурных слов.
ip link set usb0 down
ip link set usb0 address 00:01:02:03:04:05
ip link set usb0 up
dhcpcd usb0
Да пребудет с вами знание ip адреса
можно запустить e150n в режиме rndis
Это типа usb-сетевая карта? После описанных действий должен вырасти интерфейс usb0?
Тогда ничего не выходит.. если дать эту команду из screen, то модем долго тупит, а потом screen издыхает.. если просто отправить через эхо в /dev/ttyUSB0, то ничего не происходит. На всякий случай, что думает модем по этому поводу:
ati
Manufacturer: huawei
Model: E150
Revision: 11.609.82.02.161
IMEI: 353594041502472
+GCAP: +CGSM,+DS,+ES
OK
AT^NDISDUP?
OK
AT^NDISDUP=?
^NDISDUP:(1-16),(0-1)
OK
И еще вопрос около темы: зачем нужен usb_modeswitch? Что он делает?
можно запустить e150n в режиме rndis
На всякий случай вот что пишут в dmesg, после echo -ne '\r\nAT^NDISDUP=1,1,"internet.beeline.ru"\r\n' > /dev/ttyUSB0
naszar
И еще вопрос около темы: зачем нужен usb_modeswitch? Что он делает?
Я понимаю так, что для переключения в режим модема.
Модем, похоже был разлочен. Может и глупый совет, но можно попытаться перепрошить.
UPD... вы так все сложно настраиваете и запускаете свои модемы, что я прихожу к мысли, что опять пора садиться за учебники. Несколько лет назад для удобства объединил все файлы в один /etc/ppp/peers/3g (запуск - sudo pon 3g). Файл уже устарел, нужно бы и редактировать, но никак не соберусь.
Ошибки не исчезают с опытом - они просто умнеют
Я понимаю так, что для переключения в режим модема
Так модему нужна какя-то команда, чтобы переключится в этот режим? Или команд из моего connect-chat.beeline вполне достаточно, чтобы инициализировать соединение?
Модем 100% не разлочивался и не перепрошивался, как купился так и валялся. Я первый хозяин. Хотя есть странность:
AT^CARDLOCK?
^CARDLOCK: 2,0,0
я так понимаю на втором месте должно быть 10.
naszar
Так модему нужна какя-то команда, чтобы переключится в этот режим? Или команд из моего connect-chat.beeline вполне достаточно, чтобы инициализировать соединение?
Для этого и дается команда - AT^U2DIAG=0 (девайс в режиме "только модем") - чтобы не применять какие то другие утилиты.
naszar
AT^CARDLOCK? …......^CARDLOCK: 2,0,0
я так понимаю на втором месте должно быть 10.
AT-команды для разблокировки AT^CARDLOCK (проверка состояния блокировки и количества попыток ввода NCK кода). В ответ модем выдаст: CARDLOCK: A,B,0 ,где: A -> 1 (модем залочен), 2 (блокировка отсутствует). B -> Количество оставшихся попыток ввода кода разблокировки.
Не пробовал другие сети из покрытия?
Ошибки не исчезают с опытом - они просто умнеют
Попробуй самый простой способ - создай всего один файл /etc/ppp/peers/3g
(за содержание мне стыдно, файл некорректировался несколько лет, изъяны вижу - но, главное, он меня никогда не подводил - запуск sudo pon 3g )
connect "usr/sbin/chat -v \
TIMEOUT 35 \
ECHO ON \
ABORT '\nBUSY\r' \
ABORT '\nERROR\r' \
ABORT '\nNO ANSWER\r' \
ABORT '\nNO CARRIER\r' \
ABORT '\nNO DIALTONE\r' \
ABORT '\nRINGING\r\n\r\nRINGING\r' \
ABORT '\nUsername/pASSWORD Incorrect\r' \
'' \rAT \
OK 'AT+CGDCONT=1,\"IP\",\"internet\"' \
OK ATD*99***1# \
CONNECT \c \
"
/dev/ttyUSB0
#если у вас гарантированно есть покрытие сетей UMTS(3G), то оставляем как есть, иначе 115200
460800
persist
#maxfail 0
crtscts
noauth
#novj
#novjccomp
#nobsdcomp
#nopcomp
#noaccomp
usepeerdns
defaultroute
# При плохом качестве канала полезно уменьшить размер пакетов, иногда и более жестоко
#mtu 800
#mru 800
#Так как для выхода в интернет через Мегафон не нужно указывать логин и пароль, оставляем как есть
user ""
password ""
---------------------------
PS.....Нюансы с resolv.conf такому спецу, как ты, напоминать не стоит, но я решился
Ошибки не исчезают с опытом - они просто умнеют
vasek
Попробуй самый простой способ - создай всего один файл
Спасибо, попробовал, единственно инициализация модема не захотела работать пришлось заменить на вызов моей: connect "/usr/bin/chat -V -f /etc/ppp/peers/connect-chat.beeline" ... результат тот-же, что не удивительно ибо у меня почти те-же команды. От безысходности даже попробовал запустить wins (systemctl start winbindd).
Нюансы с resolv.conf
Собственно настройкой занимаюсь чтобы был резервный канал. Мне пока лиш-бы интерфейс поднялся. Можно конечно в модем и другую симку воткнуть, с которой работает, но столько времени потрачено... уже дело принципа.
 
Зарегистрироваться или войдите чтобы оставить сообщение.