|
|
@ -30,6 +30,7 @@ EOF |
|
|
|
command_help "connected" "Show directly connected networks" |
|
|
|
command_help "rules" "Show active rules" |
|
|
|
command_help "status" "Show all status" |
|
|
|
command_help "internal <ipv4|ipv6>" "Show internal configuration <default: ipv4>" |
|
|
|
command_help "use <iface> <cmd>" "Run a command bound to <iface> and avoid mwan3 rules" |
|
|
|
} |
|
|
|
|
|
|
@ -113,6 +114,92 @@ status() |
|
|
|
rules |
|
|
|
} |
|
|
|
|
|
|
|
internal() |
|
|
|
{ |
|
|
|
local family="$1" |
|
|
|
local dash="-------------------------------------------------" |
|
|
|
|
|
|
|
if [ -f "/etc/openwrt_release" ]; then |
|
|
|
. /etc/openwrt_release |
|
|
|
fi |
|
|
|
|
|
|
|
local ipt ip output |
|
|
|
|
|
|
|
if [ "$family" = "ipv6" ]; then |
|
|
|
ipt="$IPT6" |
|
|
|
ip="$IP6" |
|
|
|
else |
|
|
|
ipt="$IPT4" |
|
|
|
ip="$IP4" |
|
|
|
fi |
|
|
|
|
|
|
|
echo "Software-Version" |
|
|
|
echo "$dash" |
|
|
|
|
|
|
|
if [ "$DISTRIB_RELEASE" != "" ]; then |
|
|
|
echo "OpenWrt - $DISTRIB_RELEASE" |
|
|
|
else |
|
|
|
echo "OpenWrt - unknown" |
|
|
|
fi |
|
|
|
|
|
|
|
echo "" |
|
|
|
echo "Output of \"$ip a show\"" |
|
|
|
echo "$dash" |
|
|
|
output="$($ip a show)" |
|
|
|
if [ "$output" != "" ]; then |
|
|
|
echo "$output" |
|
|
|
else |
|
|
|
echo "No data found" |
|
|
|
fi |
|
|
|
|
|
|
|
echo "" |
|
|
|
echo "Output of \"$ip route show\"" |
|
|
|
echo "$dash" |
|
|
|
output="$($ip route show)" |
|
|
|
if [ "$output" != "" ]; then |
|
|
|
echo "$output" |
|
|
|
else |
|
|
|
echo "No data found" |
|
|
|
fi |
|
|
|
|
|
|
|
echo "" |
|
|
|
echo "Output of \"$ip rule show\"" |
|
|
|
echo "$dash" |
|
|
|
output="$($ip rule show)" |
|
|
|
if [ "$output" != "" ]; then |
|
|
|
echo "$output" |
|
|
|
else |
|
|
|
echo "No data found" |
|
|
|
fi |
|
|
|
|
|
|
|
echo "" |
|
|
|
echo "Output of \"$ip route list table 1-250\"" |
|
|
|
echo "$dash" |
|
|
|
local dump=0 |
|
|
|
for i in $(seq 1 250); do |
|
|
|
output=$($ip route list table $i 2>/dev/null) |
|
|
|
if [ "$output" != "" ];then |
|
|
|
dump=1 |
|
|
|
echo "Routing table $i:" |
|
|
|
echo "$output" |
|
|
|
echo "" |
|
|
|
fi |
|
|
|
done |
|
|
|
if [ "$dump" = "0" ]; then |
|
|
|
echo "No data found" |
|
|
|
echo "" |
|
|
|
fi |
|
|
|
|
|
|
|
echo "Output of \"$ipt -L -v -n\"" |
|
|
|
echo "$dash" |
|
|
|
output="$($ipt -L -v -n)" |
|
|
|
if [ "$output" != "" ]; then |
|
|
|
echo "$output" |
|
|
|
else |
|
|
|
echo "No data found" |
|
|
|
fi |
|
|
|
} |
|
|
|
|
|
|
|
start() { |
|
|
|
/etc/init.d/mwan3 enable |
|
|
|
/etc/init.d/mwan3 start |
|
|
@ -154,7 +241,7 @@ use() { |
|
|
|
} |
|
|
|
|
|
|
|
case "$1" in |
|
|
|
ifup|ifdown|interfaces|policies|connected|rules|status|start|stop|restart|use) |
|
|
|
ifup|ifdown|interfaces|policies|connected|rules|status|start|stop|restart|use|internal) |
|
|
|
mwan3_init |
|
|
|
# shellcheck disable=SC2048 |
|
|
|
$* |
|
|
|