16 808
правок
Brainroot (обсуждение | вклад) (→Быстрый выход в интернет: имя порта привел к актуальному) |
|||
(не показаны 23 промежуточные версии 5 участников) | |||
Строка 1: | Строка 1: | ||
{{DISPLAYTITLE: Настройка 2G/3G/NB-IOT модемов в контроллере Wiren Board, а также 4G-модемов на Debian Stretch }} | |||
== Общая информация == | == Общая информация == | ||
{{note|info|Эта статья описывает настройку 2G/3G/NB-IOT модемов в контроллерах Wiren Board 5...7, а также 4G(LTE)-модема в релизе [[wb-2207]] и старее. Для настройки 4G(LTE)-модема в релизе [[wb-2304]] и новее, используйте эту [[Modem-bullseye|инструкцию]].}} | |||
В контроллеры Wiren Board могут быть установлены 2G/3G/4G(LTE)/NB-IOT модемы — зависит от комплектации. | В контроллеры Wiren Board могут быть установлены 2G/3G/4G(LTE)/NB-IOT модемы — зависит от комплектации. | ||
Строка 90: | Строка 92: | ||
*uart: Порт <code>/dev/ttyGSM</code> является ссылкой на ''/dev/ttymxc'''X''''' (uart процессора) и создается с помощью правил udev. Конечный порт может быть разным для разных версий контроллера (подробнее можно посмотреть на [https://github.com/wirenboard/wb-configs/tree/master/configs/usr/share/wb-configs/udev нашем github]). | *uart: Порт <code>/dev/ttyGSM</code> является ссылкой на ''/dev/ttymxc'''X''''' (uart процессора) и создается с помощью правил udev. Конечный порт может быть разным для разных версий контроллера (подробнее можно посмотреть на [https://github.com/wirenboard/wb-configs/tree/master/configs/usr/share/wb-configs/udev нашем github]). | ||
*usb: Порты ''/dev/ttyACM'''X''''' (в случае 3G-модема) появляются автоматически после подачи питания на модем. Обычно, порты 3G-модема — это <code>/dev/ttyACM0-6</code>, однако '''точно''' определить, к каким портам модем подключен по USB можно, выполнив команды: <syntaxhighlight lang="bash">wb-gsm restart_if_broken; dmesg | tail</syntaxhighlight>. | *usb: Порты ''/dev/ttyUSB'''X''''' или ''/dev/ttyACM'''X''''' (в случае 3G-модема) появляются автоматически после подачи питания на модем. Обычно, порты 3G-модема — это <code>/dev/ttyACM0-6</code>, однако '''точно''' определить, к каким портам модем подключен по USB можно, выполнив команды: <syntaxhighlight lang="bash">wb-gsm restart_if_broken; dmesg | tail</syntaxhighlight>. | ||
Примерный вывод команды: | Примерный вывод команды: | ||
Строка 164: | Строка 166: | ||
|} | |} | ||
Для надежной | Для надежной отправки SMS на русском надо проверить локаль и установить LC_ALL=ru_RU.utf8 | ||
=== SMS-уведомления === | === SMS-уведомления === | ||
Строка 198: | Строка 200: | ||
# Откройте файл <code>/etc/ppp/peers/mts</code> | # Откройте файл <code>/etc/ppp/peers/mts</code> | ||
#:<syntaxhighlight lang="bash"> | #:<syntaxhighlight lang="bash"> | ||
nano /etc/ppp/peers/mts | |||
</syntaxhighlight> | </syntaxhighlight> | ||
# Закомментируйте старый порт и добавьте новый: | # Закомментируйте старый порт и добавьте новый: | ||
Строка 205: | Строка 207: | ||
/dev/ttyUSB0 | /dev/ttyUSB0 | ||
</syntaxhighlight> | </syntaxhighlight> | ||
# | #:порт можно использовать /dev/ttyUSB[0..2] в зависимости от количества и настроек сервисов работающих с модемом. | ||
# {{Wbincludes:Save nano}} | |||
Порты <code>/dev/ttyUSB0</code>,<code>/dev/ttyUSB1</code>,<code>/dev/ttyUSB2</code> появляются автоматически после включения модема командой <code>wb-gsm on</code>. | |||
=== Автоматический запуск подключения === | === Автоматический запуск подключения === | ||
Строка 215: | Строка 218: | ||
#Откройте файл <code>/etc/network/interfaces</code> для редактирования: | #Откройте файл <code>/etc/network/interfaces</code> для редактирования: | ||
#:<syntaxhighlight lang="bash"> | #:<syntaxhighlight lang="bash"> | ||
nano /etc/network/interfaces | |||
</syntaxhighlight> | </syntaxhighlight> | ||
#Раскомментируйте или отредактируйте следующие строки: | #Раскомментируйте или отредактируйте следующие строки: | ||
Строка 238: | Строка 241: | ||
Для ppp-интерфейсов существуют директории, исполняемые файлы из которых также запускаются на разных фазах установления соединения. Но, если, например, для ethernet-интерфейсов эти скрипты должны находиться в директориях <code>/etc/network/if-down.d</code>, <code>if-post-down.d</code>, <code>if-pre-up.d</code>, <code>if-up.d</code>, то соответствующие директории для ppp-интерфейсов находятся в <code>/etc/ppp/ip-down.d</code>, <code>ip-up.d</code> и т.п. Подробнее об их назначении и функционировании можно узнать в документе [http://citforum.ru/operating_systems/linux/HOWTO/PPP-HOWTO.shtml PPP HOWTO]. | Для ppp-интерфейсов существуют директории, исполняемые файлы из которых также запускаются на разных фазах установления соединения. Но, если, например, для ethernet-интерфейсов эти скрипты должны находиться в директориях <code>/etc/network/if-down.d</code>, <code>if-post-down.d</code>, <code>if-pre-up.d</code>, <code>if-up.d</code>, то соответствующие директории для ppp-интерфейсов находятся в <code>/etc/ppp/ip-down.d</code>, <code>ip-up.d</code> и т.п. Подробнее об их назначении и функционировании можно узнать в документе [http://citforum.ru/operating_systems/linux/HOWTO/PPP-HOWTO.shtml PPP HOWTO]. | ||
=== Резервирование канала связи === | === Резервирование канала связи === | ||
Строка 303: | Строка 283: | ||
=== Настройка виртуальной сетевой карты === | === Настройка виртуальной сетевой карты === | ||
==== Включение ==== | |||
После того как мы настроили модем, нужно настроить виртуальную сетевую карту: | После того как мы настроили модем, нужно настроить виртуальную сетевую карту: | ||
# Откройте файл <code>/etc/network/interfaces</code>: | # Откройте файл <code>/etc/network/interfaces</code>: | ||
Строка 313: | Строка 294: | ||
allow-hotplug usb0 | allow-hotplug usb0 | ||
iface usb0 inet dhcp | iface usb0 inet dhcp | ||
pre-up sleep 8 | |||
pre-up wb-gsm restart_if_broken | pre-up wb-gsm restart_if_broken | ||
pre-up sleep 10 | pre-up sleep 10 | ||
</syntaxhighlight> | </syntaxhighlight> | ||
#: автоматически | #: автоматически запустить модем, интерфейс и получать IP-адрес. Задержки ''pre-up sleep'' перед и после включения модема нужны для надёжного старта. | ||
# Сохраните и закройте файл <code>interfaces</code | # Сохраните и закройте файл <code>interfaces</code>. {{Wbincludes:Save nano}} | ||
# Запустите интерфейс командой: | # Запустите интерфейс командой: | ||
#:<syntaxhighlight lang="bash"> | #:<syntaxhighlight lang="bash"> | ||
Строка 324: | Строка 306: | ||
Настройка завершена, теперь модем по DHCP назначит контроллеру IP-адрес в подсети <code>192.168.0.1</code>, а после перезагрузки контроллера соединение с интернетом восстановится автоматически. | Настройка завершена, теперь модем по DHCP назначит контроллеру IP-адрес в подсети <code>192.168.0.1</code>, а после перезагрузки контроллера соединение с интернетом восстановится автоматически. | ||
При необходимости можно сменить подсеть модема, чтобы он выдавал контроллеру адрес не из подсети <code>192.168.0.ххх</code>, а, например, <code>192.168.100.ххх</code>. Для этого нужно выполнить AT-команду: | |||
<syntaxhighlight lang="bash"> | |||
AT+USBNETIP=0,100,111 | |||
</syntaxhighlight> | |||
Команда имеет следующий синтаксис: | |||
<syntaxhighlight lang="bash"> | |||
AT+USBNETIP=<mode>,<tpos>,<dhcps>,<dhcpe> | |||
</syntaxhighlight> | |||
{| border="1" class="wikitable" style="text-align:left" | |||
|- | |||
|<mode> || | |||
0 – частный IP-адрес (по умолчанию, 192.168.0.xxx и т. д.) </br> | |||
1 – Публичный IP (ip из сети). Вступает в силу после перезагрузки модема. | |||
|- | |||
|<tpos> || Третья позиция IP-адреса | |||
|- | |||
|<dhcps> || Начальное значение DHCP | |||
|- | |||
|<dhcpe> || Конечное значение DHCP | |||
|} | |||
'''Предупреждение!''' Данная функция может не работать на модемах со старыми прошивками. Узнать, что модем поддерживает эту функцию можно командой | |||
<syntaxhighlight lang="bash"> | |||
AT+USBNETIP? | |||
</syntaxhighlight> | |||
Функция поддерживается, если получен ответ | |||
<syntaxhighlight lang="bash"> | |||
+USBNETIP: mode | |||
OK | |||
</syntaxhighlight> | |||
==== Отключение ==== | |||
# Остановите интерфейс командой: | |||
#:<syntaxhighlight lang="bash"> | |||
ifdown usb0 | |||
</syntaxhighlight> | |||
# Откройте файл <code>/etc/network/interfaces</code>: | |||
#:<syntaxhighlight lang="bash"> | |||
nano /etc/network/interfaces | |||
</syntaxhighlight> | |||
# Закомментируйте или удалите строки: | |||
#:<syntaxhighlight lang="bash"> | |||
#auto usb0 | |||
#allow-hotplug usb0 | |||
#iface usb0 inet dhcp | |||
# pre-up sleep 8 | |||
# pre-up wb-gsm restart_if_broken | |||
# pre-up sleep 10 | |||
</syntaxhighlight> | |||
# Сохраните и закройте файл <code>interfaces</code>. {{Wbincludes:Save nano}} | |||
==Мультиплексирование== | ==Мультиплексирование== |