一、常见的存储类型和iSCSI 概念及介绍

1 、 常见的三种存储类型

DAS(Direct-AttachedStorage)直接附加存储,存储设备一般通过scsi/ide总线直接连接到主机上,常见的如SATA硬盘,SAS硬盘等,直接通过准线连接到计算机主板上面。该方式显著的优点就是传输速度快,但传输距离受总线长度限制,且只能供本地使用。


NAS(Network AttachedStorage)网络附加存储,将存储设备与服务器分离,集中管理数据,从而提升并发存储能力、降低维护成本。典型的应用示例有NFS服务器,SAMBA服务器,NFS服务器等文件服务器,通过向外提供文件系统的方式向外提供存储


SAN(Storage Area Network)存储区域网络,采用FC(Fibre Channel)光纤通道或者Ethernet进行远距离传输,区别于Fiber Channel光纤通道技术,通过FC交换机连接存储阵列和服务器主机,建立专用于数据存储的区域网络。SAN架构图如下所示:

Linux常见服务器存储类型和iSCSI共享存储

2、  三种存储类型的区别

DAS与SAN都是块级别(Block-level)的存储,而NAS是文件系统(File System level)级的存储。因为文件系统是操作系统对磁盘数据的一次封装。每次对数据访问时提供文件服务的服务器都要对数据进行数据封装,和解封装,然后再对块设备磁盘进行读写。而DAS是直接对块设备进行读写,因此NAS的存储速度不如前面两者。


SAN(Storage Area Network)相当于模拟了远距离传输的DAS,特点是速度快。支持的并发服务主机数量多。大家都知道远距离传输是需要跨越Internet,而广域网的带宽是远不能和局域网相比的,缺点便是网络速度瓶颈问题。


二、iSCSI简介

1、 iSCSI(Internet SmallComputer System Interface)基于Internet的小型计算机系统接口,由IBM公司研究开发的,是一个可以让硬件设备在IP协议的上层运行的SCSI指令集存储技术,可以实现在IP网络上运行SCSI协议,使其能够在诸如高速千兆以太网上进行路由选择。


2、 iSCSI技术是一种新储存技术,该技术是将现有SCSI接口与以太网络(Ethernet)技术结合,使服务器可通过IP网络进行远距离SCSI类型的数据存储设备由 SCSI 总线连接。


3、iSCSI 的主要功能是在 TCP/IP 网络上的主机系统(启动器 initiator)和存储设备(目标器 target)之间进行大量数据的封装和可靠传输过程。此外,iSCSI 提供了在 IP 网络封装 SCSI 命令,且以TCP/IP协议传输。iSCSI服务端程序监听端口为明文的TCP/3260

Linux常见服务器存储类型和iSCSI共享存储


4、iSCSI的工作过程

     当iSCSI主机应用程序发出数据读写请求后,操作系统会生成一个相应的SCSI命令,该SCSI命令在iSCSI initiator层被封装成ISCSI消息包并通过TCP/IP传送到物理存储控制器, 物理存储控制器的iSCSI target层会解开iSCSI消息包,得到SCSI命令的内容,然后执行scsi指令;设备执行SCSI命令后的响应,在经过设备侧iSCSI target层时被封装成ISCSI响应PDU,通过TCP/IP网络传送给主机的ISCSI initiator层, iSCSI initiator会从ISCSI响应PDU里解析出iSCSI响应并传送给操作系统,操作系统再响应给应用程序。


5、 iSCSI组成

         目标器 target用于存放硬盘存储资源的服务器,作为RAID磁盘阵列组的存储端,能够为用户提供可用的存储资源。

         启动器 initiator则是用户使用的iSCSI客户端,用于获取远程服务端的存储资源,通常以软件提供,但是也可以作为iSCSI HBA来实施。必须为启动器initiator授予全球唯一名称IQN用于识别。

         IQN:iSCSI限定名称,全球唯一名称,用于以强制命名格式来识别启动器和目标。

         IQN格式如下:iqn.[YYYY-MM].[com.reversed.domain]:[optional_string]

                                iqn:表示此名称使用域为标识符。

                                YYYY-MM:表示拥有域名的年月时间。

                                com.reversed.domain:拥有此iSCSI组织的逆向域名

                                optional_string:以冒号为前缀的可选字符串,全球唯一,由域所有者分配,其中可包含冒号为分割符的组织边界  

       LUN:Logical Unit Number的缩写,指逻辑单元号,带有编号的块设备,连接到目标器且通过目标器来使用。可以有一个或多个LUN连接到单个目标器,但通常一个目标器提供一个LUN。

       节点:任何一个iSCSI启动器或iSCSI目标器,由其IQN来标识。

       TPG:目标门户组,某个特定iSCSI目标要侦听的接口IP地址和TCP端口的集合。可以将目标配置添加到TPG以协调多个LUN的设置。

       ACL:访问权限控制列表,一种使用节点IQN(通常是启动器名称)来验证启动器的访问权限的访问限制。

      门户:目标或启动器上用于建立的IP地址和端口。

      发现:查询目标服务器以列出配置的目标。


6、iSCSI存储系统四大架构:PC系统架构     PC+NIC系统架构      连接桥系统架构       控制器系统架构

     PC系统架构:即选择一个普通的、性能优良的、可支持多块磁盘的PC(一般为PC服务器和工控服务器),选择一款相对成熟稳定的iSCSI target软件,将iSCSI target软件安装在PC服务器上,使普通的PC服务器转变成一台iSCSI存储设备,并通过PC服务器的以太网卡对外提供iSCSI数据传输协议。在PC架构的iSCSI存储设备上,所有的RAID组校验、逻辑卷管理、iSCSI 运算、TCP/IP 运算等都是以纯软件方式实现,因此对PC的CPU和内存的性能要求较高。另外iSCSI存储设备的性能极容易收PC服务器运行状态的影响。 


7、iSCSI协议

        iSCSI协议是让SCSI在TCP协议之上工作的传输协议,是一种SCSI远程过程调用模型到TCP协议的映射。SCSI命令加载在iSCSI请求之上,同时SCSI状态和响应也由iSCSI来承载。iSCSI同样使用请求响应机制。

 

    每个启动器和目标都指定了一个唯一的iSCSI 名称,如 iSCSI 限定名 (IQN) 或扩展的唯一标识(EUI)。 IQN 是 223 字节的 ASCII 名称。EUI 是 64 位标识。iSCSI 名称代表全球唯一命名方案,该方用于标识各启动器或目标,其方式与使用全球节点名(WWNN) 来标识光纤通道光纤网中设备的方式相同。

  Linux常见服务器存储类型和iSCSI共享存储

         iSCSI 目标是响应 iSCSI 命令的设备。iSCSI 设备可以是诸如存储设备的结束节点,或者可以是诸如IP 与光纤通道设备之间的网桥的中间设备。每个iSCSI 目标由唯一的iSCSI 名称标识。

   要通过 IP 网络传输 SCSI 命令,iSCSI 驱动程序必须安装到iSCSI 主机和目标中。驱动程序用于通过主机或目标硬件中的网络接口控制器(NIC) 或 iSCSI HBA 来发送iSCSI 命令和响应。为实现最佳性能,请使用传输速度为每秒 1000 兆位 (Mbps) 的千兆以太网适配器在iSCSI 主机和 iSCSI 目标间进行连接。

  iSCSI 命令封装:

 Linux常见服务器存储类型和iSCSI共享存储

     发起端和目标端之间以消息的形式进行通信。PDU(Protocal Data Unit)就是用来传输这些消息的。

Linux常见服务器存储类型和iSCSI共享存储Linux常见服务器存储类型和iSCSI共享存储 

     iSCSI 协议就是一个在网络上封包和解包的过程,在网络的一端,数据包被封装成包括TCP/IP头、iSCSI识别包和SCSI数据三部分内容,传输到网络另一端时,这三部分内容分别被顺序地解开。iSCSI 系统由一块 SCSI 卡发出一个 SCSI 命令,命令被封装到第四层的信息包中并发送。
  接收方从信息包中抽取SCSI 命令并执行,然后把返回的SCSI命令和数据封装到IP信息包中,并将它们发回到发送方。系统抽取数据或命令,并把它们传回SCSI子系统。所有这一切的完成都无需用户干预,而且对终端用户是完全透明的。 为了保证安全,iSCSI 有自己的上网登录操作。在它们首次运行的时候,启动器(initiator)设备将登录到目标设备中。

  

 8、iscsi会话过程:
  iSCSI 会话建立于一个initiator与一个target之间,一个会话允许多个TCP连接,并且支持跨连接的错误恢复。大多数通信还是建立在SCSI基础之上的,例如,使用R2T进行流量控制。

  iSCSI添加于SCSI之上的有:立即和主动的数据传输以避免往返通信;连接建立阶段添加登录环节,这是基于文本的参数协商。

  建立一个iSCSI会话,包括:

    命名阶段:确定需要访问的存储,以及initiator,与FC不同,命名与位置无关;

    发现阶段:找到需要访问的存储;

    登录阶段:建立于存储的连接,读写之前首先进行参数协商,按照TCP连接登录。

Linux常见服务器存储类型和iSCSI共享存储Linux常见服务器存储类型和iSCSI共享存储


9、iSCSI客户端和服务器端命令介绍

    

9. 1 服务器端的设定需要的软件:scsi-target-utils:用来将 Linux 系统仿真成为 iSCSI target 的功能;


9. 2 scsi-target-utils 主要配置文件:

/etc/tgt/targets.conf:主要配置文件,设定要分享的磁盘格式与哪几颗;

/usr/sbin/tgt-admin:在线查询、删除 target 等功能的设定工具;

/usr/sbin/tgt-setup-lun:建立 target 以及设定分享的磁盘与可使用的客户端等工具软件。

/usr/sbin/tgtadm:手动直接管理的管理员工具 (可使用配置文件取代);

/usr/sbin/tgtd:主要提供 iSCSI target 服务的主程序;

/usr/sbin/tgtimg:建置预计分享的映像文件装置的工具 (以映像文件仿真磁盘);

CentOS 已经将很多功能都设定好了,因此我们只要修订配置文件,然后启动 tgtd 这个服务就可以。


9.3 iSCSI可以共享的磁盘类型 :

a.使用 dd 指令所建立的大型档案可供仿真为磁盘 (无须预先格式化);

b.使用单一分割槽 (partition) 分享为磁盘;

c.使用单一完整的磁盘 (无须预先分割);

d.使用磁盘阵列分享 (其实与单一磁盘相同方式);

e.使用软件磁盘阵列 (software raid) 分享成单一磁盘;

f.使用 LVM 的 LV 装置分享为磁盘。


9.4建立共享分区过程如下:

# 1. 建立大型档案:
[[email protected] ~]# mkdir /srv/iscsi 
[[email protected] ~]# dd if=/dev/zero of=/srv/iscsi/disk1.img bs=1M count=500 
[[email protected] ~]# chcon -Rv -t tgtd_var_lib_t /srv/iscsi/ 
[[email protected] ~]# ls -lh /srv/iscsi/disk1.img 
-rw-r--r--. 1 root root 500M Aug 2 16:22 /srv/iscsi/disk1.img <==容量对的! 
# 2. 建立实际的 partition 分割: 
[[email protected] ~]# fdisk /dev/sda <==实际的分割方式自己处理吧! 
[[email protected] ~]# partprobe <==某些情况下得 reboot 喔! 
[[email protected] ~]# fdisk -l 
Device Boot Start End Blocks Id System 
/dev/sda10 2202 2463 2104483+ 83 Linux 
/dev/sda11 2464 3117 5253223+ 8e Linux LVM 
# 只有输出 /dev/sda{10,11} 信息,其他的都省略了。注意看容量,上述容量单位 KB 
[[email protected] ~]# swapon -s; mount | grep 'sda1' 
# 自己测试一下 /dev/sda{10,11} 不能够被使用喔!若有被使用,请 umount 或 swapoff 
# 3. 建立 LV 装置 : 
[[email protected] ~]# pvcreate /dev/sda11 
[[email protected] ~]# vgextend server /dev/sda11 
[[email protected] ~]# lvcreate -L 2G -n iscsi01 server 
[[email protected] ~]# lvscan
 ACTIVE '/dev/server/myhome' [6.88 GiB] inherit
 ACTIVE '/dev/server/iscsi01' [2.00 GB] inherit

9.5 规划分享的 iSCSI target 档名:        iqn.[YYYY-MM].[com.reversed.domain]:[optional_string]


9.6设定 tgt 的配置文件 /etc/tgt/targets.conf


       如同一般外接式储存装置 (target 名称) 可以具有多个磁盘一样,我们的 target 也能够拥有数个磁盘装置的。 每个在同一个 target 上头的磁盘我们可以将它定义为逻辑单位编号 (Logical Unit Number, LUN)。我们的 iSCSI initiator 就是跟 target 协调后才取得 LUN 的存取权就是了。

[[email protected] ~]# vim /etc/tgt/targets.conf 
# 此档案的语法如下: 
<target iqn.相关装置的target名称>
   backing-store /你的/虚拟设备/完整檔名-1
   backing-store /你的/虚拟设备/完整檔名-2 
</target> 
<target iqn.2014-10.net.vlnb:vdisk>
   backing-store /srv/iscsi/disk1.img <==LUN 1 (LUN 的编号通常照顺序)         
   backing-store /dev/sda10 <==LUN 2   
   backing-store /dev/server/iscsi01 <==LUN 3 
   initiator-address 192.168.100.0/24
     incominguser vbirduser vbirdpasswd 
     write-cache off 
 </target>
       配置文件的参数:


backing-store (虚拟的装置), direct-store (实际的装置): 设定装置时,如果你的整颗磁盘是全部被拿来当 iSCSI 分享之用,那么才能够使用 direct-store 。不过,根据网络上的其他文件, 似乎说明这个设定值有点危险的样子。所以,基本上还是建议单纯使用模拟的 backing-store 较佳。例如鸟哥的简单案例中,就通通使用 backing-store 而已


initiator-address (用户端地址): 如果你想要限制能够使用这个 target 的客户端来源,才需要填写这个设定值。基本上,不用设定它 (代表所有人都能使用的意思), 因为我们后来会使用 iptables 来规范可以联机的客户端嘛!


incominguser (用户账号密码设定): 如果除了来源 IP 的限制之外,你还想要让使用者输入账密才能使用你的 iSCSI target 的话,那么就加用这个设定项目。 此设定后面接两个参数,分别是账号与密码啰。


write-cache [off|on] (是否使用快取): 在预设的情况下,tgtd 会使用快取来增快速度。不过,这样可能会有遗失数据的风险。所以,如果你的数据比较重要的话, 或许不要使用快取,直接存取装置会比较妥当一些。


9.7 启动 iSCSI target 以及观察相关端口口与磁盘信息


[[email protected] ~]# /etc/init.d/tgtd start 
[[email protected] ~]# chkconfig tgtd on 
[[email protected] ~]# netstat -tlunp | grep tgt 
Active Internet connections (only servers) 
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name 
tcp 0 0 0.0.0.0:3260 0.0.0.0:* LISTEN 
26944/tgtd tcp 0 0 :::3260 :::* LISTEN 
26944/tgtd 
# 重点就是那个 3260 TCP 封包啦!等一下的防火墙务必要开放这个埠口。 
# 观察一下我们 target 相关信息,以及提供的 LUN 数据内容:
 [[email protected] ~]# tgt-admin --show 
Target 1: iqn.2011-08.vbird.centos:vbirddisk <==就是我们的 target 
  System information: 
    Driver: iscsi 
    State: ready 
  I_T nexus information:
  LUN information: 
    LUN: 0 
      Type: controller <==这是个控制器,并非可以用的 LUN 喔!
     ....(中间省略)....
  LUN: 1 
    Type: disk <==第一个 LUN,是磁盘 (disk) 喔! 
    SCSI ID: IET 00010001 
    SCSI SN: beaf11 
    Size: 2155 MB <==容量有这么大! 
    Online: Yes 
    Removable media: No Backing store 
    type: rdwr 
    Backing store path: /dev/sda10 <==磁盘所在的实际文件名 
  LUN: 2 
    Type: disk 
    SCSI ID: IET 00010002 
    SCSI SN: beaf12 
    Size: 2147 MB 
    Online: Yes 
    Removable media: No 
    Backing store type: rdwr 
    Backing store path: /dev/server/iscsi01 
   LUN: 3
    Type: disk 
    SCSI ID: IET 00010003 
    SCSI SN: beaf13 
    Size: 524 MB 
    Online: Yes 
    Removable media: No 
    Backing store type: rdwr 
    Backing store path: /srv/iscsi/disk1.img 
Account information: 
  vuser <==额外的帐户信息 
ACL information: 
  192.168.100.0/24 <==额外的来源 IP 限制
9.8设定防火墙:
[[email protected] ~]# vi /etc/sysconfig/iptables
iptables -A INPUT -p tcp -s 192.168.100.0/24 --dport 3260 -j ACCEPT


9.9 客户端 initiator 的设定需要的软件有:iscsi-initiator-utils:挂载来自 target 的磁盘到 Linux 本机上。


9.10 iscsi-initiator-utils主要配置文件:


/etc/iscsi/iscsid.conf:主要的配置文件,用来连结到 iSCSI target 的设定;

 /sbin/iscsid:启动 iSCSI initiator 的主要服务程序;

 /sbin/iscsiadm:用来管理 iSCSI initiator 的主要设定程序;

 /etc/init.d/iscsid:让本机模拟成为 iSCSI initiater 的主要服务;

 /etc/init.d/iscsi:在本机成为 iSCSI initiator 之后,启动此脚本,让我们可以登入 iSCSI target。所以 iscsid 先启动后,才能启动这个服务。因为 /etc/init.d/iscsi 脚本已经包含了启动 /etc/init.d/iscsid 的步骤在里面,所以,理论上, 只要启动 iscsi 就好。此外,那个 iscsid.conf 里面大概只要设定好登入 target 时的帐密即可, 其他的 target 搜寻、设定、取得的方法都直接使用 iscsiadm 这个指令来完成。由于 iscsiadm 侦测到的结果会直接写入 /var/lib/iscsi/nodes/ 当中,因此只要启动 /etc/init.d/iscsi 就能够在下次开机时,自动的连结到正确的 target 啰。 那么就让我们来处理处理整个过程吧


9.11 initiator 的设定

       修改 /etc/iscsi/iscsid.conf 内容,并启动 iscsi:这个档案的修改很简单,因为里面的参数大多已经预设做的不错了,只要填写 target 登入时所需要的帐密即可。 修改的地方有两个,一个是侦测时 (discovery) 可能会用到的帐密,一个是联机时 (node) 会用到的帐密:

[[email protected] ~]# vim /etc/iscsi/iscsid.conf
node.session.auth.username = vbirduser <==在 target 时设定的 
node.session.auth.password = vbirdpasswd <==约在 53, 54 行 
discovery.sendtargets.auth.username = vbirduser <==约在 67, 68 行 
discovery.sendtargets.auth.password = vbirdpasswd 
[[email protected] ~]# chkconfig iscsid on 
[[email protected] ~]# chkconfig iscsi on

      侦测 192.168.100.254 这部 target 的相关数据:

[[email protected] ~]# iscsiadm -m discovery -t sendtargets -p IP:port
选项与参数: 
-m discovery :使用侦测的方式进行 iscsiadmin 指令功能; 
-t sendtargets :透过 iscsi 的协议,侦测后面的设备所拥有的 target 数据 -p IP:port :就是那部 iscsi 设备的 IP 与埠口,不写埠口预设是 3260 啰!
范例:侦测 192.168.100.254 这部 iSCSI 设备的相关数据
 [[email protected] ~]# iscsiadm -m discovery -t sendtargets -p 192.168.100.254
192.168.100.254:3260,1 iqn.2014-10.net.vbnl:vdisk
# 192.168.100.254:3260,1 :在此 IP, 端口口上面的 target 号码,本例中为 target1
#iqn.2014-10.net.vbnl:vdisk :就是我们的 target 名称啊!
[[email protected] ~]# ll -R /var/lib/iscsi/nodes/
/var/lib/iscsi/nodes/iqn.2014-10.net.vbnl:vdisk
/var/lib/iscsi/nodes/iqn.2014-10.net.vbnl:vdisk/192.168.100.254,3260,1
# 上面的特殊字体部分,就是我们利用 iscsiadm 侦测到的 target 结果!

         现在我们知道了 target 的名称,同时将所有侦测到的信息通通写入/var/lib/iscsi/nodes/iqn.201410.net.vbnl:vbirddisk/192.168.100.254,3260,1 目录内的 default 档案中, 若信息有修订过的话,那你可以到这个档案内修改,也可以透过 iscsiadm 的 update 功能处理相关参数的。

        开始进行联机 iSCSI target,因为我们的 initiator 可能会连接多部的 target 设备,因此,我们得先要瞧瞧目前系统上面侦测到的 target 有几部, 然后再找到我们要的那部 target 来进行登入的作业。

范例:根据前一个步骤侦测到的资料,启动全部的 target 
[[email protected] ~]# /etc/init.d/iscsi restart 
正在停止 iscsi: [ 确定 ] 
正在** iscsi: [ 确定 ] 
# 将系统里面全部的 target 通通以 /var/lib/iscs/nodes/ 内的设定登入 
# 上面的特殊字体比较需要注意啦!你只要做到这里即可,底下的瞧瞧就好。 范例:显示出目前系统上面所有的 target 数据: 
[[email protected] ~]# iscsiadm -m node
192.168.100.254:3260,1 iqn.2014-10.net.vbnl:vdisk
选项与参数: 
-m node:找出目前本机上面所有侦测到的 target 信息,可能并未登入喔 
范例:仅登入某部 target ,不要重新启动 iscsi 服务 
[[email protected] ~]# iscsiadm -m node -T target名称 --login 
选项与参数: 
-T target名称:仅使用后面接的那部 target ,target 名称可用上个指令查到! 
--login :就是登入啊!
[[email protected] ~]# iscsiadm -m node -T iqn.iqn.2014-10.net.vbnl:vdisk \ 
> --login 
# 这次进行会出现错误,是因为我们已经登入了,不可重复登入喔!


接下来呢,我们要来开始处理这个 iSCSI 的磁盘:

[[email protected] ~]# fdisk -l 
Disk /dev/sda: 8589 MB, 8589934592 bytes <==这是原有的那颗磁盘
 ....(中间省略).... 
Disk /dev/sdc: 2147 MB, 2147483648 bytes 
heads, 62 sectors/track, 1009 cylinders 
Units = cylinders of 4154 * 512 = 2126848 bytes 
Sector size (logical/physical): 512 bytes / 512 bytes 

Disk /dev/sdb: 2154 MB, 2154991104 bytes 
heads, 62 sectors/track, 1013 cylinders 
Units = cylinders of 4154 * 512 = 2126848 bytes 
Sector size (logical/physical): 512 bytes / 512 bytes 

Disk /dev/sdd: 524 MB, 524288000 bytes 
heads, 59 sectors/track, 1020 cylinders 
Units = cylinders of 1003 * 512 = 513536 bytes 
Sector size (logical/physical): 512 bytes / 512 bytes

   

9.12更新/删除/新增 target 数据的方法

[[email protected] ~]# iscsiadm -m node -T targetname --logout
[[email protected] ~]# iscsiadm -m node -o [delete|new|update] -T targetname 
选项与参数: --logout :就是注销 target,但是并没有删除 /var/lib/iscsi/nodes/ 内的数据
-o delete:删除后面接的那部 target 链接信息 (/var/lib/iscsi/nodes/*) 
-o update:更新相关的信息
-o new :增加一个新的 target 信息。 
范例:关闭来自鸟哥的 iSCSI target 的数据,并且移除链接 
[[email protected] ~]# iscsiadm -m node <==还是先秀出相关的 target iqn 名称 
192.168.100.254:3260,1 iqn.2014-10.net.vbnl:vdisk 
[[email protected] ~]# iscsiadm -m node -T iqn.2014-10.net.vbnl:vdisk \ 
> --logout 
Logging out of session [sid: 1, target: 
iqn.2011-08.vbird.centos:vbirddisk, portal: 192.168.100.254,3260] 
Logout of [sid: 1, target: iqn.2014-10.net.vbnl:vdisk, portal: 192.168.100.254,3260] successful. 
# 这个时候的 target 连结还是存在的,虽然注销你还是看的到! 
[[email protected] ~]# iscsiadm -m node -o delete \ 
> -T iqn.iqn.2014-10.net.vbnl:vdisk
[[email protected] ~]# iscsiadm -m node 
iscsiadm: no records found! <==嘿嘿!不存在这个 target 了~ 
[[email protected] ~]# /etc/init.d/iscsi restart 
# 你会发现唔!怎么 target 的信息不见了!这样瞭了乎



     -m {discovery|node|session|iface}

        discovery:发现某个server是否有target输出及有哪些输出

        node:自己作为节点与server端建立连接

        session:查看会话

        iface:进行接口管理的


        -d:debug_lebel 等级为0—8越高输出的debug信息越详细。

        -I:指定使用哪个网络接口,如果只有一块网卡则不用指定

        -t:sendtarget,slp,iSNS三种形式,一般用的是sendtarget简写为st

        -p:IP:port IP为server的IP,port可以省略,默认为3260

        发现输出target后与登录target有关的

        -U 登出

        -R 重新登入

        -l 登入

        -T 指定targetname

        -p 指定server的IP/port

        -s 显示session的统计数据