Локальный узел (Geth) не удалось синхронизировать из TestNet
Уважаемые эксперты по блокчейну!
Я создал локальный узел с помощью Geth, это команда запуска.
- geth --testnet --rpc --rpcaddr "localhost" --rpcport "8545" --rpcapi "web3, eth, net, personal" --rpccorsdomain "*" --datadir "./data" --identity "localnode " --быстро
На локальном узле и работает. Сразу же я создал две личные учетные записи и сохранил их в папке Keystore.
Затем я перевел эфир из учетной записи моего Testnet на учетную запись локального узла через метамаски. Что-то действительно странное здесь, я все еще могу видеть значение эфира учетной записи локального узла - ZERO.
Я даже удалил папку chaindata и перезапустил консоль клиента geth.
Пожалуйста, посоветуйте и высоко ценим.
Спасибо.
1 ответ
К сожалению, вы успешно синхронизировали свой локальный GEth, но с другой сетью, отличной от той, в которой вы проверяли свой Ether!
Эта путаница произошла из- за атаки на сеть Ropesten, которая была исправлена некоторыми узлами, но другие узлы все еще имели старые данные. И когда вы запускаете свою команду:
geth --testnet --rpc --rpcaddr "localhost" --rpcport "8545" --rpcapi "web3, eth, net, personal" --rpccorsdomain "*" --datadir "./data" --identity "localnode " --быстро
Вы не указываете в команде какой-либо конкретный узел для подключения. И по ошибке вы подключены к узлу (ам), который все еще работает на старых устаревших данных сетевой цепочки блоков!
А удаление папки "chaindata" не сообщит GEth попробовать с другими узлами. Потому что он будет выбирать те же узлы из папки "узлы".
Чтобы выбрать новые узлы для синхронизации, вы должны:
- Удалите папку "node", а также укажите обновленные узлы, которые будут использоваться GEth, используя опцию "--bootnodes".
- Или добавьте узлы даже после синхронизации с помощью команды: "admin.addPeer('enode://ADDRESS@IP:PORT')". это после того, как вы подключаетесь к Geth в терминале, используя "geth attach ipc:/home/developer/.ethereum/testnet/geth.ipc"
Однако, поскольку нет четкого списка, какие узлы были разветвлены и обновлены для исправления взлома, а также из-за многих других проблем, таких как большой размер узла полной сети, я рекомендую использовать Parity для подключения к сети правильных узлов Ropsten.,
Чтобы использовать паритет, я рекомендую перейти по одной из этих ссылок:
- Как синхронизировать весь клиент Ethereum за 2-3 часа для Testnet и Mainnet
- Или: Быстрая синхронизация Ethereum Parity для тест-сети Ropsten
Так что, спасибо Паритет! Вы можете легко указать желаемую сеть, используя "--chain", запустив: "parity --chain ropsten"