mirror of
https://github.com/Ysurac/openmptcprouter-feeds.git
synced 2025-02-15 03:51:51 +00:00
sync (#379)
This commit is contained in:
commit
e46d1c8cb1
5 changed files with 115 additions and 12 deletions
|
@ -25,7 +25,7 @@ _check_server() {
|
|||
local port=$2
|
||||
local k=0
|
||||
while [ "$server_ping" = false ] && [ "$k" -le "$retry" ]; do
|
||||
ret=$(curl -4 \
|
||||
ret=$(curl \
|
||||
--max-time "$OMR_TRACKER_TIMEOUT" \
|
||||
-s \
|
||||
-k \
|
||||
|
@ -66,7 +66,12 @@ _check_master() {
|
|||
set_ip() {
|
||||
local ip=$1
|
||||
ipresolve="$(resolveip -4 $ip | head -n 1)"
|
||||
[ -n "$ipresolve" ] && ip="$ipresolve"
|
||||
if [ -n "$ipresolve" ]; then
|
||||
ip="$ipresolve"
|
||||
else
|
||||
ip6resolve="$(resolveip -6 $ip | head -n 1)"
|
||||
[ -n "$ip6resolve" ] && ip="$ip6resolve"
|
||||
fi
|
||||
#_ping_server $ip
|
||||
_check_server $ip $port
|
||||
if [ "$server_ping" = true ]; then
|
||||
|
@ -191,7 +196,12 @@ _check_backup() {
|
|||
set_ip() {
|
||||
local ip=$1
|
||||
ipresolve="$(resolveip -4 $ip | head -n 1)"
|
||||
[ -z "$ipresolve" ] && ip="$ipresolve"
|
||||
if [ -n "$ipresolve" ]; then
|
||||
ip="$ipresolve"
|
||||
else
|
||||
ip6resolve="$(resolveip -6 $ip | head -n 1)"
|
||||
[ -n "$ip6resolve" ] && ip="$ip6resolve"
|
||||
fi
|
||||
#_ping_server $ip
|
||||
_check_server $ip $port
|
||||
#[ "$server_ping" = true ] && [ "$(uci -q get shadowsocks-libev.sss${count}.server | tr -d '\n')" = "$ip" ] && break
|
||||
|
|
|
@ -501,6 +501,13 @@ _get_vps_config() {
|
|||
fi
|
||||
fi
|
||||
vpsip="$(uci -q get openmptcprouter.${servername}.ip | awk '{print $1}')"
|
||||
ipresolve="$(resolveip -4 $vpsip | head -n 1)"
|
||||
if [ -n "$ipresolve" ]; then
|
||||
vpsip="$ipresolve"
|
||||
else
|
||||
ip6resolve="$(resolveip -6 $vpsip | head -n 1)"
|
||||
[ -n "$ip6resolve" ] && vpsip="$ip6resolve"
|
||||
fi
|
||||
if [ "$(uci -q get shadowsocks-libev.sss0.server)" != "127.0.0.1" ] && [ "$(uci -q get shadowsocks-libev.sss0.server)" != "$vpsip" ] && [ "$(uci -q get openmptcprouter.settings.ha)" != "1" ]; then
|
||||
config_foreach _set_ss_server server "server" $vpsip
|
||||
uci -q batch <<-EOF >/dev/null
|
||||
|
|
|
@ -85,6 +85,8 @@ fi
|
|||
lanif="eth0"
|
||||
if [ "$(grep rockchip /etc/os-release)" != "" ]; then
|
||||
lanif="eth1"
|
||||
elif [ "$(grep filogic /etc/os-release)" != "" ]; then
|
||||
lanif="eth1"
|
||||
elif [ -d /sys/class/net/lan0 -o -n "$(ip link | grep ' lan0')" ] && [ -d /sys/class/net/wan -o -n "$(ip link | grep ' wan@')" -o -n "$(ip link | grep ' wan:')" ]; then
|
||||
lanif="wan"
|
||||
elif [ -d /sys/class/net/lan1 -o -n "$(ip link | grep ' lan1')" ] && [ -d /sys/class/net/wan -o -n "$(ip link | grep ' wan@')" -o -n "$(ip link | grep ' wan:')" ]; then
|
||||
|
@ -273,6 +275,19 @@ if [ "$(uci -q show network.wan1 | grep multipath)" = "" ] && [ -z "$(uci -q get
|
|||
_setup_macvlan wan1
|
||||
_setup_macvlan wan2
|
||||
fi
|
||||
elif [ -d /sys/class/net/lan1 -o -n "$(ip link | grep ' lan1')" ] && [ -d /sys/class/net/lan2 -o -n "$(ip link | grep ' lan2')" ] && [ -d /sys/class/net/lan3 -o -n "$(ip link | grep ' lan3')" ] && [ -d /sys/class/net/lan4 -o -n "$(ip link | grep ' lan4')" ]; then
|
||||
_setup_wan_interface wan1 lan1 master
|
||||
_setup_wan_interface wan2 lan2 on
|
||||
_macaddr=$(uci -q get "network.lan1.macaddr")
|
||||
_setup_macaddr "wan1" "${_macaddr:-$(dd if=/dev/urandom bs=1024 count=1 2>/dev/null | md5sum | sed -e 's/^\(..\)\(..\)\(..\)\(..\)\(..\)\(..\).*$/\1:\2:\3:\4:\5:\6/' -e 's/^\(.\)[13579bdf]/\10/')}"
|
||||
_macaddr=$(uci -q get "network.lan2.macaddr")
|
||||
_setup_macaddr "wan2" "${_macaddr:-$(dd if=/dev/urandom bs=1024 count=1 2>/dev/null | md5sum | sed -e 's/^\(..\)\(..\)\(..\)\(..\)\(..\)\(..\).*$/\1:\2:\3:\4:\5:\6/' -e 's/^\(.\)[13579bdf]/\10/')}"
|
||||
_setup_wan_interface wan3 lan3 on
|
||||
_macaddr=$(uci -q get "network.lan3.macaddr")
|
||||
_setup_macaddr "wan3" "${_macaddr:-$(dd if=/dev/urandom bs=1024 count=1 2>/dev/null | md5sum | sed -e 's/^\(..\)\(..\)\(..\)\(..\)\(..\)\(..\).*$/\1:\2:\3:\4:\5:\6/' -e 's/^\(.\)[13579bdf]/\10/')}"
|
||||
_setup_wan_interface wan4 lan4 on
|
||||
_macaddr=$(uci -q get "network.lan4.macaddr")
|
||||
_setup_macaddr "wan4" "${_macaddr:-$(dd if=/dev/urandom bs=1024 count=1 2>/dev/null | md5sum | sed -e 's/^\(..\)\(..\)\(..\)\(..\)\(..\)\(..\).*$/\1:\2:\3:\4:\5:\6/' -e 's/^\(.\)[13579bdf]/\10/')}"
|
||||
elif [ -d /sys/class/net/wan1 ] || [ -n "$(ip link | grep ' wan1')" ]; then
|
||||
if [ -d /sys/class/net/wan2 ] || [ -n "$(ip link | grep ' wan2')" ]; then
|
||||
_setup_wan_interface wan1 wan1 master
|
||||
|
@ -412,7 +427,39 @@ if ([ "$board" = "teltonika,rutx" ] || [ "$board" = "teltonika,rutx12" ] || [ "$
|
|||
EOF
|
||||
|
||||
fi
|
||||
|
||||
if [ "$board" = "z8102ax" ]; then
|
||||
uci -q batch <<-EOF
|
||||
set network.modem1=interface
|
||||
set network.modem1.proto='modemmanager'
|
||||
set network.modem1.apn=''
|
||||
set network.modem1.auth='none'
|
||||
set network.modem1.iptype='ipv4v6'
|
||||
set network.modem1.addlatency='0'
|
||||
set network.modem1.force_link='1'
|
||||
set network.modem1.device='/sys/devices/platform/11200000.usb/usb1/1-1/1-1.1'
|
||||
set network.modem1.peerdns='0'
|
||||
set network.modem1.multipath='oncd'
|
||||
set network.modem1.defaultroute='0'
|
||||
set network.modem2=interface
|
||||
set network.modem2.proto='modemmanager'
|
||||
set network.modem2.apn=''
|
||||
set network.modem2.auth='none'
|
||||
set network.modem2.iptype='ipv4v6'
|
||||
set network.modem2.addlatency='0'
|
||||
set network.modem2.force_link='1'
|
||||
set network.modem2.device='/sys/devices/platform/11200000.usb/usb1/1-1/1-1.2'
|
||||
set network.modem2.peerdns='0'
|
||||
set network.modem2.multipath='on'
|
||||
set network.modem2.defaultroute='0'
|
||||
commit network
|
||||
add_list firewall.@zone[1].network='modem1'
|
||||
add_list firewall.@zone[1].network='modem2'
|
||||
commit firewall
|
||||
EOF
|
||||
# /sys/bus/devices/1-1.1
|
||||
fi
|
||||
# set network.lan.ipaddr='192.168.5.10'
|
||||
# set network.lan.gateway='192.168.5.1'
|
||||
|
||||
uci -q commit macvlan
|
||||
uci -q commit network
|
||||
|
|
|
@ -127,6 +127,28 @@ elif [ -n "$(ubus call system board | jsonfilter -e '@.board_name' | grep rutx)"
|
|||
EOF
|
||||
fi
|
||||
|
||||
if [ -n "$(ubus call system board | jsonfilter -e '@.board_name' | grep z8102ax)" ] && [ -z "$(uci show system | grep modem1)" ]; then
|
||||
uci -q batch <<-EOF >/dev/null
|
||||
add system led
|
||||
set system.@led[-1].name='modem1'
|
||||
set system.@led[-1].sysfs='4g:status'
|
||||
set system.@led[-1].trigger='netdev'
|
||||
set system.@led[-1].dev='wwan0'
|
||||
add_list system.@led[-1].mode='link'
|
||||
add_list system.@led[-1].mode='tx'
|
||||
add_list system.@led[-1].mode='rx'
|
||||
add system led
|
||||
set system.@led[-1].name='modem2'
|
||||
set system.@led[-1].sysfs='4g2:status'
|
||||
set system.@led[-1].trigger='netdev'
|
||||
set system.@led[-1].dev='wwan1'
|
||||
add_list system.@led[-1].mode='link'
|
||||
add_list system.@led[-1].mode='tx'
|
||||
add_list system.@led[-1].mode='rx'
|
||||
commit system
|
||||
EOF
|
||||
fi
|
||||
|
||||
#sed -i 's/^\tlogger -t/\t[ "$(uci -q get openmptcprouter.settings.debug)" = "true" ] \&\& logger -t/g' /usr/share/ModemManager/modemmanager.common
|
||||
|
||||
exit 0
|
|
@ -1,5 +1,6 @@
|
|||
#!/bin/sh /etc/rc.common
|
||||
# Copyright (C) 2013 OpenWrt.org
|
||||
# Copyright (C) 2023 Yannick Chabanois (Ycarus) for OpenMPTCProuter
|
||||
|
||||
START=58
|
||||
USE_PROCD=1
|
||||
|
@ -10,21 +11,37 @@ log() {
|
|||
|
||||
start_service()
|
||||
{
|
||||
i=459
|
||||
echo $i > /sys/class/gpio/export
|
||||
echo "out" > /sys/class/gpio/gpio${i}/direction
|
||||
echo "1" > /sys/class/gpio/gpio${i}/value
|
||||
i=460
|
||||
echo $i > /sys/class/gpio/export
|
||||
echo "out" > /sys/class/gpio/gpio${i}/direction
|
||||
echo "1" > /sys/class/gpio/gpio${i}/value
|
||||
# sim 1
|
||||
i=461
|
||||
echo $i > /sys/class/gpio/export
|
||||
echo "out" > /sys/class/gpio/gpio${i}/direction
|
||||
echo "0" > /sys/class/gpio/gpio${i}/value
|
||||
# sim 2
|
||||
i=462
|
||||
echo $i > /sys/class/gpio/export
|
||||
echo "out" > /sys/class/gpio/gpio${i}/direction
|
||||
echo "0" > /sys/class/gpio/gpio${i}/value
|
||||
|
||||
# stop modem 1
|
||||
i=459
|
||||
echo $i > /sys/class/gpio/export
|
||||
echo "out" > /sys/class/gpio/gpio${i}/direction
|
||||
echo "0" > /sys/class/gpio/gpio${i}/value
|
||||
# stop modem 2
|
||||
i=460
|
||||
echo $i > /sys/class/gpio/export
|
||||
echo "out" > /sys/class/gpio/gpio${i}/direction
|
||||
echo "0" > /sys/class/gpio/gpio${i}/value
|
||||
|
||||
sleep 1
|
||||
# run modem 1
|
||||
i=459
|
||||
echo "1" > /sys/class/gpio/gpio${i}/value
|
||||
sleep 3
|
||||
# run modem 2
|
||||
i=460
|
||||
echo "1" > /sys/class/gpio/gpio${i}/value
|
||||
|
||||
# watchdog
|
||||
/usr/lib/custom/wdg.sh &
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue