概念

iSCSI Initiator
发起端,是客户端角色。负责通过网络向存储设备发起连接请求,并访问远程磁盘。在 Windows 中,指系统自带的 iSCSI 客户端功能。


IP SAN(Internet Protocol Storage Area Network)
基于 IP 网络构建的存储区域网络。通过以太网传输存储数据,使远程磁盘可以像本地硬盘一样被使用。


Windows iSCSI Initiator
Windows 操作系统自带的工具(服务),用于:


iSCSI(Internet Small Computer System Interface)
一种存储传输协议。作用是将磁盘数据封装在 TCP/IP 网络中传输,使远程存储可以被当作本地块设备使用。


iSCSI Target
目标端,是服务器角色。负责提供存储资源(磁盘或虚拟磁盘),等待客户端连接。在你的实验中,FreeNAS 充当 Target。


关系总结
Initiator(客户端)通过 iSCSI 协议连接 Target(服务器),在 IP 网络上实现远程磁盘访问,这个整体体系称为 IP SAN。

实验名称

基于 FreeNAS 的 iSCSI 存储连接实验(Windows Initiator)


实验目标

  1. 在 FreeNAS 上完成 iSCSI 存储配置
  2. 在 Windows 中配置 iSCSI Initiator
  3. 成功连接 IP SAN(192.168.1.100)
  4. 将远程磁盘挂载为本地磁盘并完成读写

实验环境


实验拓扑

Windows客户端(Initiator)
        │
        │
      局域网
        │
        │
FreeNAS服务器(iSCSI Target)

实验内容与步骤


第一部分:FreeNAS 端配置 iSCSI

(界面基于 FreeNAS-11.2-U4.1)


1. 创建 ZVOL

路径:
Storage → Pools → 选择存储池(如 tank)→ Add Zvol

设置:


2. 启动 iSCSI 服务

路径:
Services → iSCSI

操作:


3. 配置 iSCSI

路径:
Sharing → Block (iSCSI)


(1)创建 Portal Groups

设置:


(2)创建 Initiators Groups

设置:


(3)创建 Targets

设置:


(4)创建 Extents

设置:


(5)关联 Target 与 Extent

设置:

说明:
该步骤为关键步骤,未完成将无法使用存储


第二部分:Windows 配置 iSCSI Initiator


1. 打开 iSCSI Initiator

操作:
Win + R → 输入:

iscsicpl

首次打开选择“是”启动服务


2. 添加目标门户

在“Discovery(发现)”选项卡中:


3. 连接 Target

切换到“Targets(目标)”选项卡:

勾选:


第三部分:磁盘初始化与使用


1. 打开磁盘管理

Win + X → 磁盘管理


2. 初始化磁盘


3. 创建分区

操作:


4. 验证结果

在“此电脑”中应出现新磁盘


5. 写入测试

创建文件:iscsi_test.txt

写入内容:
iSCSI实验成功


实验原理说明

iSCSI 是一种基于 IP 网络的存储协议,可以将远程存储设备映射为本地磁盘。

在本实验中:


基于 FreeNAS 的 iSCSI 存储连接实验(ubuntu22.04)


一、安装 iSCSI 工具

Ubuntu 22.04 默认没有安装 iSCSI 客户端,需要安装:

sudo apt update
sudo apt install open-iscsi -y

二、启动 iSCSI 服务

sudo systemctl enable --now iscsid
sudo systemctl enable --now open-iscsi

检查服务状态:

systemctl status iscsid

三、发现 FreeNAS 上的 Target

假设 FreeNAS IP 是 192.168.1.100

sudo iscsiadm -m discovery -t sendtargets -p 192.168.1.100

输出类似:

192.168.1.100:3260,1 iqn.2026-iscsi.lab:target1

四、登录 Target(连接远程硬盘)

sudo iscsiadm -m node -T iqn.2026-iscsi.lab:target1 -p 192.168.1.100 --login

五、设置开机自动连接

sudo iscsiadm -m node -T iqn.2026-iscsi.lab:target1 -p 192.168.1.100 --op update -n node.startup -v automatic

六、查看新磁盘

lsblk

你会看到一个新设备,例如 /dev/sdb


七、格式化磁盘

sudo mkfs.xfs /dev/sdb

(也可以用 ext4,推荐 xfs


八、挂载磁盘

sudo mkdir -p /mnt/iscsi
sudo mount /dev/sdb /mnt/iscsi

测试写入:

echo "iSCSI success" | sudo tee /mnt/iscsi/test.txt

九、开机自动挂载(可选)

  1. 查看 UUID:
blkid /dev/sdb

输出示例:

/dev/sdb: UUID="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" TYPE="xfs"
  1. 编辑 fstab:
sudo nano /etc/fstab

添加一行:

UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx  /mnt/iscsi  xfs  _netdev  0  0

保存退出即可。