GNU Linux bash - the ultimate (LTE) modem debugging one-liner
currently wrestling with a LTE modem, that used to work under Ubuntu, but refuses to work under Debian 11.
<span style="color: #00ffff;">while true; do echo "=== show modem status:"; mmcli -m 1|grep -e model -e primary -e state -e signal; echo -e "\n=== show routing table:"; route -n; echo -e "\n=== show arp table:"; arp -an; echo -e "\n=== ping a host 3x times:"; ip -c a; ping -c3 1.1.1.1; sleep 1; clear; done</span>
# info about the system
<span style="color: #00ffff;">lsb_release -d</span>
Description: Debian GNU/Linux 11 (bullseye)
<span style="color: #00ffff;">uname -a</span>
Linux tuxedo 5.10.0-16-amd64 #1 SMP Debian 5.10.127-1 (2022-06-30) x86_64 GNU/Linux
<span style="color: #00ffff;">lsusb</span>
Bus 003 Device 005: ID 12d1:15bb Huawei Technologies Co., Ltd. ME936 LTE/HSDPA+ 4G modem
# sample output
=== show modem status:
| model: ME936
| primary port: ttyUSB0
| state: connected
| power state: on
| signal quality: 22% (recent)
=== show routing table:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 37.80.230.59 0.0.0.0 UG 700 0 0 wwx022c80139263
37.0.0.0 0.0.0.0 255.0.0.0 U 700 0 0 wwx022c80139263
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 wwx022c80139263
=== show arp table:
? (37.80.230.59) at on wwx022c80139263
=== ping a host 3x times:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: wwx022c80139263: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 02:2c:80:13:92:63 brd ff:ff:ff:ff:ff:ff
inet 37.80.230.58/8 brd 37.255.255.255 scope global noprefixroute wwx022c80139263
valid_lft forever preferred_lft forever
3: wlp52s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 36:20:ec:72:3f:66 brd ff:ff:ff:ff:ff:ff permaddr 70:9c:d1:62:10:9c
5: enxa0cec851d79b: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether a0:ce:c8:51:d7:9b brd ff:ff:ff:ff:ff:ff
PING 1.1.1.1 (1.1.1.1) 56(84) bytes of data.
From 37.80.230.58 icmp_seq=1 Destination Host Unreachable
From 37.80.230.58 icmp_seq=2 Destination Host Unreachable
From 37.80.230.58 icmp_seq=3 Destination Host Unreachable
--- 1.1.1.1 ping statistics ---
3 packets transmitted, 0 received, +3 errors, 100% packet loss, time 2046ms
#linux #gnu #gnulinux #opensource #administration #sysops #lte #modem #debugging #debug #bash
Originally posted at: https://dwaves.de/2022/07/12/gnu-linux-bash-the-ultimate-lte-modem-debugging-one-liner/