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

发布时间 - 2026-01-23 00:00:00    点击率:
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.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/iscs

    i/initiatorname.iscsi
    中定义的一致(包括拼写、大小写、前缀)
  • 某些 NAS(如 Synology)需在 Web 界面显式启用“允许此 initiator”并保存应用


# linux  # word  # node  # 防火墙  # 端口  # session  #   # ai  # 路由  # nas  # connection reset 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何在宝塔面板中修改默认建站目录?  做企业网站制作流程,企业网站制作基本流程有哪些?  黑客如何利用漏洞与弱口令入侵网站服务器?  香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化  Laravel怎么配置自定义表前缀_Laravel数据库迁移与Eloquent表名映射【步骤】  1688铺货到淘宝怎么操作 1688一键铺货到自己店铺详细步骤  phpredis提高消息队列的实时性方法(推荐)  laravel服务容器和依赖注入怎么理解_laravel服务容器与依赖注入解析  Thinkphp 中 distinct 的用法解析  北京网站制作公司哪家好一点,北京租房网站有哪些?  laravel怎么配置Redis作为缓存驱动_laravel Redis缓存配置教程  绝密ChatGPT指令:手把手教你生成HR无法拒绝的求职信  ,网页ppt怎么弄成自己的ppt?  如何快速生成凡客建站的专业级图册?  微信公众帐号开发教程之图文消息全攻略  Laravel与Inertia.js怎么结合_使用Laravel和Inertia构建现代单页应用  佛山网站制作系统,佛山企业变更地址网上办理步骤?  微博html5版本怎么弄发超话_超话进入入口及发帖格式要求【教程】  微信小程序 配置文件详细介绍  Laravel怎么使用Session存储数据_Laravel会话管理与自定义驱动配置【详解】  使用PHP下载CSS文件中的所有图片【几行代码即可实现】  如何在 Go 中优雅地映射具有动态字段的 JSON 对象到结构体  高端智能建站公司优选:品牌定制与SEO优化一站式服务  如何快速搭建高效可靠的建站解决方案?  JavaScript如何操作视频_媒体API怎么控制播放  Laravel的.env文件有什么用_Laravel环境变量配置与管理详解  如何挑选优质建站一级代理提升网站排名?  Laravel项目结构怎么组织_大型Laravel应用的最佳目录结构实践  制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?  如何快速查询网站的真实建站时间?  如何生成腾讯云建站专用兑换码?  什么是JavaScript解构赋值_解构赋值有哪些实用技巧  Laravel路由Route怎么设置_Laravel基础路由定义与参数传递规则【详解】  微信小程序 scroll-view组件实现列表页实例代码  JavaScript数据类型有哪些_如何准确判断一个变量的类型  Win11怎么关闭透明效果_Windows11辅助功能视觉效果设置  如何在IIS中新建站点并配置端口与IP地址?  免费视频制作网站,更新又快又好的免费电影网站?  Laravel如何优雅地处理服务层_在Laravel中使用Service层和Repository层  Laravel怎么做缓存_Laravel Cache系统提升应用速度的策略与技巧  如何快速启动建站代理加盟业务?  在线教育网站制作平台,山西立德教育官网?  如何在万网利用已有域名快速建站?  php在windows下怎么调试_phpwindows环境调试操作说明【操作】  如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南  Linux虚拟化技术教程_KVMQEMU虚拟机安装与调优  js实现获取鼠标当前的位置  如何自定义safari浏览器工具栏?个性化设置safari浏览器界面教程【技巧】  Laravel怎么实现API接口鉴权_Laravel Sanctum令牌生成与请求验证【教程】  香港服务器选型指南:免备案配置与高效建站方案解析