If the admin makes a configuration mistake and configures NATGW to use the
[sahlberg/ctdb.git] / config / events.d / 11.natgw
index b226b8110b369bc32fdc59de6aa3aac779a29f96..e6e54f48dc2b1b3c988ff5ce28ca414297a44543 100644 (file)
@@ -27,6 +27,15 @@ delete_all() {
 
 case "$1" in 
     startup)
+       [ -z "$CTDB_PUBLIC_ADDRESSES" ] && {
+               CTDB_PUBLIC_ADDRESSES=/etc/ctdb/public_addresses
+       }
+       egrep "^$CTDB_NATGW_PUBLIC_IP[ \t]" $CTDB_PUBLIC_ADDRESSES >/dev/null
+       [ "$?" = "0" ] && {
+               echo ERROR: NATGW configured to use a public address. NATGW must not use a public address.
+               exit 1
+       }
+
        # do not respond to ARPs that are for ip addresses with scope 'host'
        echo 3 > /proc/sys/net/ipv4/conf/all/arp_ignore
        # do not send out arp requests from loopback addresses