- Установка и настройка 3G USB модема (MTS, Beeline, Megafon, Skylink) на Ubuntu Linux 10.04, 10.10, 11.04, 11.10
- Некоторые возможные ошибки
- «Ускорение» Интернет
- Совместимость модемов и операторов
- Данные авторизации для разных операторов
- Раздача интернета с 3G модема в локальную сеть в Linux
- Подключение USB 3G-модема
- Автозагрузка
Установка и настройка 3G USB модема (MTS, Beeline, Megafon, Skylink) на Ubuntu Linux 10.04, 10.10, 11.04, 11.10
Сайт недорого! |
Контент-маркетинг |
Реклама в Интернет |
Двойная загрузка Ubuntu и Windows 8 |
Как сделать двойную загрузку Ubuntu 14.04 и Windows 8 . |
Установка программ на Андроид |
Установка новых программ на Андроид вполне проста. Есть два способа . |
Как раздать Интернет по WiFi на Windows 7 |
. инструкция как раздать WiFi с Windows 7 . |
Точка доступа WiFi на Андроид |
. инструкция как раздать WiFi с Андроида . |
Точка доступа WiFi на Windows 8.1 |
. инструкция как раздать WiFi с Windows 8.1 . |
USB модем Билайн, Мегафон, МТС |
не работает, не подключается — что делать? |
Раздача интернета по сети |
Как расшарить интернет по сети Linux и Windows. |
Точка доступа на Ubuntu 12.04 |
. Создание WiFi точки доступа на Ubuntu 12.04. |
Настроить WiFi на Windows 7 |
. в этой статье будет описан процесс настройки шаг за шагом с иллюстрациями. |
DSL, FTTx — настройка интернета МТС, Ростелеком |
Настройка pppoe соединения в Windows 7. |
Инструкция по Андроид |
. Обзор и описание графического интерфейса Андроид (Android). |
Как расшарить файлы и папки Linux |
. сетевой доступ без пароля на Linux. |
Настройка Ubuntu 14.04 |
. скорость и удобство работы Ubuntu 14.04 . |
Как выбрать SSD? |
. характеристики SSD . функции SSD. |
Как выбрать монитор? |
. характеристики монитора . функции монитора. |
Как выбрать планшет? |
. характеристики планшета . функции планшета. |
Как выбрать фотоаппарат |
. будет описано устройство фотоаппарата . перечислены виды фотоаппаратов. |
Установка Windows 7 c USB-флешки |
Используя USB Flash можно установить Windows 7. |
Установка Ubuntu 12.04 LTS . |
простая инструкция как установить Linux Ubuntu 12.04 поверх Windows 7 . |
Установка Windows XP/7 на нетбук |
Сложность установки Windows XP на нетбуки заключается в том, что эти компьютеры не имеют CD-DVD приводов . |
Загрузочная установочная USB-флешка Windows 7 или 8 |
. Как сделать установочную USB-Flash Windows 7 или 8. |
Как записывать диски . |
. Теория и практика записи CD и DVD дисков . |
Как записать MP3 . |
Запись диска с mp3 треками, который может быть прочитан в бытовых mp3 плеерах . |
Флешка CD-ROM |
как создать USB CD-ROM из флеш-диска Apacer . |
Записываемые CD и DVD диски . |
На сегодняшний день (начало 2005 года) существует три базовых типа (формата) записываемых дисков DVD . |
затем в окне апплета «Сеть» откройте вкладку «Мобильные широкополосные» и там нажмите кнопку «Добавить». После этого откроется окно мастера создания подключения:
Если в нижнем поле указана модель вашего модема, значит все в порядке и можно нажимать кнопку «Вперед» и создавать соединение.
Но если это поле пустое:
значит Ubuntu не распознала ваш модем. В этом случае первый шаг — выяснение идентификаторов вашего модема и видит ли вообще Ubuntu ваш модем на USB шине. Для этого нужно выполнить две команды и оценить результаты их вывода.
В списке USB устройств должен быть ваш модем:
В сообщениях системного журнала должны быть записи о регистрации GSM модема:
Если lsusb показывает ваш модем, а в журнале нет записей о регистрации GSM модема тогда в выводе lsusb смотрите vid и pid вашего модема и с этими значениями добавляете новую строку в файле /lib/udev/rules.d/61-option-modem-modeswitch.rules.
Примечание. В Ubuntu 12.04 этот файл называется /lib/udev/rules.d/40-usb_modeswitch.rules. В других дистрибутивах этот файл можно найти через поиск файлов по имени «*modeswitch*» или «*.rules«.
После сохранения файла выдергиваете модем и снова его втыкаете. Ждете 1-2 минуты и проверяете. В простом случае этого должно хватить и далее создаете подключение как описано выше.
В более сложных случаях нужно будет разбираться в причинах по которым не удается использовать ваш модем. Далее будут перечислены некоторые команды, которые могут помочь в определении источника проблемы:
- cat /var/log/syslog — выводит содержимое системного журнала, но удобнее ее использовать в комбинации с grep, для выборки конкретных строк. Или вообще открывать журнал в gedit.
- lsusb — см. выше
- dmesg| grep GSM — см. выше
- lsmod | grep usb — выводит список загруженных модулей ядра, относящихся к USB. В этом списке должен быть модуль usbserial, который обеспечивает работу с USB модемами
Некоторые возможные ошибки
Модем распознается, подключение создается, но при попытке установить соединение выдается запрос на пароль для доступа к модему. Возможные источники проблемы:
- Запрос PIN-кода SIM-карты. Нужно ввести PIN-код, обычно это 0000.
- Это может быть запрос NCK кода на так называемых залоченных модемах, в том случае если в модем вставлена не «родная» SIM-карта. Нужно разлочивать SIM-карту или использовать SIM-карту «родного» оператора.
- Проверьте, в свойствах соединения, правильно ли указан пароль. Иногда NetworkManager в это поле записывает мусор вместо того пароля который вы вводили.
Модем распознается, подключение создается и работает, но после обрыва соединения невозможно установить повторное подключение. Нужно просмотреть записи системного журнала относящиеся к NetworkManager и если там есть строка «GSM modem connection failed: (32) Sending command failed: device is not enabled» это проявилась ошибка, которая есть в NetworkManager. Нужно либо выполнить перезагрузку, либо вручную убить процессы NetworkManager и заново их запустить.
Все работало, но в какой-то момент перестало подключаться. Нужно просмотреть записи системного журнала относящиеся к NetworkManager и если там есть строка «GSM modem enable failed: (32) Serial command timed out» это может означать временную проблему с модемом или сетью сотового оператора. Можно отключить модем или просто переждать некоторое время.
Все работало, но скорость очень низкая. Тут может быть несколько причин.
- Во-первых модем может подключиться к сети оператора по стандарту GSM вместо 3G. Протокол по которому модем подключился к сети оператора можно узнать по индикатору модема. Как решить эту проблему описано в статье Установка и настройка 3G USB модема (МТС, Билайн, Мегафон) на Windows.
- Во-вторых внимательно ознакомьтесь с информацией о вашем тарифном плане. Если у вас так называемый «безлимитный» тарифный план, то на таких планах есть лимиты по трафику и по достижении этих лимитов скорость резко обрезается.
- В-третьих это может быть временное явление, доступ к Интернет через сотовые сети вообще работает «неровно».
Все работало, но в начале месяца перестало работать. Проверьте баланс на вашей SIM-карте.
Модем распознается системой, через апплет «Сеть» настраивается соединение, но подключиться не получается, апплет «Сеть» выдает сообщение о том, что вы отключены от сети GSM. В этом случае во-первых нужно проверить сохранен ли пароль на доступ к сети, иногда он «слетает» в такой ситуации может помочь включение опции «Сохранять для всех пользователей». Во-вторых можно «поиграть» с опциями PPP — включить или отключить сжатие данных и все методы аутентификации. И даже может помочь простое повторение попыток подключения. С первой попытки не соединяет, а со второй или третьей соединится.
Ну и не нужно забывать о том, что ваша проблема может быть никак не связана с Linux. Особенность работы модемов сотовых сетей, заключается в том, все это очень неровно. Сейчас ваш модем не подключается, а через час подключится при тех же настройках. Сейчас скорость скачивания 150 кб/сек, а через полчаса всего 5 кб/сек. В общем прежде чем «выкидывать» Linux , смотрите что показывает индикатор модема, не стесняйтесь звонить в техподдержку вашего сотового оператора.
«Ускорение» Интернет
Если вам не нравится как у вас работает Интернет тогда можете попробовать изменить некоторые сетевые настройки.
В файле /etc/sysctl.conf добавьте следующие строки:
- net.ipv4.tcp_fin_timeout = 30
- net.ipv4.tcp_keepalive_time = 1800
- net.ipv4.tcp_window_scaling = 0
- net.ipv4.tcp_sack = 0
- net.ipv4.tcp_timestamps = 0
Затем обновите настройки командой «sudo sysctl -p».
Кроме этого можно поэкспериментировать с размером MTU.
Для PPP интерфейсов. Командой «sudo ifconfig ppp0 mtu 1488» можно изменить текущий размер MTU на интерфейсе ppp0. Если вам нужно изменить размер MTU на постоянной основе тогда вписываете нужное значение параметра mtu в файле /etc/ppp/options.
Для не PPP интерфейсов, например сетевых карт, размер MTU можно изменить через апплет «Сеть».
Совместимость модемов и операторов
Меньше всего возникает проблем с модемами Huawei. Хуже дело обстоит с моделями ZTE. Из операторов без проблем на Linux работают Мегафон, МТС, СкайЛинк. Билайн в свои модемы ставит прошивку с блокировками и в результате подключиться через билайновский модем минуя билайновскую же программу дозвона становится проблематично. А программа у Билайна только под Windows, в результате нужно возиться с разблокировкой модема.
Данные авторизации для разных операторов
Мастер создания подключения подставляет почти все необходимые данные автоматически, но имя пароль нужно вводить вручную. Для разных операторов пары имя/пароль такие:
- Мегафон: можно оставить эти поля пустые.
- МТС: mts/mts.
- Билайн: beeline/beeline
- Скайлинк: mobile/internet.
Иван Сухов, 2011 г.
Если вам оказалась полезна или просто понравилась эта статья, тогда не стесняйтесь — поддержите материально автора. Это легко сделать закинув денежек на Яндекс Кошелек № 410011416229354. Или на телефон +7 918-16-26-331.
Даже небольшая сумма может помочь написанию новых статей 🙂
Или поделитесь ссылкой на эту статью со своими друзьями.
Источник
Раздача интернета с 3G модема в локальную сеть в Linux
Эта статья — продолжение статьи Беспроводная точка доступа, используя Linux. Тут я опишу, что же необходимо сделать для того, чтобы раздавать интернет с 3G-модема по уже созданной по инструкции из предыдущего топика вайфай-сети.
1) Прежде всего, научить Linux работать с модемом
2) Создать NAT для раздачи интернета
3) Запихнуть всё это дело в автозагрузку
Итак, bash, wvdial и iptables под мышку — и поехали!
Подключение USB 3G-модема
Бывает и так, что в некоторых странах есть свои провайдеры 3G-интернета, которые не предоставляют настроек для подключения, используя Linux, что, в общем-то, и понятно — ‘популярность’ как провайдера, так и Linux даёт о себе знать. Не все конфиги есть ещё на сайтах, тем более — для отдельных программ. Итак, в Латвии, где я и проживаю. есть два провайдера — LMT и Bite. Оба они предоставляют беспроводной интернет через модемы Huawei, залоченные, естественно, на них, ну да не в этом дело. Ну так вот — необходимо обеспечить интернет всюду, где есть 3G, используя модем и сервер. Что же делать?
Прежде всего, воткнуть модем в ноут. USB-модемы определяются в Linux как устройства под адресом /dev/ttyUSB*, где * — порядковый номер устройства, обычно адрес выглядит как /dev/ttyUSB0.
Ой. Что-то он не определяется. А проблема вот такая (обмусоленная уже тысячу раз): модем — это устройство типа “два в одном”. Почему? Он совмещает в одной флешке как собственно модем, так и встроенный накопитель с драйверами модема под Windows (я уже молчу про кардридер). В Linux по умолчанию включается режим диска, а не модема Для того, чтобы включить ещё и режим модема, нужно установить пакет usb-modeswitch. После этого нужно перезагрузить udev (service udev restart) и опять подключить модем, подождать секунд 10 и опять выполнить команду на вывод списка устройств модема:
Когда вывод походит на этот, всё отлично и можно двигаться дальше. У нас есть три устройства. Нам необходимо лишь одно — под номером 0, остальные 2 мы не используем — они не для наших целей. Насколько мне известно, одно из них, скорее всего, используется для отсылки СМС, а второе — для просмотра уровня сигнала сети и прочего.
Теперь — дело за программой, которая подключит нас. Я буду использовать программу wvdial, дополнительно к ней нужно установить пакет ppp, если он ещё не установлен.Многие советуют использовать программу wvdialconf для настройки подключения, но в данном случае она нам не поможет. После установки нам нужно отредактировать файл /etc/wvdial.conf. Стираем из него всё содержание, затем разбираемся в формате файла. Я предоставлю рабочие конфиги для провайдера LMT с тарифом OKarte Internets datorā и модемом Huawei E173 и Bite с неизвестным тарифом и модемом Huawei E1550.
Вкратце — файл разделён на секции. Каждая из секций отвечает за одну комбинацию модем-провайдер. Начало секции обозначается меткой [Dialer xxx], где ххх — это название метки, по которой мы будем указывать, какие именно настройки нужны для подключения. Если нам потребуются настройки LMT, мы наберём команду wvdial lmt, и будут использоваться настройки из секции [Dialer lmt] — суть понятна. Из этих настроек нам нужно обратить внимание на следующие:
— AT-команды после InitX — те команды, которые wvdial отсылает модему перед тем, как поднять подключение.
— Эта настройка, если убрать # в начале, будет посылать модему команду ввода пин-кода. Если честно, желательно её отключить — у меня эта команда по непонятным причинам не работала корректно. Легче просто подключить модем один раз к компьютеру с Windows и отключить ввод пин-кода при подключении, используя программу, поставляемую с модемом.
— Здесь прописывается адрес APN, который предоставляет провайдер. Нужно обратить внимание на две последних отделённых кавычками части. Первая — IP — указывает IP-адрес для подключения, если настройки провайдера подразумевают то, что используется IP-адрес APN. Если же используется буквенный адрес вида “internet” или “internet.lmt.lv”, в первой части нужно оставить “IP”, а во второй — прописать буквенный адрес, как это сделано в примере.
— Ну тут всё стандартно — этот номер телефона используют практически все провайдеры, и менять его в большинстве случаев не понадобится.
Имя пользователя и пароль для подключения к интернету. Если их нужно оставить пустыми, оставьте там скобочки вида < >. Если нет — просто поставьте там имя и пароль, без скобочек.
Имя устройства, которое нам нужно использовать. В 99% случаев оно будет именно таким.
Остальные параметры могут быть другими в случае других модемов, но для вышеперечисленных двух комбинаций модем-провайдер всё работает без проблем.
Ещё раз расскажу о том, как правильно запускать подключение вручную. Достаточно одной команды — wvdial xxx, где ххх — это название провайдера из конфигурационного файла (для меня это либо lmt, либо bite.) Однако — при запуске wvdial ”занимает собой” всю консоль, не давая возможности запустить что-либо ещё. Кроме того — если вы запустите wvdial в окне SSH и тут же разорвёте сессию, то и wvdial завершится. Нужно либо постоянно держать сессию открытой, либо использовать screen, который в данном случае решает сразу две проблемы довольно эффективно — что и советую.
Что в идеале нужно? Также научиться просто и легко запускать эти программы. В использовании мной описанной схемы есть свои нюансы:
1) Соединение нужно каждый раз запускать вручную.
— Достаточно немного изменить конфигурационные файлы системы, а именно — тот же /etc/network/interfaces:
Для меня этот способ не подходит — он рассчитан на то, что провайдер не меняется, но большая вероятность, что это понадобится кому-то ещё. Да и не особо-то надёжно это работает, по моему опыту, лучше настроить udev. Для себя же я не нашёл подходящих решений — для этого надо было бы определять принадлежность вставленной сим-карты тому или иному провайдеру, а решение с использованием этого становится очень сложным.
Ну а если всё же надо быть постоянно подключённым, даже если что-то глючит и модем отключается от сети? Ну тогда поможет следующий скрипт. Он смотрит, есть ли wvdial в списке процессов, а если нет, то делает ifup ppp0, что в совокупности с вышеупомянутыми настройками в interfaces должно вызывать wvdial заново:
2) При включении ноутбука, если модем был подключен во время загрузки системы, иной раз случаются зависания, которые выражаются в следующем — при попытке подключения, используя wvdial, выходят строчки вида
, и подключиться не удаётся. Лечится на один раз просто — нужно лишь вынуть и воткнуть модем, а затем запустить соединение вручную, но вы же понимаете, что при отсутствии физического доступа к компьютеру эта задача усложняется до невозможности.
— Пока что я не могу предоставить нормального решения, поскольку сам ещё не занялся этим. Предполагают, что это из-за того, что программа usb-modeswitch не отрабатывает корректно, если модем вставлен в компьютер при запуске системы. Видимо, нужно покопаться с udev или указать какие-либо особые параметры для usb-modeswitch.
3) В условиях плохого приёма соединение часто обрубается
— Всё довольно просто. Дело в том, что у портов ЮСБ есть ограничение на отдаваемый ток, при превышении которого, насколько я помню, порт отрубается. Видимо, в условиях плохого приёма сигнала сети модем пытается повысить мощность приёмника и передатчика, и случается так, что модем начинает потреблять больший ток, чем выдерживает порт — порт отключается, модем выключается, соединение отрубается насовсем. Посоветовать могу лишь, к примеру, просто-напросто взять USB-хаб с внешним питанием ну или же купить отдельный адаптер питания для модема и впаять его в кабель.
4) Возможность смены порта, по которому нужно обращаться к устройству.
Как я уже упомянул, обычно при настройке используется одно устройство — /dev/ttyUSB0. Но, как заметил freuser, есть ситуации, когда порт меняется. К примеру:
- Использование двух модемов
- Зависание одного порта, которое выражается в том, что порт остаётся в /dev, даже если модем уже отключен.
- И тому подобные казусы, при которых внезапно назначается другой порт.
При дебаге неработающего подключения нельзя забыть про такую возможность. Если, к примеру. при запуске wvdial не стартует pppd, то это повод задуматься — а работает ли сам порт и тот ли это порт? Тогда придётся поэкспериментировать с номерами в конфиге, пока модем наконец не подключится.
После того, как интернет появился на нашем сервере, остаётся лишь настроить раздачу интернета с модема по Wi-Fi сети.
Если у компьютера есть два сетевых интерфейса, это ещё не означает, что из коробки можно спокойно раздавать интернет с одного на другой. Однако — не всё так сложно, чаще всего требуется всего пара настроек. Конечно, эти настройки сложно запомнить, не вникая в суть каждой строчки, но ведь для этого есть эта статья! Я нашёл наиболее подходящий для этой ситуации и безглючный скрипт, не могу не дать ссылку на него, поскольку найденный на нём скрипт самый короткий и ясный из тех, что я встречал — остальные умудряются растянуть пару правил iptables на несколько страниц… Прежде всего, посмотрю, что в нём надо бы изменить под мои нужды:
Найденный скрипт
Задачи:
- Принимать первый аргумент командной строки в качестве названия внешнего интерфейса, проверяя подлинность имени, используя команду ifconfig;
- Добавить сохранение выбранного интерфейса в какой-нибудь файл в /etc и сделать ключ выбора последнего интерфейса, а лучше — при отсутствии имени интерфейса как аргумента.
- Запихнуть это всё красиво в автозагрузку и в $PATH.
Что же вышло в итоге?
Комментарии писал на английском — так привычнее. Если будут просьбы — могу и перевести.
Ну и не забываем обязательную часть:Окей, скрипт у нас готов. Как можно понять, вариантов вызова четыре — firewall (используется последний интерфейс), firewall наш_интерфейс, firewall info (выводит текущий интерфейс, на котором настроен NAT) или firewall help. Осталась лишь автозагрузка и $PATH.
Для того, чтобы вызывать скрипт командой firewall, не указывая местоположение, нужно запихнуть его в одну из папок, указанных в PATH. Я предпочитаю /usr/local/bin по религиозным соображениям. Полный путь к скрипту будет /usr/local/bin/firewall, а вот вызвать из консоли его всегда можно будет просто командой firewall.
Автозагрузка
А теперь — автозагрузка, с ней посложнее. Я сразу опишу создание скрипта автозагрузки, в который можно будет запихнуть всё, что угодно. Он будет стартовать вместе с системой, нооо…
Нельзя просто так взять и создать файл автозагрузки. Есть одна проблема — Debian с какого-то времени пересмотрел свои требования к файлам автозагрузки. Файл мало просто создать, его нужно ещё по-особому отформатировать:
- Первая проблема — это LSB headers. Это заголовок файла автозагрузки. Нужен он потому, что компоненты автозагрузки должны выполняться в определённом порядке, поскольку часть из них зависят друг от друга. Предположим, у вас есть два скрипта в автозагрузке — один из них должен будет монтировать сетевую папку, а второй — делать в неё резервную копию файлов. Естественно, что сначала нужно выполнить первый, а потом — второй, поскольку второй зависит от первого. Для указания таких зависимостей и используются заголовки загрузочного файла. Впрочем, будет достаточно того заголовка, который я выложу в образце файла автозагрузки.
- Вторая проблема — любой скрипт в автозагрузке при запуске системы вызывается командой /etc/init.d/script start, а при выключении компьютера — командой /etc/init.d/script stop. Нужно добавить условия для обработки этих случаев.
Я сделал просто — взял за основу скрипт из имеющихся в /etc/init.d/ — уж они-то должны быть созданы по правилам, потом изучил этот скрипт и вырезал из него всё ненужное. Осталось два места, которые нужно изменить — место для команд, которые выполняются при запуске системы, и место для команд, которые выполняются при выключении компьютера. Впрочем, сейчас всё увидите:
Опять же, дать права на исполнение:В файле автозагрузки лучше указывать полный путь к исполняемому файлу, поскольку иначе при загрузке иногда возникают проблемы вида “firewall: command not found”.
Источник