RPC:端口映射为 运行 时出现超时错误

RPC: Timed out error when portmap is running

当我尝试使用以下方法注册应用程序时,收到 "RPC: Timed out" 错误

if (!svc_register(transp, AVERAGEPROG, AVERAGEVERS, averageprog_1, IPPROTO_TCP)) {
    fprintf (stderr, "%s", "unable to register (AVERAGEPROG, AVERAGEVERS, tcp).");
    exit(1);                                                                  
}

我已经重新启动了端口映射服务,但这并没有帮助。此外,我检查以确保我没有 hosts.deny 文件,所以我知道这里的连接没有被阻止。使用

rpcinfo -p <host>

我得到以下输出:

program vers proto   port
100000    2   tcp    111  portmapper
100000    2   udp    111  portmapper

表明端口映射是 运行 应该的。是否有我遗漏的东西导致端口映射阻止传入的 RPC 应用程序?

此问题已通过 ifconfig 使用以下命令启用环回接口解决:

$ ifconfig lo 127.0.0.1 

Portmap 似乎需要这个才能映射 RPC 应用程序。