Я пытаюсь реализовать протокол MQTT с использованием RabbitMQ. Я установил сервер RabbitMQ и изменил порт MQTT с 1883 по 80. Я могу публиковать и подписываться на сервер из сети. Но когда я пытаюсь опубликовать или подписаться с использованием внешнего ip, я получаю ошибку «timed out». Кто-нибудь может поделиться, как публиковать или подписываться с использованием внешнего ip?подключение к серверу RabbitMQ с внешним ip
ответ
Непонятно, с чем связана ваша топология сети, но я буду предполагать.
Вы используете ваш маклер MQTT на машине, подключенной к частному IP-диапазону (например, 192.168. *), Вы можете подключиться к этому аппарату с другого компьютера в той же сети.
Теперь вы пытаетесь подключиться к компьютеру за пределами этой сети. Ваша частная сеть IP-адресов находится за маршрутизатором, выполняющим NAT. Вам нужно будет включить перенаправление портов на маршрутизаторе, чтобы отправить весь трафик на ваш необходимый порт (в данном случае порт 80) на брокерский компьютер. Как вы это сделаете, это будет зависеть от вашего маршрутизатора.
EDIT: Учитывая новую информацию, то есть 2 возможных варианта:
Ваш экземпляр RabbitMQ только привязка к частной IP-адрес, загляните в файл rabittmq.conf для записи начиная с
RABBITMQ_NODE_IP_ADDRESS=
. Если у вас есть один комментарий, так что rabbitmq будет по умолчанию привязываться ко всем адресам. Более подробную информацию можно найти здесь: https://www.rabbitmq.com/configure.htmlУ вас на вашем компьютере включен брандмауэр, который автоматически отключает весь трафик до порта 80 на общедоступном IP-адресе. Я предлагаю, чтобы это тихонько отбрасывало трафик, потому что вы видите таймаут, а не сообщение об отказе от соединения. Вы не сказали, какую ОС используете, поэтому я не могу вносить предложения о том, как изменить правила брандмауэра.
- 1. SourceTree подключение к серверу ip
- 2. Подключение к удаленному MSSQL с внешним IP
- 3. Подключение к серверу RabbitMQ от MongooseIM
- 4. C# Подключение к серверу с неизвестным IP
- 5. C#. Подключение к другу с сокетами и внешним IP
- 6. Подключение к RabbitMQ через имя хоста/ip (с использованием NServiceBus)
- 7. Подключение к серверу с именем, а не с ip-адресом
- 8. повторное подключение к серверу/серверу
- 9. Подключение к серверу RabbitMQ автоматически потеряно после 600 секунд
- 10. Android-приложение, подключение к серверу
- 11. Подключение к удаленному серверу SQL с использованием IP-адреса
- 12. Подключение к серверу с мобильного, когда общедоступный IP-адрес одинаковый.
- 13. Подключение к серверу с постоянным IP и портом
- 14. Подключение к удаленному серверу redis
- 15. Внешнее подключение к серверу отказалось
- 16. Удаленное подключение к серверу Neo4j
- 17. Java подключение к SQL серверу
- 18. Подключение к серверу MySQL
- 19. Подключение к серверу Oracle
- 20. Подключение к удаленному серверу golang
- 21. Java MySQL Подключение к серверу
- 22. подключение к серверу LDAP
- 23. Подключение к локальному SQL-серверу с сайта
- 24. Подключение к серверу обмена
- 25. Bitcoinrpc подключение к удаленному серверу
- 26. Socket.io подключение к серверу
- 27. Проверьте подключение к серверу?
- 28. Подключение к ftp-серверу
- 29. Подключение к серверу RIA
Спасибо за ваш ответ. Брокер MQTT, работающий в системе, включен с использованием частного IP-адреса, а также Public IP. Я могу получить доступ к брокеру в сети с использованием частного IP-адреса. Когда я пытаюсь получить доступ к публичному IP из внешней сети, я получаю сообщение об ошибке. – Avinash