I'm doing some experiment with iSCSI MPIO between FreeNAS 9.3 and two XenServer 6.5 hosts. I would like to use iSCSI MPIO to serve as VM storage. Pretty common environment, but without a switch to reduce the cost of the solution and minimize the overhead added by a switch on the iSCSI network.
The architecture is the following: There are 10x GigE interfaces on the FreeNAS Server, two integrated intel boards on the motherboard and two 4x GigE combo cards.
I've created /30 links between the combo cards and the two XenServer hosts, in the following way:
Connection to Host #1: igb0: 192.168.10.1/30 igb4: 192.168.11.1/30 Connection to Host #2: igb1: 192.168.20.1/30 igb5: 192.168.21.1/30
As you can see it's pretty explicative, the XenServer hosts have the following matched IP's:
192.168.10.2/30 192.168.11.2/30 192.168.20.2/30 192.168.21.2/30
But here the problem starts. I cannot start an iSCSI connection with a Portal with those 4 addresses. It fails when searching for the LUN, during the IQN phase. If I completely forget about the 192.168.20.1,192.168.21.1 IP addresses, I can find the LUN, but host #2 will be without an iSCSI network, since the 192.168.10.0/30 and 192.168.11.0/30 networks are unreachable. They are point-to-point links.
According the FreeNAS documentation I can create multiple portals. Which appears to be a solution, but I've tried to do this without success. I cannot map the same LUN on different portals, so it impossible.
Another solution would be using more than one IP on the same subnet on the FreeNAS box, but as all we know this is broken TCP networking.
The last effort is to create the XenServer iSCSI SR over the CLI with a very specific setting. But I wasn't able to try this by myself.