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

Remix中External Http Provider无法连接云端以太坊测试节点求助

解决Remix通过External Http Provider连接云端Geth节点的问题

以下是排查和解决步骤:

  • 检查Google Cloud防火墙规则
    确保GCP服务器的8545端口已开放入站流量:

    1. 进入GCP控制台的「VPC网络」→「防火墙」页面
    2. 创建新的防火墙规则,设置:
      • 目标:选择你的服务器实例所在的实例组或标签
      • 来源IP范围:测试阶段可设为0.0.0.0/0(后续可限制为Remix的IP段)
      • 协议和端口:勾选「tcp」并填写8545
      • 动作:允许
  • 验证Geth节点的监听状态
    在服务器上执行以下命令,确认Geth进程是否正确监听0.0.0.0:8545:

    ss -tulpn | grep 8545
    

    输出应包含0.0.0.0:8545和geth进程,若显示127.0.0.1:8545,说明--http.addr 0.0.0.0参数未生效,需重启节点。

  • 补充Geth启动参数
    在原启动命令中添加--http.vhosts "*"参数,解除虚拟主机访问限制,修改后的命令:

    geth --datadir dev-chain --dev --http --http.api web3,eth,net --http.corsdomain https://remix.ethereum.org --http.addr 0.0.0.0 --http.port 8545 --http.vhosts "*"
    

    重启节点后再尝试连接。

  • 确认端点地址正确性
    在Remix的「External HTTP Provider Endpoint」中,务必填写服务器的公网IP(可在GCP实例详情页获取),格式为http://<公网IP>:8545,不要使用内网IP。

  • 测试端点连通性
    在本地终端执行curl命令测试节点是否可达:

    curl http://<公网IP>:8545 -X POST -H "Content-Type: application/json" --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
    

    若返回类似{"jsonrpc":"2.0","id":1,"result":"0x123"}的结果,说明节点服务正常,此时再回到Remix尝试连接即可。

内容的提问来源于stack exchange,提问作者Xiushu Jin

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 10:23:35