grpc 使用了错误的 IP 地址

Posted

技术标签:

【中文标题】grpc 使用了错误的 IP 地址【英文标题】:grpc uses wrong ip address 【发布时间】:2021-10-27 19:11:37 【问题描述】:

启动我的 grpc 服务器时,我收到一条错误消息,提示“在已解决的总数 1 中未添加地址”和“必须绑定服务器才能启动”。在将它与工作服务器进行比较后,我意识到,虽然工作服务使用 127.0.0.1 和配置的端口作为 ip 地址,但损坏的服务尝试使用 0.0.31.170 端口 443。这个错误的地址是从第 156 行传递的resolver-dns.js 文件(通过运行 npm install @grpc/grpc-js 获得)。有谁知道为什么会发生这种情况?简而言之,这就是我的服务器的创建方式:

server.bindAsync(process.env.GRPC_PORT, credentials, () => 
  server.start();
  console.log("gRPC server started at " + process.env.GRPC_PORT);
);

【问题讨论】:

【参考方案1】:

我不完全理解你的问题。

见:https://grpc.io/docs/languages/node/basics/#starting-the-server

你需要:

bindAsync 中包含某种形式的主机名|IP 端口 (host:port) 如果你不使用 TLS,你也需要createInsecure

即:

server.bindAsync(
  `$process.env.GRPC_HOST:$process.env.GRPC_PORT`,
  grpc.ServerCredentials.createInsecure(), () => 
    server.start();
    ...
);

【讨论】:

如果我的问题不清楚,我很抱歉。这个很难解释。看起来这个包不能总是弄清楚它正在运行的设备的名称/IP是什么。添加主机名或 IP 地址即可解决问题。 无需道歉;这可能是我的问题。我很高兴得知它正在工作

以上是关于grpc 使用了错误的 IP 地址的主要内容,如果未能解决你的问题,请参考以下文章

GRPC状态码

Ip地址错误怎么解决

由于连接被强制终止,使用 ngrok 测试 gRPC 失败

电脑设置ip地址后无法上网怎么解决

gRPC IdentityServer4 错误:无法使用 google auth 登录

电脑出现ip地址错误网络连不上网怎么办