WvDial — программа дозвона, работающая по сетевому протоколу PPP: она устанавливает соединение с модемом и запускает ppp для подключения к Интернету.
Установка
Установите пакет wvdial.
Настройка
При запуске wvdial сперва загружает свою конфигурацию из /etc/wvdial.conf и ~/.wvdialrc. Если /etc/wvdial.conf отсутствует, то для его создания проще всего использовать встроенную утилиту конфигурации wvdialconf:
# wvdialconf /etc/wvdial.conf
Она помогает в создании файла конфигурации, необходимого wvdial. wvdialconf обнаруживает ваш модем и автоматически заполняет Modem, Baud, записывает правильную строку инициализации (см. опции Init) и создаёт или обновляет файл конфигурации wvdial (/etc/wvdial.conf) на основе этой информации.
Можно безопасно запускать wvdialconf, если файл конфигурации уже существует. В таком случае меняются только опции Modem, Baud, Init и Init2 в разделе [Dialer Defaults] и только в случае успешного автоматического обнаружения.
/etc/wvdial.conf и укажите номер телефона, имя пользователя и пароль от вашего интернет-аккаунта, чтобы wvdial смог корректно работать.
После заполнения информации для входа, wvdial должен заработать. Можете переходить к следующему разделу. Для провайдеров USB модемов, которые требуют определённых строк Init и комбинаций логин/пароль, mkwvconf-gitAUR может помочь в создании конфигурации wvdial (на основе пакета mobile-broadband-provider-info-gitAUR).
Обычно /etc/wvdial.conf выглядит примерно так после настройки пользователем:
[Dialer Defaults] Init1 = ATZ Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 Modem Type = Analog Modem ISDN = 0 Modem = /dev/ttyUSB2 Baud = 9600 [Dialer thenet] Phone = *99***1# Username = thenetuser Password = thenetpw ; Username = 9180****** (Если ваш провайдер не использует имя пользователя) ; Password = 9180****** (Если ваш провайдер не использует пароль) Stupid Mode = 1 Baud = 460800 Init3 = AT+CGDCONT=1,"IP","apn.thenet.net" [Dialer mypin] Init4 = AT+CPIN=1234
Использование
Существует несколько различных способов дать пользователям возможность использовать wvdial для создания ppp-соединения. Этот документ описывает три различных способа, отличающиеся друг от друга сложностью использования и степенями безопасности.
wvdial следует запускать с правами root следующей командой:
# wvdial опция
Оставьте опцию пустой, если не добавляли разделов или если /etc/wvdial.conf был создан автоматически.
# wvdial
suid
Так как обычные пользователи не могут по умолчанию использовать wvdial для дозвона, то необходимо поменять права:
# chmod u+s /usr/bin/wvdial
Вы должны увидеть следующие разрешения:
# ls -l /usr/bin/wvdial
-rwsr-xr-x 1 root root 114368 2005-12-07 19:21 /usr/bin/wvdial
Группа
Другой, немного более безопасный способ — создать группу dialout (вы можете, впрочем, назвать ее как вам угодно) и дать членам этой группы права на запуск wvdial с правами root.
Во-первых, необходимо создать группу и добавить туда пользователей:
# groupadd dialout # gpasswd -a пользователь dialout
Затем установить группу и дать разрешение на использование wvdial:
# chgrp dialout /usr/bin/wvdial # chmod u+s,o= /usr/bin/wvdial
Файл должен иметь следующие разрешения:
ls -l /usr/bin/wvdial
-rwsr-x— 1 root dialout 114368 2005-12-07 19:21 /usr/bin/wvdial
sudo
sudo предлагает, вероятно, самый безопасный способ позволить пользователям устанавливать dial-up соединения с помощью wvdial. sudo может использоваться для того, чтобы дать права для как пользователю, так и определённой группе пользователей. Другая выгода от использования sudo состоит в том, что достаточно однажды установить права, и при установке нового пакета wvdial не будет необходимости заново давать разрешения, в отличие от двух предыдущих способов.
Используйте visudo для редактирования файла /etc/sudoers:
# visudo
Чтобы предоставить разрешение конкретному пользователю использовать wvdial с правами суперпользователя, необходимо добавить следующую строку (заменив имя пользователя на нужное):
пользователь localhost = /usr/bin/wvdial
Чтобы предоставить права всем членам группы (в данном случае dialout):
%dialout localhost = /usr/bin/wvdial
Если ip addr показывает запись pppd, значит сессия готова.
Советы и хитрости
Следующие советы применимы к USB модемам.
Низкая скорость соединения
См. USB 3G Modem#Low connection speed (англ.).
Автоматическое переподключение
Если wvdial произвольно сбрасывает соединение, можете использовать следующий сценарий:
#! /bin/bash
(
while : ; do
wvdial
sleep 10
done
) &
Несколько устройств
Зачастую присутствует несколько USB устройств(например /dev/ttyUSB0, /dev/ttyUSB1, /dev/ttyUSB2). Если сомневаетесь, какое использовать, попробуйте каждое из них по очереди или используйте /dev/gsmmodem (ссылка, создаваемая usb_modeswitch), которая должна указывать на нужное. Когда файлы конфигурации настроены, интернет-соединение устанавливается запуском:
$ wvdial опции
Если необходимо, можно поместить дополнительные команды настройки в простой сценарий вроде этого:
usb_modeswitch sleep 2 modprobe usbserial vendor=0xVVVV product=0xMMMM maxSize=4096 sleep 2 wvdial thenet
где VVVV это шестнадцатеричный ID производителя из lsusb, MMMM это шестнадцатеричный ID устройства в режиме модема, а "thenet" это имя раздела в wvdial.conf, который собираетесь использовать. Опция maxSize не всегда необходима. Она упрощает работу при выключенном SIM PIN, но если вы её используете, то запустите wvdial mypin перед wvdial thenet.
Последняя команда wvdial должна запустить pppd и полученный IP адрес должен быть выведен в терминале. На этом этапе интернет-соединение должно стать активным, что легко проверить, открыв браузер или использовав ping на внешний IP адрес.