mirror of
https://github.com/Ysurac/openmptcprouter-feeds.git
synced 2025-03-09 15:40:03 +00:00
Get routes for client2clients from the VPS
This commit is contained in:
parent
1c1666e200
commit
6eddb0f19b
1 changed files with 29 additions and 0 deletions
|
@ -519,6 +519,31 @@ _set_vpn_ip() {
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_delete_client2client() {
|
||||||
|
if [ -n "$(echo $1 | grep omr_client2client)" ]; then
|
||||||
|
uci -q delete network.$1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_set_client2client() {
|
||||||
|
local c2cid=0
|
||||||
|
[ -z "$vps_config" ] && vps_config=$(_get_json "config")
|
||||||
|
[ -z "$vps_config" ] && return
|
||||||
|
c2cips="$(echo "$vps_config" | jsonfilter -q -e '@.client2client.lanips)"
|
||||||
|
vpnifname="$(uci -q get network.omrvpn.ifname)"
|
||||||
|
vpnip_local=$(ip -4 -br addr ls dev ${vpnifname} | awk -F'[ /]+' '{print $3}')
|
||||||
|
for lanip in $c2cips; do
|
||||||
|
c2cid=$((c2cid+1))
|
||||||
|
uci -q batch <<-EOF >/dev/null
|
||||||
|
set network.omr_client2client_${c2cid}=route
|
||||||
|
set network.omr_client2client_${c2cid}.interface=omrvpn
|
||||||
|
set network.omr_client2client_${c2cid}.target=$(echo $lanip | awk -F '/' '{print $1}')
|
||||||
|
set network.omr_client2client_${c2cid}.netmask=$(echo $lanip | awk -F '/' '{print $2}')
|
||||||
|
set network.omr_client2client_${c2cid}.gateway=${vpnip_local}
|
||||||
|
EOF
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
_vps_firewall_redirect_port() {
|
_vps_firewall_redirect_port() {
|
||||||
local src proto src_dport
|
local src proto src_dport
|
||||||
config_get src $1 src
|
config_get src $1 src
|
||||||
|
@ -1070,6 +1095,10 @@ _config_service() {
|
||||||
[ -n "$wanips" ] && _set_wan_ip
|
[ -n "$wanips" ] && _set_wan_ip
|
||||||
_set_lan_ip
|
_set_lan_ip
|
||||||
_set_vpn_ip
|
_set_vpn_ip
|
||||||
|
_delete_client2client
|
||||||
|
if [ "$(echo "$vps_config" | jsonfilter -q -e '@.client2client.enabled')" == "true" ]; then
|
||||||
|
_set_client2client
|
||||||
|
fi
|
||||||
[ "$error" = 0 ] && {
|
[ "$error" = 0 ] && {
|
||||||
#logger -t "OMR-VPS" "No errors"
|
#logger -t "OMR-VPS" "No errors"
|
||||||
uci -q set openmptcprouter.${servername}.lastchange=$(date "+%s")
|
uci -q set openmptcprouter.${servername}.lastchange=$(date "+%s")
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue