iSCSI login超时但ping通,说明网络层可达而问题出在协议栈或目标服务侧,需排查TCP 3260端口连通性、CHAP认证配置一致性、iscsiadm日志、目标服务状态及ACL访问控制。

ping 通但 iSCSI login 超时,说明网络层可达,问题出在 iSCSI 协议栈或目标服务侧。重点排查 TCP 连通性、端口状态、防火墙策略、iSCSI 配置一致性及目标响应能力。
确认 TCP 端口是否真正可达
iscsi 默认使用 TCP 3260 端口,仅 ping 通不等于该端口可建连。需用 telnet 或 nc 验证:
- telnet target_ip 3260 —— 若卡住或报 Connection refused/timeout,说明端口未监听、被拦截或目标服务未运行
- nc -zv target_ip 3260 —— 更可靠,能明确返回 succeeded 或 failed
- 注意:某些目标(如 TrueNAS)支持多端口(如 3261),需核对实际监听端口(ss -tlnp | grep 3260 或目标侧 netstat -tlnp)
检查 initiator 和 target 的 CHAP 认证配置
CHAP 启用但凭据不匹配,会导致 login 阶段无响应(看似超时)。常见错误包括:
- initiator 的 /etc/iscsi/iscsid.conf 中 node.session.auth.authmethod 设为 CHAP,但 username/password 未正确设置或未取消注释
- target 侧 CHAP 用户名与 initiator 提供的 username 不一致(注意大小写和空格)
- target 要求 mutual CHAP,但 initiator 未配置 node.session.auth.username_in 和 node.session.auth.password_in
- 修改后需执行 iscsiadm -m node -u(登出)再 iscsiadm -m node -l(重登)使配置生效
查看 iscsiadm 日志与内核消息
登录失败时,详细线索藏在日志中:
- 启用调试日志:iscsiadm -m node -T
-p ,再尝试 login--op=update -n node.session.timeo.login_timeout -v 30 - 实时跟踪:tail -f /var/log/messages | grep -i "iscsi\|kernel" 或 journalctl -u iscsid -f
- 关注关键词:"connection reset"(目标主动断连)、"no route to host"(路由异常)、"login failed"(认证或权限拒绝)、"session failed"(目标拒绝会话建立)
验证目标服务状态与 ACL 设置
即使 iscsid 进程在运行,目标可能未正确导出 LUN 或限制了访问:
- 登录目标服务器,确认 iscsi 服务活跃:systemctl status target(Linux targetcli)或 service tgtd status
- 检查 target 是否真正绑定了 IQN 和 IP:targetcli ls 查看 backstores、iscsi/
/tpg1/acls/ 下是否有 initiator 的 IQN 条目 - 确认 ACL 允许的 initiator IQN 与本地 /etc/iscsi/initiatorname.iscsi 中定义的一致(包括拼写、大小写、前缀)
- 某些 NAS(如 Synology)需在 Web 界面显式启用“允许此 initiator”并保存应用










