Hide Forgot
Description of problem: iscsiadm are showing "no route to host" when scsi-target firewall REJECT the 3260 port. == iscsiadm: cannot make connection to 10.66.13.207: No route to host == This error message are quit confusing. The correct should be "Connection was reset" if got firewall blocking. Version-Release number of selected component (if applicable): iscsi-initiator-utils-6.2.0.872-25.el6.x86_64 How reproducible: 100% Steps to Reproduce: 1. Start tgtd on a server with firewall REJECT 3260 port. 2. Try to perfrom discovery st to that tgtd. 3. Check the error message. Actual results: iscsiadm: cannot make connection to 10.66.13.207: No route to host Expected results: iscsiadm: cannot make connection to 10.66.13.207: Connection was reset or target port not open. Additional info: In this case, firewall was set to REJECT (RHEL default setting), so that iscsi got instantly reply of FIN, in this case, we inform user as connection was reset or target port no open. If firewall was set to DROP, iscsi will timeout.
(In reply to comment #0) > Description of problem: > iscsiadm are showing "no route to host" when scsi-target firewall REJECT the > 3260 port. > == > iscsiadm: cannot make connection to 10.66.13.207: No route to host > == > This error message are quit confusing. > The correct should be "Connection was reset" if got firewall blocking. > I do not really have any control over the error message. I do not really know what is going on at the TCP/IP level. I am just opening a socket, and then I get back some error value in the errno value. I then do strerror(errno) to get the string. Do you see the same incorrect error message with other apps? If so, I think this is a common bug in the network kernel code or libc code and we should fix it there.
Gris, I am going to close this or reassign. There is nothing the iscsi tools can do here. We get "no route to host" from the tcp/ip layer. The iscsi layer uses normal old sockets, so we do not have any control over what they are returning.