Назад | Перейти на главную страницу

как указать ipv6-адрес для использования при монтировании nfs

У моего ноутбука несколько IPv6-адресов. Мой NAS принимает только один конкретный из них для монтирования папки NAS с NFS.

Я монтирую общий ресурс NAS с помощью

sudo mount [fd80:foo::bar]:/Media /mnt/NASshare

Но при этом высока вероятность, что мой ноутбук использует один из своих IPv6-адресов, что не разрешено NAS.

У меня вопрос: как я могу указать IPv6-адрес при монтировании моего общего ресурса NAS?

Из NFS (5) nfs - формат fstab и параметры для файловых систем nfs:

   clientaddr=n.n.n.n

   clientaddr=n:n:...:n
                  Specifies a single IPv4 address (in  dotted-quad  form),
                  or  a  non-link-local  IPv6 address, that the NFS client
                  advertises to allow servers to  perform  NFS  version  4
                  callback  requests against files on this mount point. If
                  the  server is unable to establish callback  connections
                  to  clients,  performance  may  degrade,  or accesses to
                  files may temporarily hang.

                  If this option is not specified,  the  mount(8)  command
                  attempts  to  discover  an  appropriate callback address
                  automatically.  The automatic discovery process  is  not
                  perfect,  however.   In  the presence of multiple client
                  network interfaces, special routing policies, or  atypi-
                  cal  network  topologies,  the  exact address to use for
                  callbacks may be nontrivial to determine.

Что предложило бы добавить это к /etc/fstab (с участием fd80:c0f::fee в качестве желаемого IP-адреса):

fd80:foo::bar:/Media    /mnt/NASshare    nfs    rw,clientaddr=fd80:c0f::fee 0 0

Но, как уже упоминалось, этот процесс автоматического обнаружения не идеален.

Возможно, вам нужно добавить определенные route к вашему NAS.

Или, если можно использовать ip netns пространства имен, тогда вы можете:

  1. Создайте пространство имен: ip netns add NASNamespace.
  2. Свяжите его с интерфейсом: ip link set eth0 netns NASNamespace
  3. Настройте для него IP: ip netns exec NASNamespace ifconfig eth0 fd80:c0f::fee/64 up
  4. Принудительно запускать монтирование внутри пространства имен: ip netns exec NASNamespace mount