【问题标题】:Error Connecting To Remote Host In Mirth在 Mirth 中连接到远程主机时出错
【发布时间】:2014-08-01 03:31:19
【问题描述】:

我需要在实验室机器和服务器之间建立连接。 实验室机器可以发送 HL7 消息以获得测试结果。

我决定使用 mirthconnect 来处理消息,所以我创建了一个频道。

通道源连接器被配置为“TCP LISTENER”

侦听器设置使用“特定接口”并输入机器的 IP 地址。

响应设置配置为“在源转换器后自动生成”

传输模式是使用“服务器”模式的“MLLP”。

接收超时为 0 毫秒,并选中“保持连接打开”单选按钮。

我还指定了一个端口号“2468”来监听,当我这样做时它显示为启用

“netstat -at”命令。

在网络上的发送计算机上,我再次创建了一个通道,并将第一台机器的 IP 地址与目标上的接收通道一起输入。我还输入了在“接收”计算机上创建通道时使用的端口号。

但是,当我点击“测试连接”按钮时,我得到了一个

  unable to connect to host error

我也试过在部署频道后发送消息,消息没有发送。 产生的错误如下图:

         TCP Sender error
   ERROR MESSAGE: Connection refused: connect
  java.net.ConnectException: Connection refused: connect
at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at com.mirth.connect.connectors.tcp.SocketUtil.connectSocket(SocketUtil.java:62)
at com.mirth.connect.connectors.tcp.TcpDispatcher.send(TcpDispatcher.java:213)
at com.mirth.connect.donkey.server.channel.DestinationConnector.handleSend(DestinationConnector.java:599)
at com.mirth.connect.donkey.server.channel.DestinationConnector.process(DestinationConnector.java:336)
at com.mirth.connect.donkey.server.channel.DestinationChain.call(DestinationChain.java:224)
at com.mirth.connect.donkey.server.channel.Channel.process(Channel.java:1428)
at com.mirth.connect.donkey.server.channel.Channel.dispatchRawMessage(Channel.java:956)
at com.mirth.connect.donkey.server.channel.SourceConnector.dispatchRawMessage(SourceConnector.java:175)
at com.mirth.connect.server.controllers.DonkeyEngineController.dispatchRawMessage(DonkeyEngineController.java:520)
at com.mirth.connect.server.servlets.MessageObjectServlet$2.run(MessageObjectServlet.java:193)
at java.lang.Thread.run(Unknown Source)

我可以成功 ping 两个系统,并且可以使用连接到主机上的 MySQL 服务器

        mysql -utest -ptest -hipaddressofhost

我正在使用 Mirthconnect 3.0。 请问我在哪里错过它?...谢谢

(我也没有加密消息,也没有使用 SSL 来测试传输...我相信这不是问题??)

【问题讨论】:

    标签: mirth


    【解决方案1】:

    看似简单的事情可能会出错:

    1. 您是否确认您没有安装或激活防火墙。您使用的命令似乎表明您可能正在使用 Linux。因此,您可能会对 iptables (/etc/init.d/iptables status) 或其他类似的防火墙感到非常沮丧。
    2. 您确定没有任何类型的防火墙来阻止发送方和侦听端口 2468 的机器之间的网络通信吗?他们在同一个子网上吗?如果它们不在同一个子网上,则可能是某种网络设备/防火墙阻止了流量。
    3. 你能telnet到监听器的IP地址和端口(telnet)吗?
    4. 另一种测试您是否在正确路径上的简单方法是将通道(或只是发送到侦听器的目标)导入侦听器机器的 Mirth 实例。如果您能够在不更改此目的地的端口和 IP 地址的情况下建立连接,则您可能遇到了某种网络/防火墙问题,阻止了该特定端口上的流量通过。

    不确定这是否会对您有很大帮助,但无论哪种方式都祝您好运。

    弗兰斯

    【讨论】:

    • 我觉得有点尴尬,但问题是我在尝试连接之前没有先部署频道......我不知道我在想什么!!!感谢弗朗西斯的帮助
    猜你喜欢
    • 2020-02-15
    • 2018-02-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-02
    • 1970-01-01
    • 2012-07-01
    相关资源
    最近更新 更多