44 lines
980 B
Bash
Executable file
44 lines
980 B
Bash
Executable file
#!/bin/sh
|
|
# Based on work of Samuel Hailu, 2020-09-10
|
|
|
|
if [ $# -ne 2 ]; then
|
|
echo "$0 ip-address interface"
|
|
echo " ip-address: where to find the OpenWRT device"
|
|
echo " interface: which interface is the LTE device"
|
|
echo " Usually eth1 on VIIRB and VIWIB; eth3 on PIB"
|
|
exit 1
|
|
fi
|
|
|
|
my_ip=$1; shift
|
|
interface=$1; shift
|
|
|
|
cat <<EOF | ssh -t "root@${my_ip}"
|
|
set -x
|
|
|
|
# update the sources & allow https handling
|
|
opkg update
|
|
opkg install libustream-openssl ca-bundle ca-certificates
|
|
|
|
# Install needed kernel module
|
|
opkg install kmod-usb-net-cdc-ether usb-modeswitch kmod-usb-net-rndis
|
|
|
|
# Create interface
|
|
uci set network.LTE=interface
|
|
uci set network.LTE.ifname='${interface}'
|
|
uci set network.LTE.proto='dhcp'
|
|
|
|
# add to correct firewall zone
|
|
current_networks=\$(uci get firewall.@zone[1].network)
|
|
|
|
if ! echo \$current_networks | grep -q LTE; then
|
|
uci set firewall.@zone[1].network='\${current_networks} LTE'
|
|
fi
|
|
|
|
# commit
|
|
uci commit
|
|
|
|
# reboot
|
|
|
|
reboot
|
|
|
|
EOF
|