Bug 11898 - SMB3 multichannel implementation needs integration with CTDB (public addresses)
SMB3 multichannel implementation needs integration with CTDB (public addresses)
Product: Samba 4.1 and newer
Classification: Unclassified
Component: File services
All All
: P5 normal
: ---
Assigned To: Michael Adam
Samba QA Contact
Depends on:
  Show dependency treegraph
Reported: 2016-05-04 19:28 UTC by Michael Adam
Modified: 2016-05-06 11:17 UTC (History)
2 users (show)

See Also:


Note You need to log in before you can comment on or make changes to this bug.
Description Michael Adam 2016-05-04 19:28:27 UTC
If CTDB public addresses (or externally managed virtual/floating IP addresses) are used for multi-channel, then there is the risk of creating a multi-channel session that spans multiple cluster nodes. This is due to the fact that the smb client is not aware that it is talking to a multi-host setup. This situation is something that needs to be prevented by all means, since at least currently the implementation of multichannel in samba is based on the principle that all connections of one multichannel session end up in a single smbd process. Otherwise, data corruption is possible due to lack of coordination.
Comment 1 Michael Adam 2016-05-04 19:30:52 UTC
There are several possible approaches, not completely mutually exclusive:

First is to prevent connections to a different host to be successful in sesion bind.

Second is to change samba to not hand out certain (the floating) addresses in the network_interface_info response if asked on a non-floating IP. On the other hand, if network_interface_info comes in via a floating IP, then only give back this single IP.