Merge pull request #14888 from stangri/19.07-vpn-policy-routing
[19.07] vpn-policy-routing: custom user scripts improvements
This commit is contained in:
commit
4ed9be1987
3 changed files with 30 additions and 19 deletions
|
@ -5,7 +5,7 @@ include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=vpn-policy-routing
|
PKG_NAME:=vpn-policy-routing
|
||||||
PKG_VERSION:=0.3.2
|
PKG_VERSION:=0.3.2
|
||||||
PKG_RELEASE:=12
|
PKG_RELEASE:=14
|
||||||
PKG_LICENSE:=GPL-3.0-or-later
|
PKG_LICENSE:=GPL-3.0-or-later
|
||||||
PKG_MAINTAINER:=Stan Grishin <stangri@melmac.net>
|
PKG_MAINTAINER:=Stan Grishin <stangri@melmac.net>
|
||||||
|
|
||||||
|
|
|
@ -4,8 +4,16 @@
|
||||||
TARGET_IPSET='wan'
|
TARGET_IPSET='wan'
|
||||||
|
|
||||||
TARGET_URL="https://ip-ranges.amazonaws.com/ip-ranges.json"
|
TARGET_URL="https://ip-ranges.amazonaws.com/ip-ranges.json"
|
||||||
TARGET_FNAME="/var/tmp_aws_ip_ranges"
|
TARGET_FNAME="/var/vpn-policy-routing_tmp_aws_ip_ranges"
|
||||||
|
|
||||||
curl "$TARGET_URL" 2>/dev/null | grep "ip_prefix" | sed 's/^.*\"ip_prefix\": \"//; s/\",//' > "$TARGET_FNAME"
|
_ret=1
|
||||||
awk -v ipset="$TARGET_IPSET" '{print "add " ipset " " $1}' "$TARGET_FNAME" | ipset restore -!
|
|
||||||
|
if [ ! -s "$TARGET_FNAME" ]; then
|
||||||
|
curl "$TARGET_URL" 2>/dev/null | grep "ip_prefix" | sed 's/^.*\"ip_prefix\": \"//; s/\",//' > "$TARGET_FNAME"
|
||||||
|
fi
|
||||||
|
if [ -s "$TARGET_FNAME" ]; then
|
||||||
|
awk -v ipset="$TARGET_IPSET" '{print "add " ipset " " $1}' "$TARGET_FNAME" | ipset restore -! && _ret=0
|
||||||
|
fi
|
||||||
rm -f "$TARGET_FNAME"
|
rm -f "$TARGET_FNAME"
|
||||||
|
|
||||||
|
return $_ret
|
||||||
|
|
|
@ -5,28 +5,31 @@
|
||||||
|
|
||||||
TARGET_IPSET='wan'
|
TARGET_IPSET='wan'
|
||||||
TARGET_ASN='2906'
|
TARGET_ASN='2906'
|
||||||
TARGET_FNAME="/var/tmp_AS${TARGET_ASN}"
|
TARGET_FNAME="/var/vpn-policy-routing_tmp_AS${TARGET_ASN}"
|
||||||
#DB_SOURCE='ipinfo.io'
|
#DB_SOURCE='ipinfo.io'
|
||||||
#DB_SOURCE='api.hackertarget.com'
|
#DB_SOURCE='api.hackertarget.com'
|
||||||
DB_SOURCE='api.bgpview.io'
|
DB_SOURCE='api.bgpview.io'
|
||||||
|
|
||||||
_ret=1
|
_ret=1
|
||||||
if [ "$DB_SOURCE" = "ipinfo.io" ]; then
|
|
||||||
TARGET_URL="https://ipinfo.io/AS${TARGET_ASN}"
|
|
||||||
curl "$TARGET_URL" 2>/dev/null | grep -E "a href.*${TARGET_ASN}\/" | grep -v ":" | sed "s/^.*<a href=\"\/AS${TARGET_ASN}\///; s/\" >//" > "$TARGET_FNAME"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$DB_SOURCE" = "api.hackertarget.com" ]; then
|
if [ ! -s "$TARGET_FNAME" ]; then
|
||||||
TARGET_URL="https://api.hackertarget.com/aslookup/?q=AS${TARGET_ASN}"
|
if [ "$DB_SOURCE" = "ipinfo.io" ]; then
|
||||||
curl "$TARGET_URL" 2>/dev/null | sed '1d' > "$TARGET_FNAME"
|
TARGET_URL="https://ipinfo.io/AS${TARGET_ASN}"
|
||||||
fi
|
curl "$TARGET_URL" 2>/dev/null | grep -E "a href.*${TARGET_ASN}\/" | grep -v ":" | sed "s/^.*<a href=\"\/AS${TARGET_ASN}\///; s/\" >//" > "$TARGET_FNAME"
|
||||||
|
fi
|
||||||
|
|
||||||
if [ "$DB_SOURCE" = "api.bgpview.io" ]; then
|
if [ "$DB_SOURCE" = "api.hackertarget.com" ]; then
|
||||||
TARGET_URL="https://api.bgpview.io/asn/${TARGET_ASN}/prefixes"
|
TARGET_URL="https://api.hackertarget.com/aslookup/?q=AS${TARGET_ASN}"
|
||||||
if command -v jq >/dev/null 2>&1; then
|
curl "$TARGET_URL" 2>/dev/null | sed '1d' > "$TARGET_FNAME"
|
||||||
curl -s "$TARGET_URL" 2>/dev/null | jq -r '.data.ipv4_prefixes[].prefix' > "$TARGET_FNAME"
|
fi
|
||||||
else
|
|
||||||
curl -s "$TARGET_URL" 2>/dev/null | sed -ne 's/.*"ipv4_prefixes":\(.*\),"ipv6_prefixes":.*/\1\n/g; s/\}\},/&\n/g; s/"parent":{"prefix":/"parent":{"parent_prefix":/gp' | sed -ne 's/.*"prefix":"\(.\{0,20\}\)",".*/\1/g; s/\\//gp' > "$TARGET_FNAME"
|
if [ "$DB_SOURCE" = "api.bgpview.io" ]; then
|
||||||
|
TARGET_URL="https://api.bgpview.io/asn/${TARGET_ASN}/prefixes"
|
||||||
|
if command -v jq >/dev/null 2>&1; then
|
||||||
|
curl -s "$TARGET_URL" 2>/dev/null | jq -r '.data.ipv4_prefixes[].prefix' > "$TARGET_FNAME"
|
||||||
|
else
|
||||||
|
curl -s "$TARGET_URL" 2>/dev/null | sed -ne 's/.*"ipv4_prefixes":\(.*\),"ipv6_prefixes":.*/\1\n/g; s/\}\},/&\n/g; s/"parent":{"prefix":/"parent":{"parent_prefix":/gp' | sed -ne 's/.*"prefix":"\(.\{0,20\}\)",".*/\1/g; s/\\//gp' > "$TARGET_FNAME"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue