كيف أجعل bitcoind يستمع إلى 0.0.0.0:8332؟[مغلق]
-
14-11-2019 - |
سؤال
أنا أركض bitcoind
على جهاز واحد وترغب في التحكم فيه من جهاز آخر (باستخدام python وواجهة JSON RPC).
~/.bitcoin/bitcoin.config
على مضيف bitcoind (192.168.2.4):
rpcuser=xxx
rpcpassword=xxx
gen=1
rcpallowip=127.0.0.1
rcpallowip=192.168.2.6 # This is the other machine
paytxfee=0.01
الآن، أبدأ bitcoind -daemon
, لكن برنامج بايثون الخاص بي فشل
IOError: [Errno socket error] [Errno 111] Connection refused
على مضيف bitcoind، يُظهر ps -nlp الاستماع إلى bitcoind على 127.0.0.1:8332، وليس 0.0.0.0:8332 (وهو ما كنت أتوقعه).يعرض Wireshark استجابة RST، ACK لمحاولة اتصال TCP، والتي تبدو منطقية.
ماذا ينقصني؟
المحلول
جرب rpcallowip، بدلاً من rcpallowip :)
نصائح أخرى
فقط كان نفس المشكلة.
حلها عن طريق الإعداد
rpcallowip=*
في bitcoin.conf
القي نظرة على https://en.bitcoin.it/wiki/Enabling_SSL_on_original_client_daemon
هل أنت متأكد bitcoind
لا يستمع على 0.0.0.0 كذلك؟في تثبيت جديد هنا يتم الاستماع إلى 0.0.0.0:8333
$ sudo netstat --ip -lpa|grep bitcoin
tcp 0 0 localhost:8332 *:* LISTEN 2909/bitcoind
tcp 0 0 *:8333 *:* LISTEN 2909/bitcoind
وأيضا ماذا يفعل nmap
من 192.168.2.6 يقول؟
الرجاء استخدام الإعدادات التالية.
أما بالنسبة لطلب http/https RPC.
rpcport=8332 #8331 will be nice.
أما بالنسبة للعملية.
port=8332
يتذكر:
الأول:لا ينبغي أن يكون هذان الإعدادان متماثلين.
الثاني:يجب عليك إعادة تشغيل عملية bitcoind منذ أن قمت بتغيير ملف conf.
فقط قم بتحديث ملف bitcoin.conf الخاص بك
- استخدم rpcport = 8332 rpcconnect = 127.0.0.1
rpcallowip=*
إنها ليست فكرة جيدة لأنها مفتوحة للجميع.لذا، إذا كنت تريد عنوان IP ومنفذًا محددًا، فقم بتحرير ملف Coin.conf الخاص بك
rpcallowip = yourip;// (الافتراضي = 127.0.0.1
rpcport = المنفذ الخاص بك؛// (الافتراضي = 8332)
حلها عن طريق الإعداد
rpcallowip=0.0.0.0/0
في bitcoin.conf