2011-05-16 19 views
9

Tôi đang chạy bitcoind trên một máy và muốn kiểm soát nó từ một máy khác (sử dụng giao diện Python và giao diện RPC JSON).Làm thế nào để tôi thực hiện bitcoind nghe trên 0.0.0.0:8332?

~/.bitcoin/bitcoin.config trên host 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 

Bây giờ, tôi bắt đầu bitcoind -daemon, nhưng chương trình python của tôi không thành công với

IOError: [Errno socket error] [Errno 111] Connection refused 

Trên máy chủ bitcoind, ps -nlp show bitcoind nghe trên 127.0.0.1:8332, và không phải 0.0.0.0:8332 (đó là những gì tôi mong đợi). Wireshark cho thấy một phản ứng của RST, ACK với nỗ lực kết nối TCP, có vẻ hợp lý.

Tôi đang thiếu gì?

+0

@Blomkvist Tôi đồng ý Người dẫn chương trình mục tiêu được rõ ràng phủ nhận sự nỗ lực kết nối – Bora

+0

Lưu ý: có một [Bitcoin đề nghị stackexchange. ] (http://area51.stackexchange.com/proposals/30763/bitcoin-crypto-currency) nơi mà loại câu hỏi sẽ được chào đón –

Trả lời

23

Hãy thử rpcallowip, thay vì rcpallowip :)

+0

Doh! [Squashes lỗi với facepalm ...] --- Cảm ơn bạn, đó là công trình. –

1

Bạn có chắc chắn bitcoind cũng không nghe trên 0.0.0.0 không? Khi cài đặt mới ở đây, hãy nghe trên 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  

Ngoài ra, nmap từ 192.168.2.6 nói gì?

+1

Như tôi đã hiểu, 8333 là cổng ngang hàng cho mạng Bitcoin , trong khi 8332 là cổng JSON/RPC netstat của bạn trông giống như của tôi Nmap không phát hiện bất cứ điều gì trên cổng 8332. –

+0

Hmm, bạn hoàn toàn đúng, xem nhanh mã mẫu trên https: // vi. bitcoin.it/wiki/API_reference_%28JSON-RPC%29 đưa ra một ấn tượng rằng JSON API không có sẵn cho bất kỳ thứ gì khác ngoài localhost. ing giám sát? Có lẽ câu trả lời duy nhất là làm điều đó thông qua một dịch vụ SOCKS chạy trên máy chủ bitcoin ... – Norky

+0

Điều đó không có nhiều ý nghĩa, với tùy chọn rpcallowip trong cấu hình. Tất nhiên, nó vẫn có thể được tiến hành. Điều này * không * làm việc OK trên một máy tính cục bộ (127.0.0.1). –

3

Chỉ có cùng một vấn đề.

giải quyết bằng cách thiết lập

rpcallowip=* 

trong bitcoin.conf

có một cái nhìn tại https://en.bitcoin.it/wiki/Enabling_SSL_on_original_client_daemon

+0

Cảm ơn, Michael. Vấn đề của tôi là một lỗi đánh máy đơn giản: rCp cho rPc –

+1

Điều này không được hỗ trợ nữa kể từ 0.10.0 –

0

Vui lòng sử dụng các cài đặt sau.

Đối với yêu cầu rpc http/https.

rpcport=8332 #8331 will be nice. 

Đang xử lý.

port=8332 

Nhắc:

1: Hai thiết lập không nên như vậy.

Thứ hai: Bạn nên khởi động lại quá trình bitcoind vì bạn thay đổi tệp conf.

0

Chỉ cần cập nhật ur tập tin bitcoin.conf

  • sử dụng rpcport = 8332 rpcconnect = 127.0.0.1
0

rpcallowip = *
Nó không phải là một ý tưởng tốt bởi vì nó mở ra cho mọi người . Vì vậy, nếu bạn muốn cụ thể IP và Port sau đó chỉnh sửa đồng xu của bạn.conf file
rpcallowip = yourip; . // (Mặc định = 127.0.0.1
rpcport = cổng của bạn; // (Mặc định = 8332)

+0

Cảm ơn sự quan tâm của bạn. OK, trong trường hợp của tôi, bởi vì nó nằm trong mạng cục bộ của tôi, đằng sau tường lửa, không có ánh xạ cổng. –

+0

Chỉ cần lưu ý, không phải tất cả daemon đều cho phép rpcallowip = *. dogecoin không và sẽ ném một ngoại lệ. – Yada

Các vấn đề liên quan