0

0

Linux 下 iSCSI initiator 连接目标超时但 ping 通的排查路径

舞夢輝影

舞夢輝影

发布时间:2026-01-23 12:37:02

|

136人浏览过

|

来源于php中文网

原创

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

linux 下 iscsi initiator 连接目标超时但 ping 通的排查路径

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 阶段无响应(看似超时)。常见错误包括:

Synthesys
Synthesys

Synthesys是一家领先的AI虚拟媒体平台,用户只需点击几下鼠标就可以制作专业的AI画外音和AI视频

下载
  • initiator 的 /etc/iscsi/iscsid.confnode.session.auth.authmethod 设为 CHAP,但 username/password 未正确设置或未取消注释
  • target 侧 CHAP 用户名与 initiator 提供的 username 不一致(注意大小写和空格)
  • target 要求 mutual CHAP,但 initiator 未配置 node.session.auth.username_innode.session.auth.password_in
  • 修改后需执行 iscsiadm -m node -u(登出)再 iscsiadm -m node -l(重登)使配置生效

查看 iscsiadm 日志与内核消息

登录失败时,详细线索藏在日志中:

  • 启用调试日志:iscsiadm -m node -T -p --op=update -n node.session.timeo.login_timeout -v 30,再尝试 login
  • 实时跟踪: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”并保存应用

相关专题

更多
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

堆和栈的区别
堆和栈的区别

堆和栈的区别:1、内存分配方式不同;2、大小不同;3、数据访问方式不同;4、数据的生命周期。本专题为大家提供堆和栈的区别的相关的文章、下载、课程内容,供大家免费下载体验。

393

2023.07.18

堆和栈区别
堆和栈区别

堆(Heap)和栈(Stack)是计算机中两种常见的内存分配机制。它们在内存管理的方式、分配方式以及使用场景上有很大的区别。本文将详细介绍堆和栈的特点、区别以及各自的使用场景。php中文网给大家带来了相关的教程以及文章欢迎大家前来学习阅读。

574

2023.08.10

磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

1352

2023.06.21

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

704

2023.06.29

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

294

2023.06.30

C++ 高级模板编程与元编程
C++ 高级模板编程与元编程

本专题深入讲解 C++ 中的高级模板编程与元编程技术,涵盖模板特化、SFINAE、模板递归、类型萃取、编译时常量与计算、C++17 的折叠表达式与变长模板参数等。通过多个实际示例,帮助开发者掌握 如何利用 C++ 模板机制编写高效、可扩展的通用代码,并提升代码的灵活性与性能。

8

2026.01.23

热门下载

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

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 7.6万人学习

Git 教程
Git 教程

共21课时 | 2.9万人学习

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

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