Настройка МТС-модема в Gentoo

С частыми разъездами у меня возникла необходимость в мобильном интернет-доступе. Выбор пал на МТС-конект. Пошел я в магазин и приобрел модем Huawei e171.

Осталось подключить все это дело в моей любимой ОС GNU/Linux Gentoo. Об этом процессе я и расскажу.

Все приведенные конфиги ориентированы на МТС, если у вас другой оператор соответственно ему исправите настройки.
Сначала нам потребуется настроить ядро включив эти опции:

Device Drivers ->
    USB support  --->
        <*> OHCI HCD support
        <*> USB Serial Converter support  --->
            [*] USB Generic Serial Driver
            <*> USB driver for GSM and CDMA modems
    Network device support  --->
        <*> PPP (point-to-point protocol) support
        <*> PPP support for async serial ports


Перезагружаемся с новым ядром

sys-fs/udev

Исходно наш модем определяется только как флеш-носитель (sr0/sr1).Нужно пересоберём udev с флагом extras. Для этого выполним от root’a
echo "sys-fs/udev extras" >> /etc/portage/package.use
emerge -1 sys-fs/udev


Устанавливаем пакет sys-apps/usb_modeswitch для смены режима модема с флешки на модем:
emerge sys-apps/usb_modeswitch


Теперь наш модем после присоединения определяется как Huawei USB modem:
localhost ~$ lsusb
Bus 001 Device 003: ID 12d1:1001 Huawei Technologies Co., Ltd. USB Modem


В системном логе видим следующее:
localhost ~$ dmesg
usb 1-4: new high speed USB device using ehci_hcd and address 5
usb 1-4: configuration #1 chosen from 1 choice
option 1-4:1.0: GSM modem (1-port) converter detected
usb 1-4: GSM modem (1-port) converter now attached to ttyUSB0
option 1-4:1.1: GSM modem (1-port) converter detected
usb 1-4: GSM modem (1-port) converter now attached to ttyUSB1
option 1-4:1.2: GSM modem (1-port) converter detected
usb 1-4: GSM modem (1-port) converter now attached to ttyUSB2
scsi22 : SCSI emulation for USB Mass Storage devices
usb-storage: device found at 5
usb-storage: waiting for device to settle before scanning
scsi23 : SCSI emulation for USB Mass Storage devices
usb-storage: device found at 5
usb-storage: waiting for device to settle before scanning
usb-storage: device scan complete
usb-storage: device scan complete
scsi 22:0:0:0: CD-ROM            HUAWEI   Mass Storage     2.31 PQ: 0 ANSI: 2
scsi 23:0:0:0: Direct-Access     HUAWEI   MMC Storage      2.31 PQ: 0 ANSI: 2
sr1: scsi-1 drive
sr 22:0:0:0: Attached scsi CD-ROM sr1
sr 22:0:0:0: Attached scsi generic sg4 type 5
sd 23:0:0:0: Attached scsi generic sg5 type 0
sd 23:0:0:0: [sdd] Attached SCSI removable disk

Итак, модем опознан. Идём дальше.

ppp

echo "net-dialup/ppp dhcp" >> /etc/portage/package.use
emerge net-dialup/ppp


Добавляем себя в группу uucp:
gpasswd -a your_user uucp


Устанавливаем необходимые сетевые инструменты:
emerge net-misc/dhcpcd


Настраиваем сеть:
vim /etc/conf.d/net

modules_ppp0="dhcpcd"
config_ppp0="ppp"
link_ppp0="/dev/ttyUSB0"
dhcpcd_ppp0="-t 10"
dhcp_ppp0="release nodns nontp nonis"

После правки /etc/conf.d/net создаем симлинк для ppp0
cd /etc/init.d
ln -s net.lo net.ppp0

Далее можно либо настроить интерфейс pppd для автоматического старта как службы, либо воспользоваться различными утилитами wvdial, kppp или gnome-ppp

Мой выбор пал на net-dialup/wvdial и GUI к нему net-dialup/qtwvdialer
emerge net-dialup/qtwvdialer #wvdial — потянет автоматом

Настраиваем сеть:
vim /etc/wvdial.conf

[Dialer Defaults]
Baud = 115200
ISDN = false
Idle Seconds = 300
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Modem = /dev/ttyUSB0
Modem Type = Analog Modem</p>

[Dialer MTS]
Baud = 115200
Country = Russia
Init3 = AT +CGDCONT=1,"IP","internet.mts.ru"
Modem = /dev/ttyUSB0
Modem Name = Huawei
Password = mts
Phone = "*99#"
Username = mts

Соединяемся с сетью:
wvdial mts


Либо через qtwvdialer

Если всё нормально, то появится сеть))
Настройка ppp

Можно настроить интерфейс net.ppp для автоматической работы сразу после подключения модема (конфиги написан для случая МТС, в случае Beeline логин/пароль/точка доступа: beeline/beeline/internet.beeline.ru (либо home.beeline.ru), в случае Мегафон: gdata (либо пустой логин)/gdata (либо пустой пароль)/internet):

vim /etc/conf.d/net

config_ppp0=( "ppp" )
link_ppp0="/dev/ttyUSB0"
username_ppp0='mts'
password_ppp0='mts'
pppd_ppp0=(
"noauth"
"default-asyncmap"
"defaultroute"
"usepeerdns"
"ipcp-accept-remote"
"ipcp-accept-local"
"lcp-echo-interval 22"
"lcp-echo-failure 5"
"mru 1492"
"mtu 1492"
)

chat_ppp0=(
"ABORT" "BUSY"
"ABORT" "'ERROR'"
"ABORT" "'NO ANSWER'"
"ABORT" "'NO CARRIER'"
"ABORT" "'NO DIALTONE'"
"ABORT" "'Invalid Login'"
"ABORT" "'Login incorrect'"
"TIMEOUT" "5"
"''" "ATZ"
"OK" "'at+CGDCONT=1,\"ip\",\"internet\"'"
"OK" "ATDT*99***1#"
"TIMEOUT" "60"
"CONNECT" "''"
"TIMEOUT" "5"
"'~--'" "''"
)

Возможно у вас интернет на /dev/ttyUSB0 не заработате. Тогда попробуйте на остальных /dev/ttyUSB*. Подключаем модем, стартуем pppd
/etc/init.d/net.ppp0 start


Можно добавить его в автозагрузку
rc-update add net.ppp0 default


Ну вот пожалуй и все. Удачи.
Оригинал в личном блоге

0 комментариев

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.