Javascript Kaazing VPN测试
我已经在主机上创建了Kaazing VPN的设置,并将VM作为来宾机,参考 URL&另外,正如我建议的那样,我也使用perl测试了连接。但现在我想使用一些javascript将消息发送到客户端的kaazing网关,并希望看到消息传递到配置了ActiveMQ的另一端。 但是,当我向某个队列发送一条消息并创建生产者时。然后发现,在客户端,旅行路径是直到Kaazing&MQ。谁能告诉我解决办法吗 客户端的网关详细信息Javascript Kaazing VPN测试,javascript,activemq,kaazing,Javascript,Activemq,Kaazing,我已经在主机上创建了Kaazing VPN的设置,并将VM作为来宾机,参考 URL&另外,正如我建议的那样,我也使用perl测试了连接。但现在我想使用一些javascript将消息发送到客户端的kaazing网关,并希望看到消息传递到配置了ActiveMQ的另一端。 但是,当我向某个队列发送一条消息并创建生产者时。然后发现,在客户端,旅行路径是直到Kaazing&MQ。谁能告诉我解决办法吗 客户端的网关详细信息 <service> <name>proxy-conn
<service>
<name>proxy-connection</name>
<accept>tcp://172.19.xx.xx:50505/</accept>
<type>proxy</type>
<properties>
<connect>
ws://192.168.yy.yy:8010/
</connect>
</properties>
</service>
<service-defaults>
<accept-options>
<http.bind>8000</http.bind>
<ws.bind>8010</ws.bind>
</accept-options>
</service-defaults>
服务器端的网关详细信息
<service>
<name>proxy-connection</name>
<accept>ws://192.168.yy.yy:8010/</accept>
<type>proxy</type>
<properties>
<connect>
tcp://10.a.b.c:50505/
</connect>
</properties>
</service>
<service-defaults>
<accept-options>
<http.bind>8000</http.bind>
<ws.bind>8010</ws.bind>
</accept-options>
为了发送消息,刚刚创建了一个小型java脚本客户端,通过JMS连接工厂进行连接,并在发送之前与生产者和消费者创建一个主题。但是,在另一端并没有获取任何消息,但所有消息都显示在客户端的MQ下。请建议。10/8、172.16/12和192.168/16都是专用ip地址范围。
我猜您需要外部ip地址才能将消息发送到另一端
如果这是它应该看起来的样子:
client <--tcp--> gateway <---ws/internet---> gateway <--tcp--> server
所有连接都不会离开您的客户端。这不能是服务器的ip地址。。。除非您的服务器也在同一个本地网络上
相关漫画:如果您只想通过WebSocket代理任何TCP流量,您的网关配置看起来有语法错误。对于客户端,您的服务定义应为:
<service>
<name>proxy-connection</name>
<accept>tcp://172.19.xx.xx:50505/</accept>
<connect>ws://192.168.yy.yy:8010/proxy</connect>
<type>proxy</type>
</service>
<service>
<name>proxy-connection</name>
<accept>ws://192.168.yy.yy:8010/proxy</accept>
<connect>tcp://10.a.b.c:50505/</connect>
<type>proxy</type>
</service>
服务器网关应为:
<service>
<name>proxy-connection</name>
<accept>tcp://172.19.xx.xx:50505/</accept>
<connect>ws://192.168.yy.yy:8010/proxy</connect>
<type>proxy</type>
</service>
<service>
<name>proxy-connection</name>
<accept>ws://192.168.yy.yy:8010/proxy</accept>
<connect>tcp://10.a.b.c:50505/</connect>
<type>proxy</type>
</service>
但正如其他人所说,客户端网关必须能够达到192.168.yy.yy:8010。然后,您的客户端程序将连接到172.19.xx.xx:50505的套接字,TCP流将在侦听10.a.b.c:50505的服务器上重播。我假设您有一个ActiveMQ代理监听10.a.b.c:50505上的套接字,并且有一些ActiveMQ客户端连接到它认为在172.19.xx.xx:50505上运行的代理。正如其他人所指出的,您确实希望客户端连接引用可公开访问的IP或主机名,并希望服务器端的accept URL与客户端的连接地址相匹配
您使用什么客户端语言通过Web连接到ActiveMQ?您可能想看看Kaazing的JMS版本,它将ActiveMQ或任何使用JMS API的JMS代理直接扩展到许多客户机Java、JavaScript、.Net/Silverlight、Objective-C、Dalvik、Flash/Flex。这允许您在客户端程序中直接通过web使用JMS API,而无需运行第二个网关
我为Kaazing工作,如果您需要更多帮助或其他问题,请告诉我。谢谢您的评论,实际上,我已经创建了网关部分,并使用公共ip使用共享url中提供的perl脚本进行了测试,但是当连接到客户端网关并发送消息时,我无法在另一端接收到它。最好检查防火墙规则和客户端到服务器之间的常规ssh连接。服务器已打开和虚拟机一样的网络…所以我认为连接不应该是任何问题,但不确定现在面临的问题。