Почему я никогда не вижу ни eth.blockNumber, ни eth.coinbase в тестовой сети с легкой синхронизацией?

Я пытаюсь запустить geth в тестовой сети. Я успешно построил его, но эти команды никогда не работают.

blockchain@ethereum:~/go-ethereum$ ./build/bin/geth --testnet --light console
INFO [08-25|22:58:28] Starting peer-to-peer node               instance=Geth/v1.7.0-unstable-3e0dbe0e/linux-amd64/go1.9
INFO [08-25|22:58:28] Allocated cache and file handles         database=/home/blockchain/.ethereum/testnet/geth/lightchaindata cache=128 handles=1024
INFO [08-25|22:58:28] Initialised chain configuration          config="{ChainID: 3 Homestead: 0 DAO: <nil> DAOSupport: true EIP150: 0 EIP155: 10 EIP158: 10 Metropolis: 9223372036854775807 Engine: ethash}"
INFO [08-25|22:58:28] Disk storage enabled for ethash caches   dir=/home/blockchain/.ethereum/testnet/geth/ethash count=3
INFO [08-25|22:58:28] Disk storage enabled for ethash DAGs     dir=/home/blockchain/.ethash                       count=2
INFO [08-25|22:58:28] Loaded most recent local header          number=0 hash=419410…ca4a2d td=1048576
INFO [08-25|22:58:28] Starting P2P networking 
WARN [08-25|22:58:28] Light client mode is an experimental feature 
INFO [08-25|22:58:28] RLPx listener up                         self="enode://569e2233c2908ba6a721bd682d5e34c99a4a033373628e649d4135daa041931886b0c23478933e87b7809de607f9672c6ecd8b1a301c7e3f6897a818254e8bd6@[::]:30303?discport=0"
INFO [08-25|22:58:28] IPC endpoint opened: /home/blockchain/.ethereum/testnet/geth.ipc 
Welcome to the Geth JavaScript console!

instance: Geth/v1.7.0-unstable-3e0dbe0e/linux-amd64/go1.9
 modules: admin:1.0 debug:1.0 eth:1.0 net:1.0 personal:1.0 rpc:1.0 txpool:1.0 web3:1.0

> eth.coinbase
Error: not supported
    at web3.js:3104:20
    at web3.js:6191:15
    at get (web3.js:6091:38)
    at <unknown>

> eth.blockNumber
0

Я ждал более десяти минут; разве я не должен видеть обновление coinbase и blockNumber при синхронизации? Не --lightдолжно быть «световой синхронизации», поэтому мне не нужно загружать всю цепочку?

Ответы (1)

eht.coinbaseне поддерживается, поскольку предполагается, что легкий узел используется для передачи TX и проверки значений BC, а не для майнинга.

Что касается номера блока, похоже, ваш клиент не может найти ни одного узла для синхронизации. Пытаться:

admin.peers

Если он показывает пустой массив [], это означает, что вы не контактируете ни с одним узлом, поэтому ваш клиент не синхронизируется.

Вместо этого попробуйте --syncmode light :

blockchain@ethereum:~/go-ethereum$ ./build/bin/geth --testnet --syncmode light console