Интернет с 4G-модемом (LTE)

Добрый день, пытаюсь настроить интернет через 4G по этой инструкции GSM/GPRS — Wiren Board

Не выходит, прикладываю видео, с тем, что я делал (для просмотра лучше скачать, так как плеер яндекса сильно ухудшает качество).

На контроллере лампа GSM мигает , симкарта вставлена (предварительно активирована через телефон), антена подключена.

Сразу задам вопрос, возможно ли отправлять СМС с 4G модема ?

Добрый день.

А что именно “не выходит”? Контекст (GPRS соединение) на модеме поднимается, сеть на контроллере тоже.

Да, конечно, отправляются.

В идеале мне нужно получить следующий функционал:

  1. Если по eth0 нельзя выйти в интернет, то в интернет доступ должен осуществляться через сим карту
  2. Отправлять СМС о ключевых ситуациях.

На сколько я понял, для первого пункта нужно будет разобраться в настройках сети и тут чисто linux тема.

А что касается СМС это уже с ПО WB.

У меня не получилось задать точку входа APN interney.beeline.ru, я вводил команду как в инструкции, но ответ все был с точкой доступа от mts, дальше я не стал разбираться, так как этот этап не работает.

Крайне-крайне размытый критерий. “нельзя выйти” - это по каким признакам определять собираетесь? Отсутствие пинга от шлюза? Недоступность какого-то целевого узла?

В общем да, но на базовом уровне (диагностика) отлично решается например скриптом GSM/GPRS — Wiren Board
Ну и про резервирование - там же.

Не обязательно. Можно использовать любой способ, котрый нравится и привычней.

Так, вот тут нужно чуть подробней. Какого типа доступ хотите настроить? ppp/RNDIS?
Покажите что вводите, что возвращается?
точно ли “interney” или опечатка тут?

Я в видео показал, смотрите тут https://disk.yandex.ru/i/J-7BkT58rfPQIQ
Какую я использовал инструкцию Интернет_с_4G-модемом_(LTE)

Опечатка, вводил internet.beeline.ru. А если быть точнее то вот такую команду AT+CGDCONT=1,"IP","internet.beeline.ru", как сказано в инструкции.

После проверял командой AT+CGCONTRDP, как сказано в инструкции, и она как возвращало, что-то связанное с mts, так и возвращает, ниже в инструкции есть скрипт, я его попробовал, результат тот же.

Ещё раз попробовал пройти по инструкции и почему-то удалось установить APN internet.beeline.ru.

Вот так выглядит настройка сети:

cat /etc/network/interfaces
auto lo
iface lo inet loopback

auto usb0
allow-hotplug usb0
iface usb0 inet dhcp
pre-up wb-gsm restart_if_broken
pre-up sleep 10

auto eth0
iface eth0 inet dhcp
hostname WirenBoard
hwaddress 80:34:28:29:9f:da
pre-up wb-set-mac
gateway 192.168.1.1

allow-hotplug wlan0
iface wlan0 inet static
address 192.168.42.1
netmask 255.255.255.0

auto eth1
iface eth1 inet static
address 192.168.0.75
mtu 1500
netmask 255.255.255.0

Если выполнить ifup usb0, то появляется сетевой интерфейс по адресу 192.168.0.100.
Что дальше сделать, чтобы получить доступ к интернету не понятно.

После перезапуска контроллера нужно включать GSM, вот этой командой:

DEBUG=true wb-gsm restart_if_broken

DEBUG: guess_of_node: Got of_gsm_node: /soc/bus@2100000/usb@2184200/usb-hub@1/wbc-modem@2
DEBUG: gsm_init: Exported and toggled SIMSELECT (gpio88 → 0)
DEBUG: restart_if_broken: Modem switched off, switch it on instead of testing the connection
DEBUG: ensure_on: switching on GSM modem using POWER FET
DEBUG: toggle: toggle GSM modem state using PWRKEY
DEBUG: ensure_on: Waiting for modem to start
DEBUG: init_usb_connection: Will wait up to 30s untill usb port becomes available
DEBUG: probe_usb_ports: Probing all modem’s usb ports
DEBUG: test_connection: (port:/dev/ttyUSB0; timeout:2) => 3
DEBUG: test_connection: (port:/dev/ttyUSB1; timeout:2) => 0
DEBUG: test_connection: (port:/dev/ttyUSB2; timeout:2) => 0
DEBUG: probe_usb_ports: Answered to ‘AT’: /dev/ttyUSB1 /dev/ttyUSB2
DEBUG: link_ports: /dev/ttyUSB1 /dev/ttyUSB2 => /dev/ttyGSM0 /dev/ttyGSM1
DEBUG: link_ports: /dev/ttyGSM0 => /dev/ttyGSM
DEBUG: test_connection: (port:/dev/ttyGSM; timeout:5) => 0

После чего ifconfig показывает:

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.75 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::8234:28ff:fe29:9fda prefixlen 64 scopeid 0x20
ether 80:34:28:29:9f:da txqueuelen 1000 (Ethernet)
RX packets 13668 bytes 1198834 (1.1 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 11099 bytes 1722045 (1.6 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.0.75 netmask 255.255.255.0 broadcast 192.168.0.255
inet6 fe80::8234:28ff:fe29:50dc prefixlen 64 scopeid 0x20
ether 80:34:28:29:50:dc txqueuelen 1000 (Ethernet)
RX packets 15197 bytes 1003062 (979.5 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 14271 bytes 882419 (861.7 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1000 (Local Loopback)
RX packets 56485 bytes 4278188 (4.0 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 56485 bytes 4278188 (4.0 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

usb0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.0.100 netmask 255.255.255.0 broadcast 192.168.0.255
inet6 fe80::80b7:35ff:fe7c:740d prefixlen 64 scopeid 0x20
ether 82:b7:35:7c:74:0d txqueuelen 1000 (Ethernet)
RX packets 2 bytes 604 (604.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 44 bytes 9844 (9.6 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.42.1 netmask 255.255.255.0 broadcast 192.168.42.255
inet6 fe80::f2c8:14ff:fe47:cf66 prefixlen 64 scopeid 0x20
ether f0:c8:14:47:cf:66 txqueuelen 1000 (Ethernet)
RX packets 1473 bytes 0 (0.0 B)
RX errors 0 dropped 9 overruns 0 frame 0
TX packets 1 bytes 124 (124.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

И ping ya.ru перестает работать.

route

Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default Keenetic-8130.l 0.0.0.0 UG 0 0 0 eth0
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 usb0
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
192.168.42.0 0.0.0.0 255.255.255.0 U 0 0 0 wlan0

После всех этих манипуляций я делаю reboot, и получаю:

ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.75 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::8234:28ff:fe29:9fda prefixlen 64 scopeid 0x20
ether 80:34:28:29:9f:da txqueuelen 1000 (Ethernet)
RX packets 691 bytes 109540 (106.9 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 569 bytes 208178 (203.2 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.0.75 netmask 255.255.255.0 broadcast 192.168.0.255
inet6 fe80::8234:28ff:fe29:50dc prefixlen 64 scopeid 0x20
ether 80:34:28:29:50:dc txqueuelen 1000 (Ethernet)
RX packets 1 bytes 66 (66.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 40 bytes 6789 (6.6 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1000 (Local Loopback)
RX packets 695 bytes 218003 (212.8 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 695 bytes 218003 (212.8 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.42.1 netmask 255.255.255.0 broadcast 192.168.42.255
inet6 fe80::f2c8:14ff:fe47:cf66 prefixlen 64 scopeid 0x20
ether f0:c8:14:47:cf:66 txqueuelen 1000 (Ethernet)
RX packets 5 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1 bytes 124 (124.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default Keenetic-8130.l 0.0.0.0 UG 0 0 0 eth0
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
192.168.42.0 0.0.0.0 255.255.255.0 U 0 0 0 wlan0

ping ya.ru начал работать.

Лампа на GSM на корпусе не загорелась.

На сколько я понял, если в /etc/network/interfaces указана настройка:

auto usb0
allow-hotplug usb0
iface usb0 inet dhcp
pre-up wb-gsm restart_if_broken
pre-up sleep 10

То должно все включаться автоматически.

Помогите разобраться, кажется я все верно сделал по инструкции, и мне нахватает какого-то последнего шага), или где-то взять отладочную информацию.

На счет резервирования интернет соединения, я разберусь самостоятельно, как я понял тут скрипт нужно написать и по крону его запустить (Резервирование Интернет каналов на Linux | UNLIX).

Но мне нужно разобраться как получить интернет через GSM, и чтобы он работал при перезагрузке.

Кажется есть готовое решение для резервирования интернет соединения Настройка основного и двух резервных операторов на Linux-роутере с NetGWM / Хабр, по этому я этот вопрос снимаю, остался вопрос с выходом в интернет через GSM и его включение после перезапуска.

Так, то есть ранее при изменении настроек были какие-то ошибки?

Это сюда вставлено содержимое файла без отступов -или и в оригинале так же?

Так… Ну интерфейс же уже есть, делать больше не надо, ничего, можно сразу использовать.
Или я неверно понимаю вопрос?

Зачем включать можем, он же включается из interfaces? Или там нет действительно отступов?

шлюз ведь не меняется?

Если указана именно так, без отсутупов - то работать точно не будет.

Нет, просто не менялось, посмотрите видео там видно, что происходило.

В оригинале с отступами:

Как использовать ?
Я пишу ping ya.ru и пинг не проходит, даже IP адрес не резолвится.

Отступы есть, просто не включается.

Я для этого ничего специально не делаю.

Ещё раз проверил, выполнил перезагрузку, и лампочка на корпусе контроллера не замигала после перезагрузки.

Ну и ifconfig не показывает usb0

Если выполнить ifup, то GSM лампочка начинает мигать и ifconfig показывает 192.168.0.100

Ну а ping ya.ru перестает работать

Я немного разобрался, по usb0 не разрешаются доменные имена, но если пинговать непосредственно IP то пинг в интернет проходит:

Но это не отменяет того факта, что после перезагрузки не стартует интерфейс, и необходимо выполнять ifup.

Но означает, что модем работает и в интернет пускает. Получается нужно разобраться с сетевыми настройками.

Если у вас есть быстрый ответ как сделать так, чтобы при поднятии usb0, продолжался резолвинг DNS имен, то я был бы рад помощи.

Я перенес настройку usb0 в самый низ файла, и после перезагрузки лампочка GSM начала включаться.

Но интерфейс usb0 не создается, его можно создать только вызвав ifup usb0.

Доволно странно. Проверил. И внизу и вверху - работает.
Пустая строка в самом конце файла присутствовала?
То есть pre-up отрабатывает - а интерфейса нет? А после зпуска ip link что выводит?