Skip to content

80 ‐ OOB ‐ GL‐XE300 Out of Band

David Bauer edited this page Jul 22, 2024 · 2 revisions

GL-XE300 OOB anleitung

Image herunterladen

For your pleasure: https://files.darmstadt.freifunk.net/s/sck5ftycJcnNPW7

Image generieren

URL: https://firmware-selector.openwrt.org/?version=23.05.2&target=ath79%2Fnand&id=glinet_gl-xe300

Customize installed packages and/or first boot script (Installierte Pakete anpassen und/oder des ersten Boot-Skripts) auswählen. Felder wie folgt füllen:

Installed Packages

base-files block-mount busybox ca-bundle dnsmasq dropbear firewall4 fstools kmod-ath9k kmod-gpio-button-hotplug kmod-nft-offload kmod-usb-net-qmi-wwan kmod-usb-serial-ch341 kmod-usb2 libc libgcc libustream-mbedtls logd mtd netifd nftables odhcp6c odhcpd-ipv6only opkg ppp ppp-mod-pppoe procd procd-seccomp procd-ujail swconfig uboot-envtools uci uclient-fetch uqmi urandom-seed urngd wpad-basic-mbedtls
kmod-usb-serial-pl2303 kmod-usb-serial-cp210x kmod-usb-serial-ftdi luci luci-proto-qmi picocom gl-puli-mcu kmod-usb-serial-option qmi-utils

Script to run on first boot (uci-defaults)

#!/bin/sh

uci set network.wwan=interface
uci set network.wwan.proto='qmi'
uci set network.wwan.device='/dev/cdc-wdm0'
uci set network.wwan.apn='internet'
uci set network.wwan.auth='none'
uci set network.wwan.pdptype='ipv4'
uci set network.wwan.mcc='262' # Force Germany
uci set network.wwan.mnc='1'   # Force Telekom, this avoids a open bug regarding client steering

uci delete network.wan
uci delete network.wan6
uci delete network.lan

uci set network.wan=interface
uci set network.wan.device='eth1'
uci set network.wan.proto='dhcp'
uci set network.wan.peerdns='0'
uci set network.wan.defaultroute='0'

uci set network.lan=interface
uci set network.lan.device='br-lan'
uci set network.lan.proto='dhcp'
uci set network.lan.peerdns='0'
uci set network.lan.defaultroute='0'

# Disable NTP
uci set system.ntp.enabled='0'

# Delete LAN and WAN zones
uci delete firewall.@zone[0]
uci delete firewall.@zone[0]

# Add Firewall Zones - Reject wired ethernet
uci set firewall.wired_zone=zone
uci set firewall.wired_zone.name='wired'
uci add_list firewall.wired_zone.network='wan'
uci add_list firewall.wired_zone.network='lan'
uci set firewall.wired_zone.input='REJECT'
uci set firewall.wired_zone.output='ACCEPT'
uci set firewall.wired_zone.forward='REJECT'

uci set firewall.wwan_zone=zone
uci set firewall.wwan_zone.name='wwan'
uci add_list firewall.wwan_zone.network='wwan'
uci set firewall.wwan_zone.input='ACCEPT'
uci set firewall.wwan_zone.output='ACCEPT'
uci set firewall.wwan_zone.forward='REJECT'

# Add rule for wired to accept DHCP
uci set firewall.rule_dhcp=rule
uci set firewall.rule_dhcp.name='allow-dhcp-wired'
uci set firewall.rule_dhcp.src='wired'
uci set firewall.rule_dhcp.proto='udp'
uci set firewall.rule_dhcp.dest_port='68'
uci set firewall.rule_dhcp.target='ACCEPT'
uci set firewall.rule_dhcp.family='ipv4'

uci commit

echo "0 */24 * * *	/sbin/reboot" > /etc/crontabs/root

Installationsanleitung

1. Press and hold reset and power buttons simultaneously
2. Wait for the LAN led to blink 5 times (Exactly 5!)
3. Release reset and power buttons
4. The rescue page is accessible via http://192.168.1.1
5. Select the OpenWrt factory image and start upgrade
6. Wait for the router to flash new firmware and reboot

Verbindung zum OBB aufbauen

SSH Host config

Zur Nutzung muss auf dem lokalen Rechner die Datei .ssh/config folgender Eintrag gemact werden:

Host ffda-oob-10.170.74.116
     User root
     Hostname 10.170.74.116
     ProxyJump ffda-oob

Host ffda-oob
     User root
     Hostname oob.ffda.io
     IdentityFile ~/.ssh/id_ed25519_ffda

ssh Verbindung aufbauen

ssh -J [email protected] [IP des OBB Gerätes]

Vom OBB Gerät zum angeschlossenen Switch/anderes Gerät über Serielles Kabel

Verwenden der OOB serial auf dem Gerät

picocom -b 115200 /dev/ttyUSB1
bzw. 9600 für Switches
Über dmesg lässt sich der korrekte tty Port ermitteln 

Frequent issues

Modem can not connect

Modem might not be able to connect if GL.iNet Firmware was used prior.

Open ´/dev/ttyUSB3´ with picocom and execute the nvrestore commands

AT+QCFG=“nvrestore”,0

if this doesn't work, try

AT+QPRTPARA=3

Source: https://forums.quectel.com/t/bg96-at-command-to-reset-non-volatile-settings-to-default/3358

Known issues

Carrier muss manuell auf DTAG gesetzt werden. Workaround für 1nce steering. Siehe 1nce FAQ:

Sind die 1NCE SIM-Karten gesteert?
Auf der 1NCE Simkarte ist nur noch ein steering für Deutschland auf Deutsche Telekom hinterlegt.Weltweit wird ansonsten kein weiterer Operator gesteert.

OpenWrt geht bei einer Network Registration denial automatisch in einen failed state ohne retry.

Lösung: Jemand muss einen retry option dafür bauen, dass er retried.

Errata

Sterben der PDP session recoverd nicht

Falls PDP session stirbt (SGSN terminiert, Netz geht verloren) bekommt netifd das nicht mit.

Lösung: Aktiv den data-state des modems pollen --> exit 1 lässt netifd das interface restarten

Endlose connection loop

sleep 1 nach attach request reicht nicht --> Subsequenter poll liest alten state, script versucht PDP session aufzubauen während das Gerät sucht

Lösung: sleep auf 3 erhöhen. Unklar ob bessere Lösung vorhanden.