ubuntu虚拟机搭建geth私有链并通过metamask连接

1. 通过PPAs安装geth
$ sudo add-apt-repository -y ppa:ethereum/ethereum
$ sudo apt-get update
$ sudo apt-get install ethereum
2. 创建自己的私有链
2.1 创建创世文件

创建一个genesie.json文件,内容为下。chainId:链ID,一个整数,不要是1 2,这好像指定的是主网,比如设置成666,“alloc”可以为某个地址分配以太币。比如此处我为我的metamask账户地址分配10个ether(1ether=10^18wei)。

{
  "config": {
    "chainId": 666,
    "homesteadBlock": 0,
    "eip150Block": 0,
    "eip155Block": 0,
    "eip158Block": 0,
    "byzantiumBlock": 0,
    "constantinopleBlock": 0,
    "petersburgBlock": 0,
    "istanbulBlock": 0
  },
  "alloc": {
      "0xF54cd4fEdA808A50f1237fEb276AC1E3D632dfeD":{
		"balance": "10000000000000000000"
      }
  },
  "coinbase": "0x0000000000000000000000000000000000000000",
  "difficulty": "0x2000",
  "extraData": "",
  "gasLimit": "0x2fefd8",
  "nonce": "0x0000000000000042",
  "mixhash": "0x0000000000000000000000000000000000000000000000000000000000000000",
  "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
  "timestamp": "0x00"
}
2.2 初始化创建私链

创建mychain文件夹,用来指定数据存储的位置,使用以下命令初始化该链

$ geth --datadir mychain/ init genesisi.json

启动此链,此处的networkid要与之前的chainId相同

$ geth --datadir mychain/ networkid 666

在这里插入图片描述

2.3 使用geth控制台

ctrl+c结束上述的链,在使用控制台时,会时不时的出来info消息,我们可以将info重定向输出到一个log文件。创建geth.log文件。使用以下命令重新启动链。

$ geth --datadir mychain/ --networkid 666 console 2>geth.log

在这里插入图片描述

查看刚才创世区块中alloc分配的以太。

在这里插入图片描述

2.4 启用rpc打开端口供远程访问

ctrl+d结束上述的链,使用以下命令重新启动。指定rpc默认端口是8545。rpcaddr "0.0.0.0",指定任何一个ip地址都可以访问。

$sudo geth --datadir mychain/ --networkid 666 console --rpc --rpcaddr "0.0.0.0" --rpcport "8545" 2> geth.log
2.5 metamask连接自己的私有链

ifconfig查看虚拟机的ip地址,此处你的虚拟机要是桥接模式,不然不会有自己的ip。关于虚拟机桥接模式,nat,仅主机模式的介绍可以参考此篇博客。https://www.cnblogs.com/qianjinyan/p/8661668.html。
在这里插入图片描述

在metamask上自定义rpc。如果保存失败,说chain id返回的不是666,则将chainid设置成它返回的。

在这里插入图片描述

保存即可以连上虚拟机上的私有链。如下图所示。

在这里插入图片描述

3.大功告成,芜湖。
  • 3
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 9
    评论
连接Metamask到Geth私有链,你需要按照以下步骤进行操作: 1. 首先,在Metamask钱包中点击右上角的网络切换按钮,选择“Custom RPC”(自定义RPC)选项。 2. 在“Custom RPC”页面中,填写私有链的网络名称,可以根据需要自行设置。RPC URL的格式为http://服务器地址:http端口号,例如:http://81.72.166.130:8545。链ID即为私有链中定义的networkid。 3. 点击“Save”(保存)按钮,保存配置。 4. 确保你已经启动了Geth私有链。你可以使用以下命令启动私有链: ``` geth --datadir data --networkid 15 --http --http.addr 0.0.0.0 --http.port 8545 --http.corsdomain "*" --port 30305 --allow-insecure-unlock console 2>>geth.log ``` 5. 如果你使用的是云服务器,需要在服务器管理界面开启对应的端口,特别是http.port对应的端口,以便Metamask钱包能够连接私有链节点。 6. 现在,你可以在Metamask钱包中选择你配置的私有链网络,并使用你在私有链上的账户进行操作了。 请注意,以上步骤中的具体配置和命令可能会根据你的私有链设置而有所不同。确保按照你的私有链的要求进行配置和启动。 #### 引用[.reference_title] - *1* *2* *3* [以太坊私链搭建(一)——环境配置和metamask连接](https://blog.csdn.net/llslinliansheng/article/details/123596009)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

好你个鸭鸭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值