Packages/luci-app-syncdial/root/etc/hotplug.d/iface/01-dialcheck
2024-12-04 10:15:35 +08:00

37 lines
1.3 KiB
Bash
Executable File

#!/bin/sh
[ "$ACTION" = "ifdown" ] && pppconnectcheck &
wanselect=$(uci get syncdial.config.wanselect)
[ "$(uci get syncdial.config.dial_type)" = "2" ] && {
wanselect2=$(uci get syncdial.config.wanselect2)
}
[ "$(uci get syncdial.config.enabled)" = "1" ] && \
[ "$(uci get syncdial.config.old_frame)" = "1" ] && \
[ "$DEVICE" = "$(uci get network.$wanselect.device)" ] && \
[ "$ACTION" = "ifup" ] && {
device=$(uci get network.$wanselect.device)
wannum=$(uci get syncdial.config.wannum)
for i in $(seq 1 $wannum)
do
[ -d /sys/class/net/macvlan$i ] || {
ip link add link $device name macvlan$i type macvlan
ifconfig macvlan$i hw ether $(echo $(cat /sys/class/net/$device/address|awk -F ":" '{print $1":"$2":"$3":"$4":"$5":" }')$(echo "" | awk -F ":" '{printf("%X\n", 16+i);}' i=$i))
ifconfig macvlan$i up
}
done
[ "$(uci get syncdial.config.dial_type)" = "2" ] && {
device2=$(uci get network.$wanselect2.device)
wannum2=$(uci get syncdial.config.wannum2)
for i in $(seq 1 $wannum2)
do
[ -d /sys/class/net/macvlan$(($wannum+$i)) ] || {
ip link add link $device2 name macvlan$(($wannum+$i)) type macvlan
ifconfig macvlan$(($wannum+$i)) hw ether $(echo $(cat /sys/class/net/$device2/address|awk -F ":" '{print $1":"$2":"$3":"$4":"$5":" }')$(echo "" | awk -F ":" '{printf("%X\n", 16+i);}' i=$i))
ifconfig macvlan$(($wannum+$i)) up
}
done
}
}