This issue occurs if you have different broadcast domains in conjunction with port binding, which is used to enable multipathing with a single target portgroup array.
Consider this sample iSCSI configuration, assuming the standard class-C netmask (255.255.255.0):
ESXi/ESX host:
- vmk1 IP – 10.10.37.1
- vmk2 IP – 10.10.38.1
- vmk3 IP – 10.10.37.2
- vmk4 IP – 10.10.38.2
Storage arrays:
- SAN A IP – 10.10.37.30
- SAN B IP – 10.10.38.30
When port binding is used, the software iSCSI stack asks all VMkernel ports to log in to all available targets on the storage arrays. This results in vmkernel ports vmk1 (10.10.37.1) and vmk3 (10.10.37.2) attempting to establish communication with the SAN B IP address (10.10.38.30), and vice versa.
Port binding requires that all target ports of the storage array must reside on the same broadcast domain as the vmkernel ports because routing is not supported with port binding.