Re: [PATCH 07/15] SUNRPC: Add API to acquire source address

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Chuck Lever wrote:

  NFSv4.0 clients must send endpoint information for their callback
  service to NFSv4.0 servers during their first contact with a server.
  Traditionally on Linux, user space provides the callback endpoint IP
  address via the "clientaddr=" mount option.
  
  During an NFSv4 migration event, it is possible that an FSID may be
  migrated to a destination server that is accessible via a different
  source IP address than the source server was.  The client must update
  callback endpoint information on the destination server so that it can
  maintain leases and allow delegation.
  
  Without a new "clientaddr=" option from user space, however, the
  kernel itself must construct an appropriate IP address for the
  callback update.  Provide an API in the RPC client for upper layer
  RPC consumers to acquire a source address for a remote.
  
  The mechanism used by the mount.nfs command is copied: set up a
  connected UDP socket to the designated remote, then scrape the source
  address off the socket.  We are careful to select the correct network
  namespace when setting up the temporary UDP socket.

That seems like a lot of work.  On OpenBSD it's a one-liner, a call into the
routing system to get the device and source address that would be used to
talk to a given destination.  Is there no equivalent in linux?
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux