You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

EC2实例中MetaMask无法识别Hardhat网络:提示无法获取链ID

解决Hardhat节点远程无法连接的问题

核心问题

Hardhat Node默认仅绑定127.0.0.1本地回环地址,导致EC2外部无法访问;另外你启动命令用了npm hardhat node,正确的调用方式应为npx hardhat node。

解决步骤

1. 正确启动Hardhat节点并绑定公网可访问地址

启动时指定绑定所有网卡(0.0.0.0)和端口,让EC2的公网IP能接收远程请求:

npx hardhat node --host 0.0.0.0 --port 8545

2. 修正hardhat.config.js配置

原配置存在语法错误(localhost与hardhat节点配置间缺少逗号),需调整为如下正确格式:

module.exports = {
  solidity: "0.8.4", // 可根据你的项目需求调整Solidity版本
  networks: {
    localhost: {
      url: "http://ec2-44-242-170-11.us-west-2.compute.amazonaws.com:8545",
      chainId: 31337
    },
    hardhat: {
      chainId: 31337 // Hardhat默认链ID,无需修改为其他值
    }
  }
};

3. MetaMask配置验证

  • 新增网络时,RPC URL填写http://ec2-44-242-170-11.us-west-2.compute.amazonaws.com:8545
  • Chain ID严格填写31337,与Hardhat配置保持一致
  • 再次确认EC2安全组入站规则已开放8545端口(允许你的客户端IP或所有IP访问)

内容的提问来源于stack exchange,提问作者John Daniels

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 21:32:54