-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Assigning INET_DIST_INTERFACE to an IPv6 address #4189
Comments
This comment is just to say that I can reproduce it, and found no clue. This works:
And also specifying a IPv4 address (the commas ' seem important here):
However, I found no way to specify an IPv6 address. I tried:
I can reproduce this with Erlang 25.3, 26.2.3 and 27.0-rc2 I couldn't find documentation for the -kernel option in erl The inet_dist_user_interface option is documented in the kernel application: |
it needs
|
Great finding! Then I guess that ejabberdctl option was never used to setup a IPv6 address. And to support it, a patch like this would be required: diff --git a/ejabberdctl.template b/ejabberdctl.template
index f558e93b2..28c31c054 100755
--- a/ejabberdctl.template
+++ b/ejabberdctl.template
@@ -78,6 +78,9 @@ fi
if [ -n "$INET_DIST_INTERFACE" ] ; then
INET_DIST_INTERFACE2=$("$ERL" $ERLANG_OPTS -noshell -eval 'case inet:parse_address("'$INET_DIST_INTERFACE'") of {ok,IP} -> io:format("~p",[IP]); _ -> ok end.' -s erlang halt)
if [ -n "$INET_DIST_INTERFACE2" ] ; then
+ if [ $(echo "$INET_DIST_INTERFACE2" | grep -o "," | wc -l) -eq 7 ] ; then
+ INET_DIST_INTERFACE2="$INET_DIST_INTERFACE2 -proto_dist inet6_tcp"
+ fi
ERLANG_OPTS="$ERLANG_OPTS -kernel inet_dist_use_interface $INET_DIST_INTERFACE2"
fi
fi |
Environment
Bug description
In an IPv6 only environment when trying to set
INET_DIST_INTERFACE
inejabberdctl.cfg
to"::"
or::
the result is:Can this even be done?
When testing in ERL emulator:
The text was updated successfully, but these errors were encountered: