Невозможно удаленно получить доступ к молнии

Моя настройка немного сложна, и я почти уверен, что моя проблема связана с портом.

Итак, я использую Mac OS X 10.13.4 с Parallels Desktop с виртуальной машиной Ubuntu 14.04. Мне удалось настроить биткойн-ядро на виртуальной машине, поверх него я установил c-lightning и смог финансировать его с помощью btc (все происходит в тестовой сети ), который я использовал для открытия одного канала с каким-то случайным другим узлом. На данный момент все идеально.

Поскольку я хочу использовать LApp для WordPress Lightning-Publisher, я установил Lightning-Charge и запустил HTTP-сервер, работающий на порту по умолчанию 9112. Все мои порты правильно перенаправлены, и в моем файле bitcoin.conf я разрешил все ips. Если я запускаю Mozilla на своей виртуальной машине Ubuntu и перехожу к ней, http://api-token:mySecretToken@localhost:9112/infoвсе в порядке, но когда я пробую это на своем Mac, я получаю Can't open the page because the server unexpectedly dropped the connection. Если я попытаюсь использовать свой внешний ip, это то же самое.

Используя несколько сайтов для проверки правильности перенаправления моих портов, я обнаружил, что все соответствующие порты открыты (18332 для ядра BTC, 9735 для c-lightning и 9112 для Lightning-Charge).

Вот мой биткойн.conf

тестовая сеть = 1
сервер=1
rpcallowip=0.0.0.0/0
rpcuser=someuser
rpcpassword=некоторый пароль

добавочный узел = 104.237.131.138
добавочный узел = 151.80.205.132
добавочный узел = 192.155.82.123
добавочный узел = 74.220.255.190
добавочный узел = 80.100.203.151

вот моя конфигурация молнии

сеть = тестовая сеть
псевдоним = ИВЧОБИВЧО
порт=9735
RGB=008000

Доказательство того, что 9112 открыт:порт открыт

Доказательство того, что заряд молнии открывается изнутри ВМ:внутри ВМ

И в Safari на моем Mac (использование localhost: 9112 возвращает ту же ошибку):в сафари

Ни Ubuntu, ни мой Mac не защищены каким-либо брандмауэром. Мой роутер TP-Link.

Ответы (1)

После долгих исследований я нашел решение своей проблемы.

Я этого не знал, но в nodejs есть огромная разница, работает ли ваш сервер 127.0.0.1на 0.0.0.0.

В документации по молнии об этом не сказано, но, кроме атрибута --port , у вас также есть --host , который вы можете установить.

Запуск молнии с этой линией charged --api-token mySecretToken --host 0.0.0.0решил все мои проблемы. Боже, это было неприятное путешествие!

127.0.0.1 — это петлевой адрес (также известный как localhost). ... Если хост имеет два IP-адреса, 192.168.1.1 и 10.1.2.1, и сервер, работающий на хосте, прослушивает 0.0.0.0, он будет доступен по обоим этим IP-адресам.