From a3607d04971300e1f56532226f36df8e1032d75d Mon Sep 17 00:00:00 2001 From: "Ycarus (Yannick Chabanois)" Date: Thu, 10 Sep 2020 20:59:35 +0200 Subject: [PATCH] Check if rule already exist --- shadowsocks-libev/files/ss-rules | 12 +++++++----- v2ray-core/files/usr/bin/v2ray-rules | 12 +++++++----- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/shadowsocks-libev/files/ss-rules b/shadowsocks-libev/files/ss-rules index d0cd133a1..5cb75dd57 100755 --- a/shadowsocks-libev/files/ss-rules +++ b/shadowsocks-libev/files/ss-rules @@ -166,11 +166,13 @@ ss_rules_iptchains_init() { } ss_rules_iptchains_init_mark() { - iptables-restore -w --noflush <<-EOF - *mangle - -A PREROUTING -m set --match-set ss_rules_dst_bypass_all dst -j MARK --set-mark 0x539 - COMMIT - EOF + if [ "$(iptables -t mangle -L PREROUTING | grep ss_rules_dst_bypass_all)" = "" ]; then + iptables-restore -w --noflush <<-EOF + *mangle + -A PREROUTING -m set --match-set ss_rules_dst_bypass_all dst -j MARK --set-mark 0x539 + COMMIT + EOF + fi } ss_rules_iptchains_init_tcp() { diff --git a/v2ray-core/files/usr/bin/v2ray-rules b/v2ray-core/files/usr/bin/v2ray-rules index 3e46911f6..d903ad412 100755 --- a/v2ray-core/files/usr/bin/v2ray-rules +++ b/v2ray-core/files/usr/bin/v2ray-rules @@ -166,11 +166,13 @@ v2r_rules_iptchains_init() { } v2r_rules_iptchains_init_mark() { - iptables-restore -w --noflush <<-EOF - *mangle - -A PREROUTING -m set --match-set ss_rules_dst_bypass_all dst -j MARK --set-mark 0x539 - COMMIT - EOF + if [ "$(iptables -t mangle -L PREROUTING | grep ss_rules_dst_bypass_all)" = "" ]; then + iptables-restore -w --noflush <<-EOF + *mangle + -A PREROUTING -m set --match-set ss_rules_dst_bypass_all dst -j MARK --set-mark 0x539 + COMMIT + EOF + fi } v2r_rules_iptchains_init_tcp() {