Implement iptables forward manager core
This commit is contained in:
32
lib/persist.sh
Normal file
32
lib/persist.sh
Normal file
@@ -0,0 +1,32 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
if [[ -n ${IPF_PERSIST_SH_LOADED:-} ]]; then
|
||||
return 0
|
||||
fi
|
||||
IPF_PERSIST_SH_LOADED=1
|
||||
|
||||
: "${NETFILTER_PERSISTENT_BIN:=netfilter-persistent}"
|
||||
: "${IPF_SKIP_PERSIST:=0}"
|
||||
|
||||
persist_available() {
|
||||
[[ ${IPF_SKIP_PERSIST} == 1 ]] && return 0
|
||||
command_is_available "${NETFILTER_PERSISTENT_BIN}"
|
||||
}
|
||||
|
||||
persist_save() {
|
||||
[[ ${IPF_SKIP_PERSIST} == 1 ]] && return 0
|
||||
persist_available || {
|
||||
log_err '未找到 netfilter-persistent,无法保存规则。'
|
||||
return 1
|
||||
}
|
||||
"${NETFILTER_PERSISTENT_BIN}" save >/dev/null
|
||||
}
|
||||
|
||||
persist_reload() {
|
||||
[[ ${IPF_SKIP_PERSIST} == 1 ]] && return 0
|
||||
persist_available || {
|
||||
log_err '未找到 netfilter-persistent,无法重载规则。'
|
||||
return 1
|
||||
}
|
||||
"${NETFILTER_PERSISTENT_BIN}" reload >/dev/null
|
||||
}
|
||||
Reference in New Issue
Block a user