Archived
34 lines
821 B
Bash
Executable File
34 lines
821 B
Bash
Executable File
#!/bin/sh
|
|
|
|
/etc/init.d/xray running 2>/dev/null
|
|
if [ $? -ne 0 ]; then
|
|
exit 0
|
|
fi
|
|
|
|
ipnet_dir="/etc/xray/ipnet"
|
|
dnsmasq_dir="/etc/dnsmasq.d"
|
|
nft_table="xray"
|
|
nft_sets=$(
|
|
nft list table ip "$nft_table" \
|
|
| grep 'set ' \
|
|
| grep '{' \
|
|
| awk '{print $2}'
|
|
)
|
|
|
|
for set in $nft_sets; do
|
|
nft list set ip $nft_table $set >/dev/null 2>&1 && nft flush set ip $nft_table $set
|
|
done
|
|
|
|
nft list table ip $nft_table >/dev/null 2>&1 && nft delete table ip $nft_table
|
|
ip rule show | grep -q "fwmark 0xa lookup 110" && ip rule del fwmark 10 table 110
|
|
ip route show table 110 | grep -q "local default" && ip route del local default dev lo table 110
|
|
|
|
for f in "$dnsmasq_dir"/xray_domain*; do
|
|
[ -f "$f" ] || continue
|
|
rm "$f"
|
|
done
|
|
|
|
find "$ipnet_dir" -type f -exec rm -f {} \;
|
|
|
|
service dnsmasq restart >/dev/null 2>&1
|