Wvdial (Русский)
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 адрес.