【问题标题】:"hostname resolves to the loopback address" error in Matlab Distributed ComputingMatlab 分布式计算中的“主机名解析为环回地址”错误
【发布时间】:2018-07-11 02:04:21
【问题描述】:

Windows 10 专业版,活动目录。我正在尝试运行 Mathworks Matlab 分布式计算。该软件与另一台计算机上的进程通信,但停止并说“主机名解析为环回地址”。 Mathworks 让我尝试了一些事情。将环回地址 127.0.0.1 分配给 HOSTS 文件中的主机名。在 HOSTS 文件中分配主机名的实际 (DHCP) IP 地址。删除了 IPv6。设置环境变量 FNP_IP_ENV=1。这些都没有任何效果。有没有其他软件出现“hostname resolves to the loopback address”的错误?

【问题讨论】:

  • 请查看 mathworks.com 以及此类问题的解决方案。
  • Mathworks 支持团队无法解决此问题。它已上报给开发团队。

标签: matlab hostname loopback


【解决方案1】:

我遇到了同样的问题,并且能够解决它。我的集群混合了 Linux (Ubuntu 18.04)、Windows 7 和 Windows 10 Pro。我最初遇到的问题是主机名在从同一台机器上 ping 时会解析为 ipv4 环回地址 127.0.0.1。这在 Linux 机器和 Windows 7 上已通过在每台机器上的主机文件中添加一行 192.168.0.XX 主机名来解决, 其中 XX 是我 LAN 上该机器的实际保留 IP 结尾,主机名是相关机器的主机名。如果您已经添加了它并且在 ping 主机名后仍然获得 ipv4 环回,您应该检查 Windows 是否没有忽略您的主机文件。如果格式、文件权限、空格等不正确,Windows 可以忽略它。有关此问题的更多疑难解答,请参阅 https://serverfault.com/questions/452268/hosts-file-ignored-how-to-troubleshoot。 查看它是否被忽略的一个简单测试是添加表单的另一个条目:

192.168.0.XX hostname2

即(网络上其他一些虚构的 IP 地址)(虚构的主机名)

然后 ping 主机名 2。如果 IP 是编造的,您将不会收到回复,但您仍然应该能够看到该名称正在解析为您放入 hosts 文件中的任何 IP。如果没有,则不会处理主机。 hosts 文件更改应立即生效。

即使我的主机文件正确设置了 ipv4 地址,我在 Windows 10 上也遇到了类似的问题,除了在这种情况下,即使我禁用了 ipv6,它也解析为 ipv6 环回地址 ::1。显然,即使对外部 LAN 流量禁用了 ipv6,ipv6 环回网络适配器也始终处于活动状态。我可以通过在命令窗口中使用 netsh 编辑前缀策略将 ipv4 设置为机器的首选协议来解决此问题。

就我而言,我使用的命令是:

netsh int ipv6 set prefixpolicy ::/0 32 1
netsh int ipv6 set prefixpolicy ::1/128 33 0

这些设置 ipv6 和 ipv6 环回的优先级(分别为 32 和 33)低于 ipv4 默认优先级(35)。

以下是修改前的标准前缀策略,顶部是ipv6:

C:\WINDOWS\system32>netsh interface ipv6 show prefixpolicies
Querying active state...

Precedence  Label  Prefix
----------  -----  --------------------------------
        50      0  ::1/128
        40      1  ::/0
        35      4  ::ffff:0:0/96
        30      2  2002::/16
         5      5  2001::/32
         3     13  fc00::/7
         1     11  fec0::/10
         1     12  3ffe::/16
         1      3  ::/96

以下是上述 2 个命令之后的策略,ipv6 就在 ipv4 之下:

C:\WINDOWS\system32>netsh interface ipv6 show prefixpolicies
Querying active state...

Precedence  Label  Prefix
----------  -----  --------------------------------
        35      4  ::ffff:0:0/96
        33      0  ::1/128
        32      1  ::/0
        30      2  2002::/16
         5      5  2001::/32
         3     13  fc00::/7
         1     11  fec0::/10
         1     12  3ffe::/16
         1      3  ::/96

此线程有更多关于前缀策略的信息: https://superuser.com/questions/436574/ipv4-vs-ipv6-priority-in-windows-7

在这些更改之后,我检查了每台机器自己的主机名的 ping,当从同一台机器上完成时,返回保留的 ipv4 网络地址,并从 Matlab 并行服务器管理中心重新运行“测试连接”测试并有没有更多的错误。之后我的集群正常工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-03-12
    • 2013-03-25
    • 1970-01-01
    • 2014-10-13
    • 2013-01-29
    • 1970-01-01
    • 2021-01-20
    • 2011-05-07
    相关资源
    最近更新 更多