Каазинг VPN Тестирование

Я создал настройку Kaazing VPN на хост-машине и виртуальной машине в качестве гостевой машины, ссылаясь на http://kaazingcorp.cachefly.net/com/file/kaazing-vpc.pdf URL, а также, как и предполагалось, я проверил соединение, используя Perl также. Но теперь я хочу отправить сообщение на шлюз kaazing на стороне клиента, используя некоторый JavaScript, и хочу увидеть, как он переходит на другую сторону, на которой настроен ActiveMQ. Но когда я отправил одно сообщение в какую-то очередь и создал продюсера. Затем обнаружил, что путь до Каазинга и MQ на стороне клиента. Кто-нибудь может сказать мне решение.

Детали шлюза для клиентской части.

<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 на стороне клиента. Пожалуйста, предложите.

2 ответа

Если вы просто хотите прокси-трафик для любого TCP-трафика через WebSocket, ваша конфигурация шлюза выглядит с синтаксической ошибкой. для клиентской части определение вашей службы должно выглядеть следующим образом:

<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.abc:50505. Я предполагаю, что у вас есть ActiveMQ-брокер, прослушивающий сокеты на 10.abc:50505, и у вас есть клиент ActiveMQ, подключающийся к брокеру, который, по его мнению, работает на 172.19.xx.xx:50505. как уже отмечали другие, вы действительно хотите, чтобы соединение на стороне клиента ссылалось на общедоступный IP-адрес или имя хоста и URL-адрес принятия на стороне сервера, чтобы соответствовать адресу соединения от клиента.

какой язык на стороне клиента вы используете для подключения к ActiveMQ через Интернет? Возможно, вы захотите взглянуть на JMS-версию Kaazing, которая расширяет ActiveMQ (или любого JMS-брокера) с использованием API-интерфейсов JMS напрямую на многие клиенты (Java, JavaScript, .Net/Silverlight, Objective-C, Dalvik, Flash/Flex). это позволяет вам использовать API-интерфейсы JMS через Интернет непосредственно в клиентских программах без запуска второго шлюза.

Я работаю в Каазинг, поэтому дайте мне знать, если вам нужна дополнительная помощь или ответы на другие вопросы.

10/8, 172.16/12 а также 192.168/16 все частные диапазоны IP-адресов. Я предполагаю, что вам нужны внешние IP-адреса для сообщений, чтобы перейти на другую сторону.

Если это то, на что это должно быть похоже:

client <--tcp--> gateway <---ws/internet---> gateway <--tcp--> server

затем tcp соединение локальное (частный ip в порядке) но ws соединение должно использовать публичный IP.

Это ниже частный IP-адрес:

ws://192.168.yy.yy:8010/

Все соединения не покинут вашего клиента. Это не может быть IP-адрес вашего сервера... если ваш сервер также не находится в той же локальной сети.

Связанный комикс: http://xkcd.com/742/

Другие вопросы по тегам