NFS 随机挂载错误的服务器

NFS 随机挂载错误的服务器

我遇到了一个让我困惑的 NFS 问题。我甚至无法给出一个合理的解释。我有十台机器:

从站1(10.0.0.10)-从站10(10.0.0.20)

每个都运行 NFS 服务器并导出一个目录。

我像往常一样挂载目录:

sudo mount 10.0.0.11:/var/export /mnt/slave/1/ -o soft
sudo mount 10.0.0.12:/var/export /mnt/slave/2/ -o soft
...
sudo mount 10.0.0.20:/var/export /mnt/slave/10/ -o soft

此时,坐骑看起来如下:

10.0.0.11:/var/export on /mnt/slaves/1 type nfs (rw,soft,vers=4,addr=10.0.0.11,clientaddr=10.3.3.212)
10.0.0.12:/var/export on /mnt/slaves/2 type nfs (rw,soft,vers=4,addr=10.0.0.12,clientaddr=10.3.3.212)
10.0.0.13:/var/export on /mnt/slaves/3 type nfs (rw,soft,vers=4,addr=10.0.0.13,clientaddr=10.3.3.212)
10.0.0.14:/var/export on /mnt/slaves/4 type nfs (rw,soft,vers=4,addr=10.0.0.14,clientaddr=10.3.3.212)
10.0.0.15:/var/export on /mnt/slaves/5 type nfs (rw,soft,vers=4,addr=10.0.0.15,clientaddr=10.3.3.212)
10.0.0.16:/var/export on /mnt/slaves/6 type nfs (rw,soft,vers=4,addr=10.0.0.16,clientaddr=10.3.3.212)
10.0.0.17:/var/export on /mnt/slaves/7 type nfs (rw,soft,vers=4,addr=10.0.0.17,clientaddr=10.3.3.212)
10.0.0.18:/var/export on /mnt/slaves/8 type nfs (rw,soft,vers=4,addr=10.0.0.18,clientaddr=10.3.3.212)
10.0.0.19:/var/export on /mnt/slaves/9 type nfs (rw,soft,vers=4,addr=10.0.0.19,clientaddr=10.3.3.212)
10.0.0.20:/var/export on /mnt/slaves/10 type nfs (rw,soft,vers=4,addr=10.0.0.20,clientaddr=10.3.3.212)

现在,让我困惑的是,有些坐骑随机指向了错误的服务器!

例如,文件 /mnt/slaves/2 可能来自从站 5 (10.0.0.15)。或者可能来自从站 9。或者如果我幸运的话,来自从站 2。卸载并再次安装,使用完全相同的行会导致安装随机指向另一个从站。通过重新安装足够多次(并且每次检查是否找到了正确的从站),我可以正确安装,但这很烦人。

使用 ubuntu 14.04.1 LTS 时出现了该问题。

一些信息:

  • 这不是 DNS。我们没有使用 DNS。
  • 这不是 IP/Mac 地址冲突。所有其他协议(SSH、HTTP 等)都转到正确的从属设备。
  • 我在日志中看不到任何内容,据我所知,主设备认为它与正确的从设备进行了通信。
  • 使用 wireshark,我看到一些流量流向正确的从属设备。主设备发送 SETCLIENTID 命令,因此它启动通信。此后通信就停止了。没有发送 SETCLIENTID_CONFIRM。

因此,我现在想知道:

  • 这是某种已知的错误吗?
  • 有解决方法吗?

我已经设法在不同时间设置的两个不同的 Ubuntu 系统上重现了相同的行为,因此它并不局限于单个服务器。

相关内容