如何配置RabbitMQ管理插件以侦听IPV4和IPV6

史蒂文·伯恩

如果未配置IP,RabbitMq管理插件似乎仅在IPV4地址上侦听。文档中显示的典型配置为:

[
{rabbitmq_management, [{listener, [{port, 12345}]}]}
].

该文档还指出:

使用ip指定mochiweb绑定到的接口(将IP地址指定为字符串或元组)。

由此,如果您指定IPv6回送地址,例如:

[
{rabbitmq_management, [{listener, [{port, 12345}, {ip, "::"}]}]}
].

它将侦听IPV6地址,但不会侦听IPV4。将IP指定为“ 0.0.0.0”(或省略设置)仅在IPV4上侦听。

该文档暗示您可以在此处使用元组,但是我无法理解什么erlang元组足以进行此设置并成功启动管理插件。

我已经尝试了以下(以及其他变体)错误消息,例如cand_not_start_listener

{ip, "::", "0.0.0.0"}
{ip, {"::", "0.0.0.0"}}

在IPV4和IPV6端点上托管此功能的魔力是什么?

史蒂文·伯恩

根据@michaelklishin响应Rabbitmq-users邮件列表中的一个线程,由于RabbitMq_Management插件正在使用HTTP Server,因此它们无法在两个不同的端点上进行侦听。因此,目前这个问题的答案是“不可能的”。

计划是在RabbitMq 3.6.0版本中更改底层的HTTP服务器,希望它将消除此限制。作为参考,此问题为#64-双IP堆栈支持,而更改Web服务器的问题为#63-从Webmachine移至Cowboy

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章