区块链不同机器的节点相互连接
2017-07-06 17:49
1026 查看
1节点所在的机器,相互之间可以互联互通
2它们有相同的创世纪文件
3 有相同的networkid
一 第一个节点创建
进入geth后面连接节点
二 另外一台电脑
进入geth
镜像制作新的电脑
2它们有相同的创世纪文件
3 有相同的networkid
一 第一个节点创建
root@i-67u87x1c:/home/ubuntu# mkdir private-geth root@i-67u87x1c:/home/ubuntu# cd private-geth/ root@i-67u87x1c:/home/ubuntu/private-geth# vim genesis.json { "config": { "chainId": 15, "homesteadBlock": 0, "eip155Block": 0, "eip158Block": 0 }, "coinbase" : "0x0000000000000000000000000000000000000000", "difficulty" : "0x40000", "extraData" : "", "gasLimit" : "0xffffffff", "nonce" : "0x0000000000000042", "mixhash" : "0x0000000000000000000000000000000000000000000000000000000000000000", "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", "timestamp" : "0x00", "alloc": { } } 初始化创始块 root@i-67u87x1c:/home/ubuntu/private-geth# geth --datadir ./data/00 init genesis.json WARN [07-06|14:38:34] No etherbase set and no accounts found as default INFO [07-06|14:38:34] Allocated cache and file handles database=/home/ubuntu/private-geth/data/00/geth/chaindata cache=16 handles=16 INFO [07-06|14:38:34] Writing custom genesis block INFO [07-06|14:38:34] Successfully wrote genesis state database=chaindata hash=a0e580鈥5e82e INFO [07-06|14:38:34] Allocated cache and file handles database=/home/ubuntu/private-geth/data/00/geth/lightchaindata cache=16 handles=16 INFO [07-06|14:38:34] Writing custom genesis block INFO [07-06|14:38:34] Successfully wrote genesis state database=lightchaindata
进入geth后面连接节点
root@i-67u87x1c:/home/ubuntu/private-geth# geth --datadir ./data/00 --networkid 314590 --ipcdisable --port 632 --rpcport 8156 --bootnodes "enode://96f7a95a8c5e7a1f911142d87ce53ae882568be0435016e4803a6d410a9ecc7a69322cee8efbe8499ec7c737c377793182cab8869a076389c6b47626df00450b@192.168.0.4:61910" console WARN [07-06|14:43:54] No etherbase set and no accounts found as default INFO [07-06|14:43:54] Starting peer-to-peer node instance=Geth/v1.6.6-stable-10a45cb5/linux-amd64/go1.8.1 INFO [07-06|14:43:54] Allocated cache and file handles database=/home/ubuntu/private-geth/data/00/geth/chaindata cache=128 handles=1024 INFO [07-06|14:43:54] Initialised chain configuration config="{ChainID: 15 Homestead: 0 DAO: <nil> DAOSupport: false EIP150: <nil> EIP155: 0 EIP158: 0 Metropolis: <nil> Engine: unknown}" INFO [07-06|14:43:54] Disk storage enabled for ethash caches dir=/home/ubuntu/private-geth/data/00/geth/ethash count=3 INFO [07-06|14:43:54] Disk storage enabled for ethash DAGs dir=/root/.ethash count=2 INFO [07-06|14:43:54] Initialising Ethereum protocol versions="[63 62]" network=314590 INFO [07-06|14:43:54] Loaded most recent local header number=0 hash=a0e580鈥5e82e td=262144 INFO [07-06|14:43:54] Loaded most recent local full block number=0 hash=a0e580鈥5e82e td=262144 INFO [07-06|14:43:54] Loaded most recent local fast block number=0 hash=a0e580鈥5e82e td=262144 INFO [07-06|14:43:54] Starting P2P networking INFO [07-06|14:43:57] UDP listener up self=enode://ca2dd7e49417097f68292c19e4af9a8311223ce9153559f68d0cb618fb961fcf615ded9c90b635c26d0cdff8aa5ee58e2bbf83949df31e841bab03f451f636ec@[::]:632 INFO [07-06|14:43:57] RLPx listener up self=enode://ca2dd7e49417097f68292c19e4af9a8311223ce9153559f68d0cb618fb961fcf615ded9c90b635c26d0cdff8aa5ee58e2bbf83949df31e841bab03f451f636ec@[::]:632 Welcome to the Geth JavaScript console! instance: Geth/v1.6.6-stable-10a45cb5/linux-amd64/go1.8.1 modules: admin:1.0 debug:1.0 eth:1.0 miner:1.0 net:1.0 personal:1.0 rpc:1.0 txpool:1.0 web3:1.0 > eth.blockNumber 0 > admin.nodeInfo { enode: "enode://ca2dd7e49417097f68292c19e4af9a8311223ce9153559f68d0cb618fb961fcf615ded9c90b635c26d0cdff8aa5ee58e2bbf83949df31e841bab03f451f636ec@[::]:632", id: "ca2dd7e49417097f68292c19e4af9a8311223ce9153559f68d0cb618fb961fcf615ded9c90b635c26d0cdff8aa5ee58e2bbf83949df31e841bab03f451f636ec", ip: "::", listenAddr: "[::]:632", name: "Geth/v1.6.6-stable-10a45cb5/linux-amd64/go1.8.1", ports: { discovery: 632, listener: 632 }, protocols: { eth: { difficulty: 262144, genesis: "0xa0e580c6769ac3dd80894b2a256164a76b796839d2eb7f799ef6b9850ea5e82e", head: "0xa0e580c6769ac3dd80894b2a256164a76b796839d2eb7f799ef6b9850ea5e82e", network: 314590 } } } root@i-67u87x1c:/home/ubuntu# ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 52:54:37:78:15:bb brd ff:ff:ff:ff:ff:ff inet 192.168.0.3/24 brd 192.168.0.255 scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::5054:37ff:fe78:15bb/64 scope link valid_lft forever preferred_lft forever
二 另外一台电脑
创建相同的创始块 root@i-kectp1zd:/home/ubuntu/private-geth# root@i-kectp1zd:/home/ubuntu/private-geth# geth --datadir ./data/00 init genesis.json WARN [07-06|15:26:39] No etherbase set and no accounts found as default INFO [07-06|15:26:39] Allocated cache and file handles database=/home/ubuntu/private-geth/data/00/geth/chaindata cache=16 handles=16 INFO [07-06|15:26:39] Writing custom genesis block INFO [07-06|15:26:39] Successfully wrote genesis state database=chaindata hash=a0e580鈥5e82e INFO [07-06|15:26:39] Allocated cache and file handles database=/home/ubuntu/private-geth/data/00/geth/lightchaindata cache=16 handles=16 INFO [07-06|15:26:39] Writing custom genesis block INFO [07-06|15:26:39] Successfully wrote genesis state database=lightchaindata hash=a0e580鈥5e82e
进入geth
root@i-kectp1zd:/home/ubuntu/private-geth# geth --datadir ./data --networkid 314590 --ipcdisable --port 3456 --rpcport 78 --bootnodes "enode://ca2dd7e49417097f68292c19e4af9a8311223ce9153559f68d0cb618fb961fcf615ded9c90b635c26d0cdff8aa5ee58e2bbf83949df31e841bab03f451f636ec@192.168.0.3:632" console WARN [07-06|15:30:31] No etherbase set and no accounts found as default INFO [07-06|15:30:31] Starting peer-to-peer node instance=Geth/v1.6.6-stable-10a45cb5/linux-amd64/go1.8.1 INFO [07-06|15:30:31] Allocated cache and file handles database=/home/ubuntu/private-geth/data/geth/chaindata cache=128 handles=1024 INFO [07-06|15:30:31] Writing default main-net genesis block INFO [07-06|15:30:31] Initialised chain configuration config="{ChainID: 1 Homestead: 1150000 DAO: 1920000 DAOSupport: true EIP150: 2463000 EIP155: 2675000 EIP158: 2675000 Metropolis: 9223372036854775807 Engine: ethash}" INFO [07-06|15:30:31] Disk storage enabled for ethash caches dir=/home/ubuntu/private-geth/data/geth/ethash count=3 INFO [07-06|15:30:31] Disk storage enabled for ethash DAGs dir=/root/.ethash count=2 WARN [07-06|15:30:31] Upgrading db log bloom bins INFO [07-06|15:30:31] Bloom-bin upgrade completed elapsed=123.418碌s INFO [07-06|15:30:31] Initialising Ethereum protocol versions="[63 62]" network=314590 INFO [07-06|15:30:31] Loaded most recent local header number=0 hash=d4e567鈥b8fa3 td=17179869184 INFO [07-06|15:30:31] Loaded most recent local full block number=0 hash=d4e567鈥b8fa3 td=17179869184 INFO [07-06|15:30:31] Loaded most recent local fast block number=0 hash=d4e567鈥b8fa3 td=17179869184 INFO [07-06|15:30:31] Starting P2P networking INFO [07-06|15:30:33] UDP listener up self=enode://a22e7a8f502521ac685df1f001c59a06549b5292a42728e08ac3ca3f15603c75a0680f47ced4a736eab047335a0d2331e91ccb483591a83ecae57181878a7e07@[::]:3456 INFO [07-06|15:30:33] RLPx listener up self=enode://a22e7a8f502521ac685df1f001c59a06549b5292a42728e08ac3ca3f15603c75a0680f47ced4a736eab047335a0d2331e91ccb483591a83ecae57181878a7e07@[::]:3456 Welcome to the Geth JavaScript console! instance: Geth/v1.6.6-stable-10a45cb5/linux-amd64/go1.8.1 modules: admin:1.0 debug:1.0 eth:1.0 miner:1.0 net:1.0 personal:1.0 rpc:1.0 txpool:1.0 web3:1.0 > > personal.newAccount function github.com/ethereum/go-ethereum/console.(*bridge).NewAccount-fm() > personal.newAccount()
镜像制作新的电脑
root@i-0mu8dg3p:/home/ubuntu# mkdir private-gethyi root@i-0mu8dg3p:/home/ubuntu# cd private-gethyi root@i-0mu8dg3p:/home/ubuntu/private-gethyi# vim genesis.json { "config": { "chainId": 15, "homesteadBlock": 0, "eip155Block": 0, "eip158Block": 0 }, "coinbase" : "0x0000000000000000000000000000000000000000", "difficulty" : "0x40000", "extraData" : "", "gasLimit" : "0xffffffff", "nonce" : "0x0000000000000042", "mixhash" : "0x0000000000000000000000000000000000000000000000000000000000000000", "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", "timestamp" : "0x00", "alloc": { } } root@i-0mu8dg3p:/home/ubuntu/private-gethyi# geth --datadir ./data/00 init genesis.json WARN [07-06|16:47:03] No etherbase set and no accounts found as default INFO [07-06|16:47:03] Allocated cache and file handles database=/home/ubuntu/private-gethyi/data/00/geth/chaindata cache=16 handles=16 INFO [07-06|16:47:03] Writing custom genesis block INFO [07-06|16:47:03] Successfully wrote genesis state database=chaindata hash=a0e580鈥5e82e INFO [07-06|16:47:03] Allocated cache and file handles database=/home/ubuntu/private-gethyi/data/00/geth/lightchaindata cache=16 handles=16 INFO [07-06|16:47:03] Writing custom genesis block INFO [07-06|16:47:03] Successfully wrote genesis state database=lightchaindata root@i-0mu8dg3p:/home/ubuntu/private-gethyi# geth --datadir ./data/00 --networkid 314590 --ipcdisable --port 123 --rpcport 456 --bootnodes "enode://96f7a95a8c5e7a1f911142d87ce53ae882568be0435016e4803a6d410a9ecc7a69322cee8efbe8499ec7c737c377793182cab8869a076389c6b47626df00450b@192.168.0.4:61910" console > miner.start() INFO [07-06|17:05:47] Updated mining threads threads=0 INFO [07-06|17:05:47] Transaction pool price threshold updated price=18000000000 null > INFO [07-06|17:05:47] Starting mining operation INFO [07-06|17:05:47] Commit new mining work number=1 txs=0 uncles=0 elapsed=180.94碌s INFO [07-06|17:21:25] Successfully sealed new block number=1 hash=0b386b鈥dfce1 INFO [07-06|17:21:25] 馃敤 mined potential block number=1 hash=0b386b鈥dfce1 INFO [07-06|17:21:25] Commit new mining work number=2 txs=0 uncles=0 elapsed=3.832ms INFO [07-06|17:24:43] Successfully sealed new block number=2 hash=6ff261鈥2e306 INFO [07-06|17:24:43] 馃敤 mined potential block number=2 hash=6ff261鈥2e306 INFO [07-06|17:24:43] Commit new mining work number=3 txs=0 uncles=0 elapsed=683.976碌s INFO [07-06|17:27:11] Successfully sealed new block number=3 hash=92983c鈥222ab INFO [07-06|17:27:11] 馃敤 mined potential block number=3 hash=92983c鈥222ab INFO [07-06|17:27:11] Commit new mining work number=4 txs=0 uncles=0 elapsed=704.935碌s INFO [07-06|17:34:06] Successfully sealed new block number=4 hash=a0272f鈥88970 INFO [07-06|17:34:06] 馃敤 mined potential block number=4 hash=a0272f鈥88970 INFO [07-06|17:34:06] Commit new mining work number=5 txs=0 uncles=0 elapsed=618.806碌s INFO [07-06|17:45:42] Successfully sealed new block number=5 hash=0880e3鈥9a7d3 INFO [07-06|17:45:42] 馃敤 mined potential block number=5 hash=0880e3鈥9a7d3 INFO [07-06|17:45:42] Commit new mining work number=6 txs=0 uncles=0 elapsed=504.843碌s > > > > miner.stop() true > > > eth.blockNumber 5
admin.addPeer("enode://96f7a95a8c5e7a1f911142d87ce53ae882568be0435016e4803a6d410a9ecc7a69322cee8efbe8499ec7c737c377793182cab8869a076389c6b47626df00450b@192.168.0.4:61910") > admin.nodeInfo { enode: "enode://c49ec7069c76c6414b2debc6e0f27d3774cc54133681a28c7283b9b822851f21aee710d91ef7ccf10861d9c8cb6fce8b8189ac71441d051353ce9c10bdaf7892@[::]:123", id: "c49ec7069c76c6414b2debc6e0f27d3774cc54133681a28c7283b9b822851f21aee710d91ef7ccf10861d9c8cb6fce8b8189ac71441d051353ce9c10bdaf7892", ip: "::", listenAddr: "[::]:123", name: "Geth/v1.6.6-stable-10a45cb5/linux-amd64/go1.8.1", ports: { discovery: 123, listener: 123 }, protocols: { eth: { difficulty: 1451162, genesis: "0xa0e580c6769ac3dd80894b2a256164a76b796839d2eb7f799ef6b9850ea5e82e", head: "0x0880e3e3f21e5601661aeb01fc8589a46d6efe5ef31adebb5f7f9679d7e9a7d3", network: 314590 } } }
相关文章推荐
- 通过Windows Azure Connect ,实现本地机器与Windows Azure 虚拟机的相互连接(转+译)
- 通过Windows Azure Connect ,实现本地机器与Windows Azure 虚拟机的相互连接(转+译)
- jbpm连接不同机器上的mysql
- 通过Windows Azure Connect ,实现本地机器与Windows Azure 虚拟机的相互连接(转+译)
- 连接不同区块链的跨链技术介绍
- n个节点,m个相互连接的边,边为a【m】,求最短路径
- 连接不同区块链的跨链技术介绍
- 通过Windows Azure Connect ,实现本地机器与Windows Azure 虚拟机的相互连接(转+译)
- 通过Windows Azure Connect ,实现本地机器与Windows Azure 虚拟机的相互连接(转+译)
- 两台不同window7机器上的oralce,实例之间相互拷贝的方式(EXPDP和IMPDP数据泵)
- 通过Windows Azure Connect ,实现本地机器与Windows Azure 虚拟机的相互连接(转+译)
- 连接不同区块链的跨链技术介绍
- Programming Erlang 第十章:让客户机和服务器运行于同一台机器的不同节点
- 通过Windows Azure Connect ,实现本地机器与Windows Azure 虚拟机的相互连接(转+译)
- 集群中包括4个节点:2个Master(主备),2个Salve,节点之间局域网连接,可以相互ping通
- 单用户模式,救援模式,克隆虚拟机,linux机器的相互连接
- 连接不同的数据库
- 如何通过T-SQL获得当前连接的客户端的IP和机器名...
- 简单解决不同机器同帐号文件访问问题
- 根据TreeView中节点的不同,来绑定不同的dropdownlist