0

0

iSCSI initiator 连接目标超时但 iscsiadm -m discovery 正常的网络排查

舞夢輝影

舞夢輝影

发布时间:2026-01-22 17:37:14

|

873人浏览过

|

来源于php中文网

原创

iSCSI登录超时需分四步排查:先验证目标端3260端口可达及服务状态;再检查CHAP认证配置一致性;接着排除防火墙与中间网络设备干扰;最后核查会话参数、内核日志及协议兼容性。

iscsi initiator 连接目标超时但 iscsiadm -m discovery 正常的网络排查

灵光
灵光

蚂蚁集团推出的全模态AI助手

下载

确认目标端服务状态与端口可达性

虽然 iscsiadm -m discovery 能成功发现目标(说明 TCP 3260 端口在发现阶段可通),但连接超时往往发生在登录(login)阶段,此时需建立完整 iSCSI 会话。先验证目标 IP 和端口是否真正可达:
- 使用 telnet 3260nc -zv 3260 测试端口连通性(注意:部分目标启用 CHAP 后可能对未认证连接快速拒绝,telnet 成功不等于 login 成功);
- 检查目标端 iscsid 或 target service(如 tgt、lio、scst)是否运行且监听在对应 IP/端口,例如 ss -tlnp | grep :3260
- 确认目标未配置 ACL 限制发起端 IQN,或仅允许特定网络访问(常见于企业存储设备 Web 界面中的“允许主机”或“Initiator ACL”设置)。

检查发起端 CHAP 认证配置一致性

Discovery 通常不触发认证,而 Login 必须完成 CHAP(如果目标启用)。若目标要求双向或单向 CHAP,但发起端未正确配置,就会静默超时:
- 查看目标是否启用 CHAP:在目标端检查配置(如 tgt 中 ... auth );
- 在发起端确认 /etc/iscsi/iscsid.conf 中:
node.session.auth.authmethod = CHAP
node.session.auth.username =
node.session.auth.password =
(若启用双向认证,还需设置 node.session.auth.username_innode.session.auth.password_in);
- 执行 iscsiadm -m node -T -p --op=update -n node.session.auth.authmethod -v CHAP 等命令同步配置后,再用 --login 尝试。

排查防火墙与中间网络设备干扰

Discovery 使用 SendTargets(UDP 3260 或 TCP 3260),Login 则依赖稳定长连接的 TCP 会话,更易受中间策略影响:
- 发起端和目标端的本地防火墙(如 firewalld、iptables)需放行 TCP 3260 入/出方向;
- 若跨网段或经交换机/路由器,确认无 ACL、QoS 限速、TCP MSS 调整或连接跟踪老化(如 netfilter conntrack timeout 过短);
- 特别注意:某些安全设备或云平台(如 AWS Security Group、阿里云安全组)默认只放行 discovery 端口,未显式放行 login 流量(仍是 3260,但需保持连接);
- 可临时关闭两端防火墙测试,或用 tcpdump -i any port 3260 抓包观察 login 请求是否发出、有无 SYN_ACK、是否被 RST。

验证 iSCSI 会话参数与内核兼容性

部分超时源于参数协商失败或驱动异常:
- 检查发起端内核日志:dmesg | grep -i iscsi,关注 “session recovery”, “login failed”, “timeout” 等关键词;
- 尝试调大超时值(临时):iscsiadm -m node -T -p --op=update -n node.session.timeo.replacement_timeout -v 300
- 禁用一些高级特性测试是否兼容:iscsiadm -m node -T -p --op=update -n node.session.iscsi.InitialR2T -v No,或关闭 ImmediateData;
- 确保 initiator 版本与目标协议版本匹配(如 target 使用 iSCSI v2.0,旧版 open-iscsi 可能握手失败)。

相关专题

更多
session失效的原因
session失效的原因

session失效的原因有会话超时、会话数量限制、会话完整性检查、服务器重启、浏览器或设备问题等等。详细介绍:1、会话超时:服务器为Session设置了一个默认的超时时间,当用户在一段时间内没有与服务器交互时,Session将自动失效;2、会话数量限制:服务器为每个用户的Session数量设置了一个限制,当用户创建的Session数量超过这个限制时,最新的会覆盖最早的等等。

314

2023.10.17

session失效解决方法
session失效解决方法

session失效通常是由于 session 的生存时间过期或者服务器关闭导致的。其解决办法:1、延长session的生存时间;2、使用持久化存储;3、使用cookie;4、异步更新session;5、使用会话管理中间件。

745

2023.10.18

cookie与session的区别
cookie与session的区别

本专题整合了cookie与session的区别和使用方法等相关内容,阅读专题下面的文章了解更详细的内容。

88

2025.08.19

tcp和udp的区别
tcp和udp的区别

TCP和UDP的区别,在连接性、可靠性、速度和效率、数据报大小以及适用场景等方面。本专题为大家提供tcp和udp的区别的相关的文章、下载、课程内容,供大家免费下载体验。

119

2023.07.25

udp是什么协议
udp是什么协议

UDP是OSI参考模型中一种无连接的传输层协议。本专题为大家带来udp是什么协议的相关文章,免费提供给大家。

288

2023.08.08

tcp和udp有什么区别
tcp和udp有什么区别

tcp和udp的区别有:1、udp是无连接的,tcp是面向连接的;2、udp是不可靠传输,tcp是可靠传输;3、udp是面向报文传输,tcp是面向字节流传输。想了解更多tcp相关的内容,可阅读本专题下面的相关文章。

382

2024.11.14

Golang 性能分析与pprof调优实战
Golang 性能分析与pprof调优实战

本专题系统讲解 Golang 应用的性能分析与调优方法,重点覆盖 pprof 的使用方式,包括 CPU、内存、阻塞与 goroutine 分析,火焰图解读,常见性能瓶颈定位思路,以及在真实项目中进行针对性优化的实践技巧。通过案例讲解,帮助开发者掌握 用数据驱动的方式持续提升 Go 程序性能与稳定性。

9

2026.01.22

html编辑相关教程合集
html编辑相关教程合集

本专题整合了html编辑相关教程合集,阅读专题下面的文章了解更多详细内容。

53

2026.01.21

三角洲入口地址合集
三角洲入口地址合集

本专题整合了三角洲入口地址合集,阅读专题下面的文章了解更多详细内容。

28

2026.01.21

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
HTML5/CSS3/JavaScript/ES6入门课程
HTML5/CSS3/JavaScript/ES6入门课程

共102课时 | 6.8万人学习

前端基础到实战(HTML5+CSS3+ES6+NPM)
前端基础到实战(HTML5+CSS3+ES6+NPM)

共162课时 | 19万人学习

第二十二期_前端开发
第二十二期_前端开发

共119课时 | 12.5万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号