summaryrefslogtreecommitdiffstats
path: root/core/modules/dnbd3-proxy-mode
diff options
context:
space:
mode:
authorSimon Rettberg2017-10-24 17:23:23 +0200
committerSimon Rettberg2017-10-24 17:23:23 +0200
commitcb59b0586dd86fdc5a00e405fbaa76fb1eaf62c6 (patch)
tree696068f5e913f33827a46f8c87156c01baf4ceb7 /core/modules/dnbd3-proxy-mode
parent[dnbd3-proxy] spawn getty pls (diff)
downloadmltk-cb59b0586dd86fdc5a00e405fbaa76fb1eaf62c6.tar.gz
mltk-cb59b0586dd86fdc5a00e405fbaa76fb1eaf62c6.tar.xz
mltk-cb59b0586dd86fdc5a00e405fbaa76fb1eaf62c6.zip
[dnbd3-proxy-mode] Exclude own ip addresses from alt-servers
Diffstat (limited to 'core/modules/dnbd3-proxy-mode')
-rwxr-xr-xcore/modules/dnbd3-proxy-mode/data/opt/openslx/scripts/systemd-setup_dnbd3_proxy9
1 files changed, 7 insertions, 2 deletions
diff --git a/core/modules/dnbd3-proxy-mode/data/opt/openslx/scripts/systemd-setup_dnbd3_proxy b/core/modules/dnbd3-proxy-mode/data/opt/openslx/scripts/systemd-setup_dnbd3_proxy
index 2881e0f3..58a23c33 100755
--- a/core/modules/dnbd3-proxy-mode/data/opt/openslx/scripts/systemd-setup_dnbd3_proxy
+++ b/core/modules/dnbd3-proxy-mode/data/opt/openslx/scripts/systemd-setup_dnbd3_proxy
@@ -67,9 +67,11 @@ uplinkTimeout=1250
clientTimeout=15000
[logging]
-consoleMask=ERROR WARNING
+consoleMask=ERROR WARNING MINOR INFO
EOF
+MY_IPS=$(ip a | grep '^\s*inet\s' | awk '{print $2}')
+
# helper to echo given list of IPs to ${DNBD3_CONF_DIR}/alt-servers
# optionally takes a single char prefix as first param and
# adds it to the IP (for private dnbd3 servers)
@@ -78,6 +80,9 @@ add_alt_server() {
local PRE=
[ "x$1" = "x-" ] && PRE='-' && shift
for ALT in "$@"; do
+ for ip in $MY_IPS; do
+ [ "x$ALT" = "x${ip%/*}" ] && return 0 # Ignore self
+ done
echo "${PRE}${ALT}" >> "${DNBD3_CONF_DIR}/alt-servers"
[ "x${ALT}" = "x${SLX_PXE_SERVER_IP}" ] && FOUND_SAT="oui"
done
@@ -93,7 +98,7 @@ add_alt_server '-' ${SLX_DNBD3_PRIVATE}
chmod a+Xr "${DNBD3_CONF_DIR}"
# create rpc.acl to allow the satellite only
-rm -f "${DNBD3_CONF_DIR}/rpc.acl"
+rm -f "${DNBD3_CONF_DIR}/rpc.acl"
for SRV in ${SLX_KCL_SERVERS}; do
echo "$SRV STATS CLIENT_LIST IMAGE_LIST" >> "${DNBD3_CONF_DIR}/rpc.acl"
done