On Sun, 2022-10-02 at 14:35 +0200, Manfred Schwarb wrote: > Hi, > > I have 2 boxes connected with 2 network cards each, one > crossover connection and one connection via LAN. > I want to use the crossover connection for backup, > so I want to be able to select exactly this wire when > doing my NFS backup transfers. Everything interconnected via NFS4.1 > and automount. > > Now the thing is, if there is an already existing connection > via LAN, I am not able to select the crossover connection, > there is some session reuse against my will. > > automount config: > /net/192.168.99.1 -fstype=nfs4,nfsvers=4,minorversion=1,clientaddr=192.168.99.100 / 192.168.99.1:/ > /net2/192.168.98.1 -fstype=nfs4,nfsvers=4,minorversion=1,clientaddr=192.168.98.100 / 192.168.98.1:/ > > mount -l: > 192.168.99.1:/data on /net/192.168.99.1/data type nfs4 (...,clientaddr=192.168.99.100,addr=192.168.99.1) > 192.168.99.1:/data on /net2/192.168.98.1/data type nfs4 (...,clientaddr=192.168.99.100,addr=192.168.99.1) > > As you see, both connections are on "192.168.99.1:/data", and the backup runs > over the same wire as all user communication, which is not desired. > This even happens if I explicitly set some clientaddr= option. > > Now I found two workarounds: > - downgrade to NFS 4.0, clientaddr seems to work with it > - choose different NFS versions, i.e. one connection with > minorversion=1 and the other with minorversion=2 > > Both possibilities seem a bit lame to me. > Are there some other (recommended) variants which do what I want? > > It seems different minor versions result in different "nfs4_unique_id" values, > and therefore no session sharing occurs. But why do different network > interfaces (via explicitly set clientaddr= by user) not result in different > "nfs4_unique_id" values? > > Thanks for any comments and advice, > Manfred That sounds like a bug. We probably need to compare the clientaddr values in nfs_compare_super or nfs_compare_mount_options so that it doesn't match if the clientaddrs are different. As a workaround, you can probably mount the second mount with -o nosharecache and get what you want. -- Jeff Layton <jlayton@xxxxxxxxxx>