安装的版本是5.3.2开源版EMQX,windowd版本的,然后布局在公司内网的本地服务器上面,然后内网映射了外网。问题是只有本地的MQTTX可以连接,外部或者其他电脑的MQTTX始终连接不上,防火墙也关闭了。但是从外部PING 这个ip地址是可以ping通的
只有本机的mqttx可以连?内网的其他机器不行?
如果是这样,查看emqx的网络配置了,究竟有没有监听0.0.0.0这个地址
更改以后重新启动出现如下错误信息
EMQX_NODE__DB_ROLE [node.role]: core
EMQX_NODE__DB_BACKEND [node.db_backend]: mnesia
2024-11-08T12:19:33.912000+08:00 [error] failed_to_check_schema: emqx_conf_schema
2024-11-08T12:19:33.919000+08:00 [error] #{kind => validation_error,path => “dashboard.listeners”,reason => unknown_fields,unknown => “tcp”,unmatched => “http,https”}
具体应该怎么改呀,我就是从配置文档里面复制要改的东西换了过去就运行不通
错误提示你是 http 不是 tcp,可以贴一下您复制的配置么
不要把 1883 mqtt 的监听器放到 dashboard 里面,
dashboard 和 listeners 是同级的。
ps dashboard 是 18083
mqtt TCP 是 1883
不过如果你完全没改过 1883 的 tcp 配置,那他默认就是监听 0.0.0.0 的 1883,所以也不用改。
如果 127.0.0.1 1883 能连,那可以判定是监听成功了,你可以在不能连的机器上 telnet 看通不。
同时你图中用的是 websocket 客户端,他对应的不是 1883,而是 8083 的 ws 端口。不清楚你如何用 websocket 的客户端本地连成功的 tcp 的 1883 端口。听起来是不可能的
目前来看,监听应该是没有问题的,本地是怎么连都可以连,换到外部是怎么都连不上
那就是网络防火墙或者权限的问题,你得找你们的网络专家帮你看一下,网络问题都是千奇百怪的,猜不透
所以我这个应该是防火墙的问题,不是映射的问题对吧?
无法确定