New DIST_USE_INTERFACE to restrict IP where erlang connections are listened (EJAB-1404)

This commit is contained in:
Badlop 2011-02-16 23:53:29 +01:00
parent bc0ae5a017
commit fe40a9c5f6
3 changed files with 24 additions and 0 deletions

View File

@ -4990,6 +4990,9 @@ The command line parameters:
If using \term{-sname}, specify either this option or \term{ERL\_INETRC}.
\titem{-kernel inet\_dist\_listen\_min 4200 inet\_dist\_listen\_min 4210}
Define the first and last ports that \term{epmd} (section \ref{epmd}) can listen to.
\titem{-kernel inet\_dist\_use\_interface "\{ 127,0,0,1 \}"}
Define the IP address where this Erlang node listens for other nodes
connections (see section \ref{epmd}).
\titem{-detached}
Starts the Erlang system detached from the system console.
Useful for running daemons and backgrounds processes.
@ -5402,6 +5405,12 @@ The Erlang command-line parameter used internally is, for example:
\begin{verbatim}
erl ... -kernel inet_dist_listen_min 4370 inet_dist_listen_max 4375
\end{verbatim}
It is also possible to configure in \term{ejabberdctl.cfg}
the network interface where the Erlang node will listen and accept connections.
The Erlang command-line parameter used internally is, for example:
\begin{verbatim}
erl ... -kernel inet_dist_use_interface "{127,0,0,1}"
\end{verbatim}
\makesection{cookie}{Erlang Cookie}

View File

@ -50,6 +50,17 @@
#
#FIREWALL_WINDOW=
#.
#' INET_DIST_INTERFACE: IP address where this Erlang node listens other nodes
#
# This communication is used by ejabberdctl command line tool,
# and in a cluster of several ejabberd nodes.
# Notice that the IP address must be specified in the Erlang syntax.
#
# Default: {127,0,0,1}
#
INET_DIST_INTERFACE={127,0,0,1}
#.
#' ERL_PROCESSES: Maximum number of Erlang processes
#

View File

@ -82,6 +82,10 @@ else
KERNEL_OPTS="-kernel inet_dist_listen_min ${FIREWALL_WINDOW%-*} inet_dist_listen_max ${FIREWALL_WINDOW#*-}"
fi
if [ "$INET_DIST_INTERFACE" != "" ] ; then
KERNEL_OPTS+="-kernel inet_dist_use_interface \"${INET_DIST_INTERFACE}\""
fi
ERLANG_OPTS="+K $POLL -smp $SMP +P $ERL_PROCESSES $ERL_OPTIONS"
# define additional environment variables