“鼓捣丸”通过精心收集,向本站投稿了4篇偶翻译的,ES310(Veritas)的东东,第一章,(努力翻译ing)Windows系统,下面就是小编给大家带来的偶翻译的,ES310(Veritas)的东东,第一章,(努力翻译ing)Windows系统,希望能帮助到大家!
- 目录
篇1:偶翻译的,ES310(Veritas)的东东,第一章,(努力翻译ing)Windows系统
五一放假,闲来无事,慢慢翻译的, CC ,有错请帮忙改下了, 希望对大家有帮助,以下的几章,偶会努力的,争取尽早搞掂! 第一章SunStorageIntroduction 目标 通过本章的学习,你将可以: l描述主要的磁盘存储管理任务 l列出大多数的磁盘阵列的磁盘存储概念 l
五一放假,闲来无事,慢慢翻译的,CC,有错请帮忙改下了,
希望对大家有帮助,以下的几章,偶会努力的,争取尽早搞掂!
第一章 SunStorage Introduction
目标
通过本章的学习,你将可以:
l 描述主要的磁盘存储管理任务
l 列出大多数的磁盘阵列的磁盘存储概念
l 列出SUN SCSI接口的主要功能
l 列出SUN的光纤接口的主要功能
l 列出SUN磁盘存储模式当前的功能
l 定位存储阵列的配置组件
l 检查存储阵列的固件(fireware)版本
磁盘存储管理做为一个Veritas管理员,你要对以下这些事情负责:l VM软件安装l RAID卷设计l RAID卷创建l RAID卷管理
磁盘存储管理
Veritas 卷管理安装
安装VM软件与安装Solaris下的其它软件类似,它可以由标准命令行或图形化的包安装工具来安装,
VM安装
安装VM的很大的一个不同就是必须至少有一个磁盘被指定为初始化的并处于VM的vxinstall控制之下。
所需的硬件
VM的安装过程与系统平台的安装过程相似,不可以被中断,但你必须能从其它磁盘存储类型中识别存储阵列的设备地址。
RAID 卷设计
通常,虚拟卷结构的设计要考虑以下几点:
n 损耗
n 性能
n 有效性
n 易维护性
在大多数情况下,在选择的时候要考虑损耗,性能和有效性方面。
所需的硬件
彻底的理解接口类型,地址规划,和内部的硬盘结构是整个设计所必需的。如果没有这种背景知识来设计虚拟卷结构也是可能的,但可能会导致性能下降及不能达到你的应用程序所要求的可靠性。
RAID卷创建
通过使用图形用户接口或命令行单元可以创建VM的RAID卷结构。当卷必须由使用文件脚本自动创建的时候必须使用命令行单元。
可以通过图形接口来显示每个操作的命令行的相同操作。
所需的硬件
你可能不必为你所设计的VM卷结构负责,但你必须在很多方面熟知你的实际存储设备。
RAID卷管理
在大型的安装中,通常的VM管理任务是识别并替换已经失败的磁盘。用最简单的方式,这执行了一个单独的VM单元,vxdiskadm。对另一个存储平台,luxadm,在磁盘替换的过程中,也要使用。
通常的VM管理任务需要分析错误信息。这由VM单元:vxprint和vxdisk及一些基本的操作系统命令来执行。
所需的硬件
管理RAID卷需要一定的硬件相关技术,包括:
u 解码设备错误信息
u 物理设备的相关设备地址
磁盘存储的概念为更好的完成本章的学习,以下的磁盘存储概念一定要理解:l 多主机存取(Multi-host access)l 基于主机的RAID(Host-based RAID)l 基于控制器的RAID(Controller-based RAID)l 冗余双活动控制器(RedundantDual Active Controllers)l 动态多路径(Dynamic Multi-Pathing)l 热交换(Hot swapping)
磁盘存储概念
多主机存取
在过去,这个功能涉及到双端口。随着当前新技术的出现,如SunStorEdge A5200,已经可以使得四个不同的主机连接到相同的存储设备上。
多初始化的SCSI(Multi-Initiated SCSI)
SUN的多包存储设备支持从两个不同主机系统连接到物理小型机接口(SCSI)上。每个系统的SCSI接口必须拥有一个不同的Initiator设置。这作为一个系统的固件配置,称为:scsi-initiator-id ,如图1_1
当两个主机系统连接到同一个磁盘存储设备时,需要更改其中一个主机的scsi-initiator-id,来消除两台主机间的冲突。
多主机光纤接口
两个不同的光纤接口存储阵列支持多主机连接。SPARCstorge Array 100允许最大两个主机连接到同一个单独的存储阵列上。Sun StorEdge A5000允许最大四个主机系统同时连接。如图1_2
基于主机的RAID(软RAID技术)
VM是一个关于软RAID技术的很好的例子。用户的应用程序通过一个单独的路径(实际上由3个独立的硬盘组成)来访问一个虚拟结构。
一个典型的虚拟卷路径名与下面的类似:(如图1_3)
/dev/vx/dsk/dga/volumn-01
即使到3个磁盘的物理路径已经存在,它们也不能直接的由用户或应用程序来直接进行访问。与用户相关的只有虚拟卷路径。
虚拟结构由运行于主机系统上的软件来创建和管理。
基于控制器的RAID(硬RAID技术)
基于控制器的RAID方案使用运行于外部控制板的固件来维护由一个或多个物理磁盘组成的虚拟结构。在初始化配置之后,控制板上的固件开始管理虚拟结构。(如图1_4)
一个典型的硬RAID设备看上去与很多物理路径名相同,如:/dev/dsk/c0t5d0s0,应用对具体的RAID结构不敏感。
硬RAID方案在RAID结构的类型中能够比软RAID(基于主机RAID)
提供更好的性能。
冗余的双活动控制器(Redundant Dual Active Controller Drivers)
一些SUN的存储设备允许从一个主机系统双重连接到一个磁盘阵列。如果主访问路径失败的话,其中一个主机适配卡可以配置为备份,或两个适配卡可以配置为负载平衡。(图1_5)
冗余的双活动控制器(RDAC)的驱动是为管理双接口连接所特殊指定的驱动器。它对一些SUN的硬件RAID存储阵列是有效的,包括A3000及A5000类型。
带有RDAC驱动的应用接口对接口的失败不敏感。如果双控制路径的其中一个失败,RDAC驱动自动检测输入/输出(I/O)到一个功能(functioning)路径。
基于控制器的RAID方案只被用来在SCSI硬件接口上使用。
动态多路径驱动(Dynamic Multi-path Driver)
动态多路径驱动(DMP)是VM的独一无二的产品。它只用在光纤接口的磁盘阵列中。如图1_6,DMP驱动可以通过一个或多个路径来访问相同的存储阵列。DMP将自动配置到盘阵的多路径。根据盘阵的型号不同,可以配置为主操作模式的负载平衡或备份操作模式。
这些路径可以通过使用VM命令:vxdmpadm来启用或禁止。
--------------------------------------------------------------------------------------------------
注意----VM中的DMP功能是不完整的,当操作系统中有交替路径软件时(Alternate Pathing software)。在安装过程中,VM检测AP是否已经被配置,如果是的话,将不会安装DMP软件。
--------------------------------------------------------------------------------------------------
热交换(Hot Swapping)
大多数SUN的盘阵是工程化的,这样,当替换一个失败的磁盘时可以不中断客户的应用。磁盘替换过程也包括一个或多个软件操作来改变每个磁盘的存储平台。
标准VM磁盘替换过程
以最简单的过程来描述在VM控制下的失败磁盘替换过程:
1. 使用VM命令:vmdiskadm在逻辑上移除磁盘
2. 热交换一个新的磁盘
3. 使用VM命令:vxdiskadm在逻辑上安装新磁盘
磁盘替换的变动
对于StorEdge A5000等盘阵来说,基本的VM磁盘替换过程会复杂一些,A5000的替换过程如下:
1. 使用VM命令:vxdiskadm中的选项4和11来逻辑移除并离线(offline)磁盘。
2. 使用luxadm来移除物理磁盘驱动路径
3. 热交换一个新的磁盘
4. 使用luxadm来创建一个新的物理磁盘驱动路径
5. 使用VM命令:vxdiskadm来逻辑安装新的磁盘
--------------------------------------------------------------------------------------------
注意----在基本磁盘替换中会有其他的改变,对于你的物理盘阵,你必须确切的熟知实际过程
---------------------------------------------------------------------------------------------
SUN的存储接口SUN的SCSI和光纤存储阵列接口有如下的优点和限制:l 有单端和差分的SCSI类型l SCSI线缆支持的最大长度(6-25米)l 光纤的最大长度可以达几公里l SCSI对数据的速率有限制(40Mbytes/s)l 光纤的数据速率是100Mbytes/s
SUN 的存储接口
SUN的存储设备可以通过一个或两个基本的接口类型进行访问。
l 小型计算机系统接口(SCSI)
l 光纤(Fiber-optic)
每种接口的类型通过一段时间(几年)的发展都有了一种或多种的变型。接口发展的焦点主要集中在以下几方面:
l 数据传输速率
l 数据传输的等待时间
l 接口线缆的长度
SCSI接口概述
SCSI接口最初在80年代被设计成介于主机计算机系统和依赖于磁盘的计算机制造商之间的接口。在SCSI之前,所有的计算机制造商都有自己的方式来连接主机计算机系统上的磁盘。
SCSI的优点在于,主机从磁盘请求一个块数据的传输。主机系统没有必要知道磁盘的几何性能,系统只为传输一个块数据而向磁盘发送一个请求。这样做的优点是,允许相同的磁盘可以被不同的制造商所使用。
主机系统间通过SCSI总线来进行连接,这需要设置一些标准。随着SCSI的发展,早期的SCSI总线的速率和数据容量都已经得到了提高,可以更好的满足当前服务器的更高要求。需要面对的最早期的问题就是从主机系统到磁盘驱动器的线缆长度。对于SCSI总线,定义了两种通过不同长度的线缆来进行连接。单端(Single-Ended)短线缆连接及差分(Differential)长线缆连接方式。
SCSI接口的执行
当前在SUN存储产品中使用的SCSI类型为单端及差分方式。
单端SCSI(Single-Ended SCSI)
使用一个单独的信号来进行每位的传输,相对于0电压。这允许标准的SCSI 1设备连接最长达6米的线缆。(如图1_7)
差分SCSI(Differential-SCSI)
通过使用两个相等的相反的电压来发送数据位,这可以使得信号无衰减的传输更远距离。差分SCSI允许线缆的最大长度为25米。(图1_8)
SCSI接口的标准
下表中显示的是由SUN使用的当前SCSI标准的一部分。其它SCSI标准由不同的制造商使用。
SCSI的优先权
SCSI用户的总线调整机制是由SCSI的目标ID来决定优先权的。窄(Narrow)SCSI的目标地址为0-7,目标7拥有最高优先权,通常是控制器的ID号,目标0的优先权最低。通过调整SCSI的目标地址可以影响性能。宽(Wide)SCSI使用目标0-15并按以下的优先权来排列:7, 6, 5, 4, 3, 2, 1, 0, 8, 9, 10, 11, 12, 13, 14, 15
SCSI的阶段及光纤通道的移动
上表显示了SCSI已经8个方面增强了性能。但,这有些夸张。SCSI包括6个阶段,其中之一的从磁盘上传输数据,其余的阶段包括,状态,命令传输和总线调停。SCSI支持向后兼容,所以,一个窄口慢速磁盘可以运行连接一个宽口快速控制器上,这种结构实现了在窄带线路上SCSI控制以5MHz运行。每个设备允许进行更新,如 fast, ultra fast或wide等。数据传输阶段有利于提高时钟的速率,但命令传输却不能,它大约花费每个SCSI传输的5毫秒。
如果向后兼容的策略被放弃的话,那么SCSI的整体性能将得到加强。
SUN的光纤通道概述
在过去的十年中,计算机的性能比从前有了几千倍的发展,同时也需要增加更多有精力的,高性能的,冗余的计算机资源。计算机资源的连续性将达到它们的边缘,这经常是由于I/O子系统的性能所引起的。
为了提供一个存储系统内部连接的解决方案,分址性能及现代系统的可靠性需求,SUN持续进行着新的光纤技术的开发(FC-AL)。
光纤通道技术(Fiber Channel)
光纤通道技术是基于SCSI外围设备正在增多的问题的回答。光纤通道(FC)是为介于服务器、存储系统、工作站、交换机和HUB之间双向的,点对点的通信所设计的高性能串行内联标准。它比其它的连接级协议拥有更多优点,包括效率,高性能,易测性,易于使用和安装,并支持更高级别的协议,FC同时也通过电子隔离,提供了更高级别的安全和可靠性,没有电磁(EM)干扰。
solstice 回复于:-05-07 15:32:22光纤通道的调停循环(Fibre Channel Arbitrated Loop,FC-AL)
光纤通道的一个重要增强就是开发出了FC-AL,特定的开发来达到存储内部连接的需求。FC-AL既可以支持简单的配置,也可以支持HUBS,交换机,服务器和存储系统的复杂的配置。此外,对于已经存在的设备和固件不需要昂贵和复杂的改变FC-AL就可以提供更高的级别。
广泛的支持工业标准
FC-AL开发成就了ANSI/ISO可接受的SCSI-3标准的一部分,避免了创建的非一致性和执行矛盾。实际上所有的系统制造商都执行FC-AL,如所有那些磁盘驱动和存储系统的厂商。
高度的灵活性
FC-AL可以在光纤及铜线缆上进行操作,而且不只是用来进行磁盘的I/O。光纤通道的规范通过使用广泛多样的协议支持高速系统和网络内联。包括:
u SCSI---小型计算机系统接口
u IP---互联网协议
u ATM---为计算机数据的适应(Adaptation)层(AAL5)
u FC-LE---连接封装
u IEEE802.2
因为光纤通道的技术细节被协议接口隐藏,所以,对系统软件的影
响是最小的。
光纤通道与SCSI的比较
光纤通道与SCSI相比有许多优点,如下所示:
光纤通道 SCSI
全双工操作 半双工操作
100MB/s 40MB/s
性能不被磁盘的位置所影响 性能会由于物理磁盘的位置不同而有所影响
磁盘的多路径支持 磁盘的连接只可以通过SCSI通道
最大4个主机可以同时连接到一个适当的盘阵 最大2台主机可以连接到一个单独的SCSI通道
串行数据传输 并行数据传输
在SAN中适当的使用,允许使用交换机和HUB 不适合SAN环境,不允许使用交换机和HUB
可以连接的最大距离30公里(25MHz)/10公里(100MHz) 最大距离25米使用DSCSI
SPARCstorage Array 100
SPARCstorage Array 100的功能
SPARCstorage Array 100(SSA100)有着以下的几方面功能
n 光纤通道接口,双口
n 30个磁盘驱动器
n 每个tray可以连接10个磁盘
n 6个内置的SCSI地址
n 热拔插磁盘tray的限制和注意
u 在你拔出驱动tray前一定要保持在SSA100上的tray所连接的磁盘处于静止状态
u 在移除tray前,tray中与其他磁盘相关的卷必须要离线或镜像分离。
SPARCstorage Array 100的分址
典型的地址路径:(如图1_14)
n c0t3d0s2
n c4t4d4s4
RSM Storage Array
RSM Storage Array的功能:
RSM存储阵列可以做为一个独立的存储单元连接到一个单独差分SCSI Sbus卡或与一个特定的双口控制器集成上架,功能有:
n 差分宽SCSI,68针,单口
n 每个阵列有7个磁盘驱动器
n 磁盘可以热拔插
n 冗余的电源模块
n 冗余的冷却模块
n 驱动器可以单独移动
RSM Storage Array的分址
如果RSM存储阵列连接到差分宽SCSI接口,SCSI目标ID与tray中的slot号相对应,典型的物理地址如:(如图)
n c2t0d0s2
n c4t2d0s4
n c2t5d0s3
设备号(d0)总是为0
Sun StorEdge D1000
Sun StorEdge D1000的功能
除了控制板,Sun StorEdge A1000和D1000有以下几个共同点:
n Ultra差分宽SCSI,68针,双口
n 8个1.6英寸或12个1英寸的Ultra SCSI磁盘
n 双电源支持
n 双冷却模块
---------------------------------------------------------------------------------------------
注意:磁盘,电源支持及冷却模块都是热拔插的
---------------------------------------------------------------------------------------------
Sun StorEdge D1000的线缆连接
如图1_9所示,Sun StorEdge D1000有四个SCSI口。通过配置控制器,一半的磁盘连接到其中的一个端口。也可以通过配置,使得所有磁盘都通过一个连接来控制。每一半的接口提供一个UDWIS连接。
图1_10显示了如何连接一个Sun StorEdge D1000使得所有的磁盘都通过一个端口来连接。
Sun StorEdge D1000的编址
通过开关设置,D1000中的磁盘可以被编址为两种不同的方式。如果两个SCSI口的磁盘的分开的,这些磁盘在每半个单元拥有相同的地址范围。
图1_11显示了地址的变更,显示在8和12个磁盘驱动的D1000中。
Sun StorEdge 5000
Sun StorEdge A5000是一个高可用性,存储子系统。A5000是配置有完全冗余,热交换活动组件构成的高性能、高可用性的建筑。A5000是SUN存储阵列里拥有最高的可靠性,有效性及可服务性(RAS)功能的盘阵系统。
Sun StorEdge 5000的功能
主要包括:
n SUN的第二代光纤通道存储子系统
n 可以在56英寸机架上最大加载4个桌面单元,并可以在72英寸机架上最大加载6个桌面单元。
u 每个机架包括两个HUB
n 一个新的存储数据方式:
u 极快(100MB/s)
u 高可用性;最佳的RAS功能
u 在容量,带宽和I/O传输速率上可以升级
n 最大支持14个半高(1.6英寸)或22个LP(1英寸)热交换,双口及FC-AL磁盘驱动器
n 两个带有GBIC的接口板,提供了对双口磁盘驱动器的双路径能力,两个主机可以连接到每条路径。
n 一个前端面板模块(FPM)允许配置附件的状态,并对其进行显示和修改
n 磁盘附件的活动组件是冗余的,在子系统进行操作的时候可以被替换。
n 当组件全部或部分失败时,会自动进行重配置。
n 桌面产品的外围设计最大可以支持到6个阵列加载到一个SUN的标准机架上。
n 每个单元里,有123.75GB可用的格式化后的原设备空间,支持495GB空间(per loop),最大支持4个单元(per loop)。
---------------------------------------------------------------------------------------------
注意:SUN的企业级网络阵列连接主机结点的时候使用SOC+FC-AL接口卡或在SUN的企业级服务器的I/O版上内置的FC-AL接口。
---------------------------------------------------------------------------------------------
Sun StorEdge 5000的编址
A5000存储系统支持22个磁盘或14个磁盘驱动的配置。物理位置以组来描述,前面的槽位0-10及后面的槽位0-10(22个磁盘),或前面的槽位0-6及后面的槽位0-6(14个槽位)。每个box可以被分配一个box ID从0-3。每个标识决定了一个box的预配置段。每个地址与一个SCSI目标号(14个磁盘为例)直接相关。
n Box ID 0 编址:
背面驱动:t22 t21 t20 t19 t18 t17 t16
前面驱动: t0 t1 t2 t3 t4 t5 t6
n Box ID 1 编址:
背面驱动:t54 t53 t52 t51 t50 t49 t48
前面驱动:t32 t33 t34 t35 t36 t37 t38
n Box ID 2 编址:
背面驱动:t86 t85 t84 t83 t82 t81 t80
前面驱动:t64 t65 t66 t67 t68 t69 t70
n Box ID 3 编址:
背面驱动:t118 t117 t116 t115 t114 t113 t112
前面驱动:t96 t97 t98 t99 t100 t101 t102
物理地址
Box ID地址创建了一个从0-122的目标地址段,所以,可以最大支持4个A5000的存储阵列以菊花链的方式连接到一个单独的控制器上而不会有任何的SCSI地址冲突。典型的A5000存储阵列的设备地址如下:
u c0t3d0s2
u c4t6d0s3
u c3t98d0s2
u c1t6d0s4
u c5t113d0s0
u c2t83d0s4
---------------------------------------------------------------------------------------------
注意----在存储阵列内的设备地址的目标地址ID与菊花链中的目标地址ID相同。
---------------------------------------------------------------------------------------------
Sun StorEdge A5000的内部编址
虽然A5000的目标地址段从0-128,所有的地址都没有使用。但配置14槽的阵列只会使用阵列有效的目标ID的56个。配置22槽的阵列会使用尽可能多的有效目标ID,是88个。表1_1列出了以菊花链方式连接的A5000存储阵列配置中每个box ID的目标地址分配。它也提供了用来计算每个目标地址的规则。
SCSI target# = (A5000_ID * 32) + (16 * backplane#) + slot#
A5000_ID ----- 是在FPM中所编定的
Backplane ----- 对于前面驱动为0,背面驱动为1
Slot ----- 从0-6,从设备向导中读取
使用带有hubs的Sun StorEdge A5000
通过使用FC-Al的集线器可以从一个单独控制接口连接访问最大4个A5000的盘阵。
FC-AL集线器有7个口可以连接,当一个端口接收数据,它重新定时并重新传输数据到下一个正确端口(it retimes and retransmits that data out the next port to the right.)。HUB上的最后的端口把数据路由回第一个端口。
当使用FC-AL Hubs时通常的情况如图1_12:
SPARCstorage MultiPack
SPARCstorage MultiPack是一个带有快速宽SCSI接口的多磁盘存储设备。MultiPack-2提供了一个ultra fast wide SCSI接口。此设备有两种版本:
n SPARCstorage MultiPack单元最大支持6个1.6英寸高,单接口的磁盘
n SPARCstorage MultiPack单元最大支持12个1英寸高,单接口的磁盘
SPARCstorage MultiPack有9英寸高。
你可以使用SPARCstorage MultiPack以多初始化的SCSI配置方式。
---------------------------------------------------------------------------------------------
注意----如果你没有SPARCstorage MultiPack连接到你的系统,你需要一个特定的license来使用VM来配置SPARCstorage MultiPack。
---------------------------------------------------------------------------------------------
SPARCstorage MultiPack的功能
主要包括:
n 一个68针fast wide, 或 ultra wide SCSI接口
n 设备地址由位置决定(与硬件相关)
n 在一个标准的50针(narrow)SCSI总线可以使用6个SCSI驱动单元
n 12个驱动器的单元只可以使用68针的wide SCSI总线
n 12个1英寸高,7200转的磁盘(2.1G或4.2G)
n 6个1.6英寸,5400转的磁盘(9G或18G)
SPARCstorage MultiPack 编址
SPARCstorage MultiPack的编址将自动的由所使用磁盘的物理位置及类型所决定。以6个驱动单元为例,地址段是可以选择的。如下:
n 6个驱动单元的地址可由开关选择,1-6 或 9-14
n 12个驱动单元的地址不可选择6和7,用来消除scsi-initiator-id冲突
u 地址 2-5
u 地址 8-15
地址直接相关于目标号码,一个典型的设备地址路径:/dev/dsk/c0t8d0s2
存储阵列的设备路径 失败磁盘的错误位置由物理和逻辑设备的编码来显示。路径有以下的一些特点:l 逻辑路径连接到物理路径l 逻辑路径标识由controller, target, device定位l 目标和设备号依赖于阵列l 物理路径标识了硬件地址l 物理路径依赖于平台 /interface/array
存储阵列的设备路径
为了配置和维护存储设备,你要理解在一个存储设备里用来描述和定位存储接口板,存储阵列和磁盘的那些术语是非常重要的。
对于一个非RM6的SUN Storage Array的磁盘来讲,每个磁盘驱动器有两个唯一的路径:
n 物理设备路径(/devices)
n 逻辑设备路径( /dev/dsk 和 /dev/rdsk)
系统驱动器和应用使用设备路径来访问特定的磁盘驱动。
设备路径介绍
物理路径
所有设备的物理路径都位于目录:/devices下
物理硬件的访问路径由系统驱动器使用。物理路径描述了用来连接
一个特定设备的物理硬件组件的地址。一个典型的物理路径如下:
/devices/sbus@1f,0/SUNW,socal@0,0/sf@1,0/ssd@w2100002037049a5f,0:e
逻辑路径
磁盘的逻辑设备路径在目录:/dev/dsk(块设备)和 /dev/rdsk(原设备)
一个逻辑设备路径是物理路径的简单表示,一个典型的逻辑设备路径如下:
/dev/dsk/c2t3d0s7
每个逻辑设备连接到一个物理设备路径:
# ls -l /dev/dsk/c1t3d0s2
lrwxrwxrwx 1 root root 90 Dec 2 /dev/dsk/c1t3d0s2 ->
../../devices/iounit@f,e100/sbi@0,0/SUNW,soc@3,0/SUNW,pln@
a0000800,201cad7e/ssd@3,0:c
解码(Decoding)逻辑设备路径
一个典型的逻辑设备路径如:/dev/dsk/c0t3d0 它由三个部分组成
u 控制器地址(c0)
u 目标地址(t3)
u 设备地址(d0)
控制器地址
当Solaris操作环境第一次配置的时候,所有磁盘存储接口被分配一个唯一的控制器号码。如图1_13,控制器号通常是连接单独存储设备的单独的点。虽然存储设备可以菊花链的方式连接,但它仍然是一个单独的点。
目标和设备地址
与每个目标相关的设备号依赖于存储设备的类型。对于通常的
SUN的存储设备目标和设备号的关系如下:
l SPARCstorage A100
n 30个磁盘
n 6个目标,t0-t5
n 每个目标相联5个设备(d0-d4)
l SPARCstorage RSM
n 7个磁盘
n 7个目标,t0-t6或t8-t14
n 每个目标相联一个单独设备,d0
l Sun StorEdge D1000
n 12个磁盘或8个磁盘
n 12个目标,t0-t5 和 t8-t13(或 t0-t3和t8-t11)
n 每个目标相联一个单独设备,d0
l Sun StorEdge A5000
n 14个磁盘
n 14个目标,t0-t6和t16-t22
n 每个目标相联一个单独设备,d0
解码物理设备路径
物理设备路径是复杂的,它们基于硬件平台和系统模型有许多不同格式变化,
最简单的解码物理设备路径的方式就是使用一个软件工具如:device.info程序。这是一个内部的SUN工具。
给定一个系统类型和物理设备路径,这个程序提供了关于主机适配器的详细信息。你必须理解系统的物理配置。
# device.info -m SS1k /iounit@f,e1200000/sbi@0,0/SUNW,soc@3,0/SUNW, pln@a0000800,201cad7e/ssd@0,1
Machine: SPARCserver 1000 || SPARCserver 1000e System || I/O Board Number: 1
Bus Slot Number: 3
FC25/S SOC Port Number: B - *reversed* (screen printed on card/board)
SSA [21]XX WWN: 0800201cad7e
SSA [21]XX Number: ad7e (displayed on LCD panel)
SSA 1XX Tray Number: 0 (left)
SSA 1XX Tray Disk Slot Number: 9 of 10 (from front of tray)
SSA 21X Controller Number: 0
SSA 21X Tray Number: *follow cabling*
SSA 21X RSM Tray Disk Slot Number: 2 of 7 (from left of tray)
Card Type: SUNW,soc
Card Description: SPARCstorage Array 100/200 Fibre Channel Host Adapter (FC25/S)
---------------------------------------------------------------------------------------------
注意----如果没有参数,device.info将显示帮助信息
---------------------------------------------------------------------------------------------
存储配置标识 决定物理存储配置需要几个不同的策略,包括:l 串行号和模型类型的物理清单l 在 /dev/dsk中标识控制器的号l 使用命令:luxadm display命令来显示阵列信息l A5000的附件名和Box IDl 跟踪线缆
存储配置标识
为了标识一个失败的磁盘的位置,你必须能够确定你的存储阵列的
物理配置。你也必须能够确认一个物理主机适配器的控制号。查看连接阵列和主机的线缆或是已知阵列的WWN,可以跟踪连接的相对位置。
物理清单
决定你的存储配置的第一步就是检查并记录你的存储阵列的类型和号码。这对于记录每一个SPARCstorage Array 100和StorEdge A5000上相关的唯一的WWN(WorldWide Number)号非常有帮助。这些号可以用来物理定位一个特定的存储阵列。
标识系统的控制器
标识所有系统物理磁盘控制器的方法是,使用format命令来手工查看 /dev/dsk 目录的内容,或使用以下命令行来查看 /dev/dsk目录
# ls /dev/dsk |awk ’{print substr($0,0,2)}’|uniq
c0
c1
c2
#
上例中的系统拥有3个控制器,如果没有继续的调查,不可能确定哪种类
型的存储阵列连接在每个控制器上。
如果你的存储阵列是SPARCstorage Array 100或是StoeEdge A5000,阵列的配置可以简单的使用以下命令来决定:luxadm
显示一个SPARCstorage Array 100的配置
使用命令:luxadm来显示SPARCstorage Array 100的信息
# /usr/sbin/luxadm display c1
SPARCstorage Array 100 Configuration (luxadm version: 1.31 97/10/01)
Controller path: /devices/io-unit@f,e1200000/sbi@0,0/SUNW,soc@3,0/SUNW,pln@a0000800,201cad7e:ctlr
DEVICE STATUS
TRAY 1 TRAY 2 TRAY 3
slot
1 Drive: 0,0 Drive: 2,0 Drive: 4,0
2 NO SELECT NO SELECT NO SELECT
3 NO SELECT NO SELECT NO SELECT
4 NO SELECT NO SELECT NO SELECT
5 NO SELECT NO SELECT NO SELECT
6 Drive: 1,0 Drive: 3,0 Drive: 5,0
7 NO SELECT NO SELECT NO SELECT
8 NO SELECT NO SELECT NO SELECT
9 NO SELECT NO SELECT NO SELECT
10 NO SELECT NO SELECT NO SELECT
CONTROLLER STATUS
Vendor: SUN
Product ID: SSA100
Product Rev: 1.0
Firmware Rev: 2.4
Serial Num: 0800201CAD7E
Accumulate Performance Statistics: Enabled
以上的信息显示了SPARCstorage Array 100的输出信息,安装了六个磁盘。你可以通过12位的WWN的最后4位来定位物理单元。它们是ad7e并显示在目标存储阵列的LED窗口里。
显示一个Sun StorEdge A5000的配置
使用命令:luxadm来显示 Sun StorEdge A5000阵列的配置
# luxadm display AA
(luxadm version: 1.28 98/01/22)
SENA DISK STATUS
SLOT FRONT DISKS (Node WWN) REAR DISKS (Node WWN)
0 On (O.K.) 20000020370c2532 On (O.K.) 20000020370c25fe
1 On (O.K.) 20000020370c261b On (O.K.) 20000020370c262d
2 On (O.K.) 20000020370c227a On (O.K.) 20000020370c1d9e
3 On (O.K.) 20000020370c22fb On (O.K.) 20000020370c2338
4 On (O.K.) 20000020370c2324 On (O.K.) 20000020370c25e2
5 On (O.K.) 20000020370c257d On (O.K.) 20000020370c1f14
6 On (O.K.) 20000020370c2358 On (O.K.) 20000020370c1e9b
SUBSYSTEM STATUS
FW Revision:1.01 Box ID:3
Node WWN:5080020000011df0 Enclosure Name:AA
以上luxadm命令的输出显示了一个带有完整的14个磁盘的Sun StorEdge A5000阵列的配置信息。也可以使用前端面板模块(FPM)来定位WWN。一个最简单的定位方法就是在FPM中查看附件名字。它通常在FPM屏幕的保存模式(saver)中显示,附件的名字在例中是:AA
当使用Sun StorEdge A5000时,你可以使用带有附件名字和物理位置的luxadm命令来定位磁盘驱动,当使用luxadm时,涉及到的A5000的磁盘名为:
n AA,f5
AA,f5与A5000的附件名AA相关,它标识的前端的第5个磁盘。
显示一个Sun StorEdge D1000或RSM的配置
命令:luxadm不能显示D1000或RSM的配置信息,format命令是有用的,但它不能执行I/O路径名字的解码。这里,我们将使用一个称为device.info的内部脚本程序。给定一个系统类型和物理设备路径,这个程序将提供相关主机适配器板的细节信息。你必须要理解系统类型的物理配置。
% device.info -m SS1k /iounit@f,e1200000/sbi@0,0/SUNW,soc@3,0/SUNW,pln@a0000800,201cad7e/ssd@0,1
Machine: SPARCserver 1000 || SPARCserver 1000e System || I/O Board Number: 1
Bus Slot Number: 3
FC25/S SOC Port Number: B - *reversed* (screen printed on card/board)
SSA [21]XX WWN: 0800201cad7e
SSA [21]XX Number: ad7e (displayed on LCD panel)
SSA 1XX Tray Number: 0 (left)
SSA 1XX Tray Disk Slot Number: 9 of 10 (from front of tray)
SSA 21X Controller Number: 0
SSA 21X Tray Number: *follow cabling*
SSA 21X RSM Tray Disk Slot Number: 2 of 7 (from left of tray)
Card Type: SUNW,soc
Card Description: SPARCstorage Array 100/200 Fibre Channel Host Adapter (FC25/S)
存储阵列的固件 通过使用luxadm命令来维护A5000的存储阵列的固件,主要执行以下功能:l 在SOC主机适配卡上校验固件版本l 在阵列控制板上校验固件版本l 在阵列磁盘上校验固件版本l 下载新的固件
存储阵列的固件
一些光纤通道的硬件设备上通常会有固件组件,它们的固件版本可能会不同。在启动一个安装前,必须校验固件的版本达到最小推荐级别。如果需要,固件必须升级到一个可以接受的级别。相关的光纤通道组件为:
n SOC和SOC+主机适配卡
n Array 100 控制板
n Array 5000 控制板
n Array 5000 磁盘
校验光纤通道的SBus卡的固件
光纤通道的Sbus卡的固件版本必须由命令:luxadm来检测,这是一个标准的Solaris操作系统命令,位于目录:/usr/sbin
对于100/200的存储阵列的SOC卡和A5000的SOC+卡要使用不同的命令参数。
对于SOC卡的luxadm命令输出:
# luxadm fc s download
Found an FC/S card in slot: /devices/sbus@6,0/sbusmem@1,0:slot1
Detected FC/S Version: 1.33 for /devices/sbus@6,0/sbusmem@1,0:slot1
Found an FC/S card in slot: /devices/sbus@6,0/sbusmem@2,0:slot2
Detected FC/S Version: 1.33 for /devices/sbus@6,0/sbusmem@2,0:slot2
对于SOC+卡的luxadm命令输出:
# luxadm fcal s download
Found Path to 2 FC100/S Cards
Device:
/devices/io-unit@f,e6200000/sbi@0,0/SUNW,socal@0,0
Detected FC100/S Version: @(#) FCode 1.9 97/06/08
Device:
/devices/io-unit@f,e7200000/sbi@0,0/SUNW,socal@0,0
Detected FC100/S Version: @(#) FCode 1.9 97/06/08
Complete
校验SPARCstorage Array 控制卡的固件
你可以使用luxadm命令来校验SPARCstorage Array控制卡的固件版本。每个控制器必须要独立执行。
对于SPARCstorage Array的luxadm命令输出:
# /usr/sbin/luxadm display c3
SPARCstorage Array 110 Configuration
(/usr/sbin/ssaadm version: 1.15 96/03/17)
Controller path:
/devices/sbus@6,0/SUNW,soc@d,10000/SUNW,pln@a0000000,78ccf9:ctlr
DEVICE STATUS
TRAY 1 TRAY 2 TRAY 3
slot
1 RESERVED Drive: 2,0 Drive: 4,0
2 Drive: 0,1 Drive: 2,1 Drive: 4,1
3 Drive: 0,2 Drive: 2,2 Drive: 4,2
4 Drive: 0,3 Drive: 2,3 Drive: 4,3
5 Drive: 0,4 Drive: 2,4 Drive: 4,4
6 Drive: 1,0 Drive: 3,0 Drive: 5,0
7 Drive: 1,1 Drive: 3,1 Drive: 5,1
8 Drive: 1,2 Drive: 3,2 Drive: 5,2
9 Drive: 1,3 Drive: 3,3 Drive: 5,3
10 Drive: 1,4 Drive: 3,4 Drive: 5,4
CONTROLLER STATUS
Vendor: SUN
Product ID: SSA110
Product Rev: 1.0
Firmware Rev: 3.6
Serial Num: 00000078CCF9
Accumulate Performance Statistics: Enabled
校验A5000阵列控制器的固件
你可以使用命令:luxadm来显示A5000存储阵列的固件信息。每个阵列必须要独立执行。
# luxadm display d
(luxadm version: 1.28 98/01/22)
SENA
DISK STATUS
SLOT FRONT DISKS (Node WWN) REAR DISKS (Node WWN)
0 On (O.K.) 20000020370c2532 On (O.K.) 20000020370c25fe
1 On (O.K.) 20000020370c261b On (O.K.) 20000020370c262d
2 On (O.K.) 20000020370c227a On (O.K.) 20000020370c1d9e
3 On (O.K.) 20000020370c22fb On (O.K.) 20000020370c2338
4 On (O.K.) 20000020370c2324 On (O.K.) 20000020370c25e2
5 On (O.K.) 20000020370c257d On (O.K.) 20000020370c1f14
6 On (O.K.) 20000020370c2358 On (O.K.) 20000020370c1e9b
SUBSYSTEM STATUS
FW Revision:1.01 Box ID:3 Node WWN:5080020000011df0
Enclosure Name:d
校验A5000的磁盘固件
你可以使用命令:luxadm来校验磁盘的固件版本。它需要使用一个特殊的包含磁盘固件补丁的程序来进行升级。
devsys2# luxadm disp AA,f1
DEVICE PROPERTIES for disk: AA,f1
Status(Port A): O.K.
Vendor: SEAGATE
Product ID: ST19171FCSUN9.0G
WWN(Node): 20000020370d336f
WWN(Port_A): 21000020370d336f
Revision: 117E
Serial Num: 9812R69750
Unformatted Capacity: 8637.338 MByte
Read Cache: Enabled
Minimum prefetch: 0x0
Maximum prefetch: 0xffff
Location: In slot 1 in the Front of
the enclosure named: AA
Path(s):
/dev/rdsk/c2t1d0s2
/devices/pci@6,4000/SUNW,ifp@3/ssd@w21000020370d336f,0:c,raw
下载新的光纤通道的SBus卡的固件
你也可以使用luxadm来下载新的光纤通道Sbus卡的固件。SOC和SOC+的命令和文件名字会有所不同。这个命令下载所有光纤通道卡的固件文件。
u 下载SOC光纤通道Sbus卡固件
# luxadm Cv fc s download Cf ./fc_s_code
u 下载SOC+光纤通道Sbus固件
# luxadm Cv fcal s download Cf ./fc_s_code
下载阵列控制卡固件
存储阵列控制器的固件必须在每个单独的阵列上升级。对于SPARCstorage Array和SENA Array的命令和文件名字是不同的。这个命令只下载被命名的存储阵列控制卡的固件文件。
u 下载SPARCstorage Array控制卡的固件
# luxadm download Cf ./ssafirmware c1
u 下载SENA接口卡固件
# luxadm Cs download Cf ./ibfirmware d
SOC和SOC+固件源文件下载
固件文件是SPARC可执行文件,通过使用软件补丁,源文件是可用的。
u SOC Sbus卡固件
/usr/lib/firmware/fc_s/fc_s_fcode
u SOC+ Sbus卡固件
/usr/lib/firmware/fc_s/fcal_s_fcode
阵列控制器固件源文件
固件文件是SPARC可执行文件。其中一些源文件由Solaris操作系统加载,通过软件补丁,更新的版本是可用的。
u SPARCstorage Array控制器固件
/usr/lib/firmware/ssa/ssafirmware
u SENA接口板固件
/usr/lib/locale/C/LC_MESSAGES/ibfirmware
---------------------------------------------------------------------------------------------
注意----更新任何存储阵列的固件都是一个复杂的任务。必须遵守严格的规则和过程,可能会导致接口卡永久的毁坏。在试图进行任何固件更新前检查你的SUN 段的表示。
---------------------------------------------------------------------------------------------
x3y4z5 回复于:2003-05-07 16:20:51支持,支持。已经收藏!
solstice 回复于:2003-05-07 16:29:07偶说的吗,为何这么好的东东会没有人喜欢,
再不支持,偶连哭的心都有了!
wang3 回复于:2003-05-07 17:31:48我也支持~
mmmmn 回复于:2003-05-07 17:46:21精华一下,。。。。。
Bass3r 回复于:2003-05-07 18:18:18支持
zdm 回复于:2003-05-07 18:24:49强烈建议放入精华区
sunust 回复于:2003-05-07 18:47:19好贴,收藏先。期待第二章。
lujin0248 回复于:2003-05-07 19:04:16不错,我也支持,并保存
motes 回复于:2003-05-07 19:35:37支持。辛苦了!
老邱 回复于:2003-05-07 19:40:10辛苦了!
johnyou 回复于:2003-05-07 20:43:22好难打字啊。谢了。
ivannie 回复于:2003-05-07 20:57:34支持一大下
solstice 回复于:2003-05-08 08:41:09呵呵,偶有信心贴第二章了。。。
solstice 回复于:2003-05-08 08:45:34还有啊,问各位老大一下,
偶的文内的图示该如何贴上去啊!
无图会很不爽地。。。
Anonymous 回复于:2003-05-08 13:11:43问问蜘蛛
小星 回复于:2003-05-08 13:16:06好文,不错不错。辛苦了
jzccn 回复于:2003-05-08 13:50:528错
fly796 回复于:2003-05-08 13:52:31支持老大 请问老大有FE认证的PDF文档吗?
llc107 回复于:2003-05-08 13:59:32[quote:c61a9ebd58=“fly796”]支持老大 请问老大有FE认证的PDF文档吗?[/quote:c61a9ebd58]
蜘蛛老大的网页上有.
建议本贴加精! :)
呵呵...
real 回复于:2003-05-08 14:15:33辛苦了!!!
已收藏,谢谢!
gxh79123 回复于:2003-05-08 20:03:24感谢。支持一大大大大大下
竹笋 回复于:2003-05-08 21:53:48不过我没你下在看的这本书,所以有些地方不能全明白,比如图示我全看不到。要是你有PDF文档给我一个就好了。
email:mryangjq@sina.com
solstice 回复于:2003-05-09 08:46:29该文E文是ES-310,支猪的置顶下载中有原文,
呵呵,我就是从她那里DOWN下来的了!
等我全文翻译完了,就把整个WORD文档连图一起传上去好了,
我想,那样子会好一点吧!
蓝冰 回复于:2003-05-09 09:02:22谢谢,收藏!
xxhunix回复于:2003-05-13 16:53:54solstice,辛苦了!
sunsun2003 回复于:2003-05-14 08:53:08Thanks a lot
dupe 回复于:-02-04 20:43:06佩服佩服
原文转自:www.ltesting.net
篇2:偶接着翻,ES310(Veritas的东东),第四章Windows系统
累死了,总算完成第四章了,感觉还不错, 偶努力接着翻,。。。。 第四章VeritasVolumeManagerBasicOperation 目标 通过本章的学习,你将可以掌握如下的内容: l定义功能和VM目标之间的关联 l显示VM目标的属性 l使用VM来初始化一个磁盘 l创建一个磁盘组并为
累死了,总算完成第四章了,感觉还不错,
偶努力接着翻。。。。。
第四章 Veritas Volume Manager Basic Operation
目标
通过本章的学习,你将可以掌握如下的内容:
l 定义功能和VM目标之间的关联
l 显示VM目标的属性
l 使用VM来初始化一个磁盘
l 创建一个磁盘组并为其增加磁盘
l 为一个VM磁盘改名
l 在一个磁盘组中移除一个磁盘
l 在VM控制器中移除一个磁盘
l 测定有效的空闲磁盘空间
VM初始化回顾 在开始之前,回顾一下以下信息:l 初始化或封装进程l 私有或公共区域格式l 初始化磁盘类型
VM初始化回顾
当VM软件使一个磁盘处于一个控制之下时,它首先检查磁盘然后决定向下进行的最好方式。如果在已知的磁盘上可以表示日期,那么就可以执行多种初始化。
初始化
当Veritas VM初始化一个新磁盘,它创建了两个分区:一个小分区称为私有分区(private region),和一个覆盖了所有剩余磁盘空间的大分区称为公共分区(public region)。
--------------------------------------------------------------------------------------------------
注意----在本章中余下的各部分,术语 block和sector的表示相同,是512字节大小的。
--------------------------------------------------------------------------------------------------
公共区域被用作通常的空间分配。
私有区域包含了Veritas VM多种管理数据,包括了在一个具体的磁盘组
中的所有磁盘的配置信息。
VM使用tag 14来标识公共区域分区,使用tag 15来标识私有区域分区。(命令:prtvtoc显示了一个磁盘信息,包括每个磁盘的tag信息)
封装
如果在你的磁盘上已经存在了数据,你不想初始化这个磁盘,这样,你就可以选择封装。
为了使VM能封装一个磁盘,它至少要在磁盘头或磁盘尾有的1024个扇区在一个未使用的分区,和2个空闲分区。
如果一个磁盘没有1024个扇区的空间(1或2个柱面,由磁盘的几何参数决定)和2个空闲分区在VTOC中,它也能处于VM的控制之下。但是,它必须已经创建了一个nopriv VM磁盘。因为,nopriv VM不包含一个私有分区的拷贝,(但是它包含了一个磁盘组的配置数据库),一个磁盘组不能包含完整的nopriv设备。
对于启动磁盘的封装处理是不同的。最好给出VM所需要的私有磁盘空间。但是,如果没有足够的磁盘空间,它将占用swap的后部的空间。
私有和公共区域格式(Private and Public Region Format)
一个初始化VM磁盘的私有和公共区域的格式可由命令:prtvtoc来确定。在下面的例子中,分区2被定义为整个磁盘,分区3被分配了tag 15,大小是个扇区,分区4被分配了tag 14,大小是剩余的所有磁盘空间。
在这个例子中,私有区域是磁盘的前两个柱,磁盘大小是1.05GB,单独的柱大小是1008个扇区或块。这不能满足私有区域的最小1024扇区要求。它的将使用由文件 /etc/format.dat中发现的磁盘变量nhead=14和nsect=72来计算。
# prtvtoc /dev/rdsk/c2t4d0s2
First Sector Last
Partition Tag Flags Sector Count Sector
2 5 01 0 2052288 2052287
3 15 01 0 2016
4 14 01 2016 2050272 2052287
初始化磁盘类型
默认的,VM使用Sliced类型来初始化磁盘。还有其他的类型,有三种初始化的磁盘类型:
l Simple----私有和公共区域在相同的分区
l Sliced----私有和公共区域在不同的分区(默认)
l Nopriv----没有私有分区
--------------------------------------------------------------------------------------------------
注意----nopriv是强烈不推荐的,它通常只用于建立于非SUN系统的随机访问的内存(RAM)的磁盘存储,
--------------------------------------------------------------------------------------------------
存储配置 为了建立可靠的虚拟磁盘结构,你必须能够:l 标识存储设备的不同类型l 确定磁盘控制器的配置
存储配置回顾
标识存储设备
标识连接到你的系统上的存储设备的类型和模式的最好方法是读取产品的模式tag以及学习相关的技术手册。偶尔的,你需要远程连接到系统上进行工作,就需要使用操作系统命令或其他工具来标识硬件配置。
使用命令:luxadm
命令:luxadm是用来管理SENA, RSM, SPARCstorage阵列子系统的管理命令。它被用来发现和报告所支持磁盘阵列的基本信息,如:
# luxadm probe
不过,参数:probe只能识别那些某些存储阵列类型,它不够全面。
如果你知道基本的控制器地址,命令:luxadm则会给出非常有用的
信息。它仍然被限定在已知的那些阵列模式,对于检查到的不支持的设备将会报告出错信息。一些luxadm输出的例子。
# luxadm disp c0
luxadm: Error opening /devices/iounit@
f,e0200000/sbi@0,0/dma@0,81000/esp@0,80000:ctlr
No such file or directory
控制器c0是标准的SCSI接口,所以luxadm不能标识它
# luxadm disp c1
SPARCstorage Array 110 Configuration
控制器c1是一个SPARCstorage Array 100模式,所以luxadm可以标
识它。
# luxadm disp c3
luxadm: Error opening /devices/iounit@
f,e3200000/sbi@0,0/SUNW,socal@3,0/sf@1,0:ctlr
No such file or directory
# luxadm probe
Found SENA Name:kestrel
Node WWN:5080020000000878
Logical Path:/dev/es/ses0
Logical Path:/dev/es/ses1
控制器c3支持StorEdge A5000阵列,但你必须使用一个不同的luxadm参数来查看它。参数porbe成功的发现了阵列,为了显示A5000的细节,使用以下的命令:
# luxadm kestrel
使用命令:format
Solaris下的命令:format是收集基本存储信息的唯一可靠程序。它的回答是不完整的,但它能报告所有存储设备,而不考虑类型和模式。下面的例子显示了3个不同的存储设备类型的输出。
AVAILABLE DISK SELECTIONS:
0. c0t0d0
/io-unit@f,e0200000/sbi@0,0/dma@0,81000
/esp@0,80000/sd@0,0
1. c1t0d0
/io-unit@f,e1200000/sbi@0,0/SUNW,
soc@3,0/SUNW,pln@a0000000,8023c7/ssd@0,0
2. c1t0d1
/io-unit@f,e1200000/sbi@0,0/SUNW,
soc@3,0/SUNW,pln@a0000000,8023c7/ssd@0,1
3. c3t98d0
/io-unit@f,e3200000/sbi@0,0/SUNW,
socal@3,0/sf@1,0/ssd@62,0
在这个例子中,你可以做出以下判断:
n 在路径名中的esp标识了设备0是一个标准的SCSI接口
n 在路径名中的soc标识了设备1和2是SPARCstorage Array 100磁盘
n 在路径名中的socal标识了设备3是一个FC-AL存储阵列
标识控制器配置
命令:format也可以用来标识那些有着多路径(multi-path)控制器连接的存储阵列。
标识动态多路径设备(Dynamic Multi-Path Device)
DMP的连接被format所标识,如下:
AVAILABLE DISK SELECTIONS:
0. c0t0d0
/sbus@3,0/SUNW,fas@3,8800000/sd@0,0
1. c2t33d0
/sbus@3,0/SUNW,socal@0,0/sf@0,0/ssd@w22000020370c0de8,0
2. c3t33d0
/sbus@3,0/SUNW,socal@0,0/sf@1,0/ssd@w21000020370c0de8,0
注意,设备1和2的设备路径有着相同的磁盘标识,20370c0de8。因为控制器号是不同的,它们在相同的系统中被连接到两个不同的控制器接口。
VM目标(object) VM创建了虚拟目标并在它们之间进行了连接。由VM管理的目标有:l VM磁盘(Volume Manager disks)l 磁盘组(Disk groups)l 子磁盘(Subdisks)l 镜像(Plexes)l 卷(Volumes)
VM目标
当你使得一个磁盘处于VM的控制之下时,就建立了一个从物理目标到虚拟目标间的连接。
VM创建了虚拟目标,并在目标间进行了逻辑连接。然后,VM使用这些虚拟目标来进行存储管理。
Veritas VM磁盘
使一个物理磁盘处于VM控制之下,有两个阶段。有时,可以一步执行两个操作,使你没有意识到这个过程是复杂的。
空闲磁盘池(free disk pool)
当你使一个磁盘处于VM控制之下,你可以:
n 增加它到一个已存在的磁盘组
n 增加它到一个新的磁盘组
n 增加它到空闲磁盘池
最简单的操作是增加它到空闲磁盘池。命令:vxdisksetup用来以VM
格式来重新分区磁盘。然后给磁盘写入一个空白头(header)。
如果你增加它到一个磁盘组,磁盘被分配一个唯一的名字并与一个磁盘组的目标相关。这个信息将会与入磁盘上的空白头。除非你干涉,磁盘的默认名字是disk01, disk02等。
磁盘组(disk group)
磁盘组是使用一个共享的公用配置的VM磁盘的集合。典型的磁盘组包含在某种方式上与特定部分或数据库的文件系统卷相关,它们都是单一数据库的表(tables)。
每个磁盘组属于一个单一的主机系统。当前的属性写入到所有配置记录中。磁盘组中的很多磁盘都有着配置记录的拷贝。
一个磁盘组和它的所有组件可以做为一个单元从一个主机系统移动到另一个主机系统。通常这两个主机系统都连接到相同的双通道存储阵列上。
如图4_1,标准的Veritas VM磁盘组属于一个单独主机。虽然第二个主机连接到相同阵列,但它的VM组件不允许它访问磁盘组中的任何卷。磁盘组可以在一主机中被迁出在另一个主机中被导入,但这通常是一旦一个主机系统失败时所使用的失败恢复功能。当一个磁盘组由另一个主机导入时,新主机的名字被写入到基于磁盘的VM配置记录中。
集群磁盘组(cluster disk group)
Veritas VM软件有一个可选的组件----集群(cluster),它需要License。集群功能允许两个或更多的主机系统访问相同的磁盘组。在集群环境里,主机系统被称为结点(node)。VM的集群版本由Sun Enterprise Cluster产品使用,当它配置为运行OracleParallel Server(OPS)数据库时。如图4_2中,与VM集群软件的主要区别在于磁盘组属于一个集群的名字,而不是单主机的名字。当Sun Enterprise Cluster与OPS联合使用时,最大4个主机可以同时访问相同数据。
当一个磁盘组由任何一个与之相连的结点导入时,cluster_name被写入到基于磁盘的VM配置记录,并且磁盘组对于任何相连的结点都可以访问。
--------------------------------------------------------------------------------------------------
注意----为了防止数据被破坏,结点间的所有写操作必须是相同的。OPS使用一个全局锁管理表来完成这项工作。
--------------------------------------------------------------------------------------------------
子磁盘(sub disk)
一个子磁盘是连续磁盘块的集合。一个子磁盘必须完全处于一个物理磁盘中,一个磁盘组中一个磁盘的公共区域可以被划分为一个或多个子磁盘。在公共区域的相同分区中,子磁盘不能交迭或共享。默认的,子磁盘的命名通常基于磁盘所处的位置。它们的关联由图4_3显示:
--------------------------------------------------------------------------------------------------
注意----如图4_3所示,不同控制器上的磁盘表示它们处于不同的存储阵列。磁盘组可以跨跃阵列。
--------------------------------------------------------------------------------------------------
镜像(Plexes)
VM应用使用子磁盘来建立虚拟目标,称为镜像(plexes)。一个plex包含位于一个或多个物理磁盘上的一个或多个子磁盘。图4_4说明了子磁盘与plex间的关系。
如图4_4:
存储在plex上的子磁盘的数据可以由以下几种方式来组织:
n 串联(Concatenation)
n 条带(stripe)
n 带有奇偶校验的条带(RAID 5)
卷(volumes)
一个卷由一个或多个plex组成。从定义上来讲,一个由两个plex组成的卷就是镜像(mirrored)。如图4_5:
虽然关于卷的重要点有很多,但你必须理解的基本点包括:
l 卷可以拥有多于一个镜像(mirrors)
l RAID-5卷不能被镜像
l 一个plex也可以是一个记录结构(logging),它不用来存储数据。
最重要的默认卷
偶尔,VM管理感觉到他们必须设置一个非标准类型的磁盘组,如:
n 一个大于1024扇区的私有区域
n 每个磁盘组有着大量的配置数据库
n 每个磁盘组有着大量的内核日志记录
为大量的configdb记录做准备
当VM要使用的磁盘第一次初始化时,默认的私有区域可以大于1024个扇区。如果预计有超过2000个目标在一个磁盘组中,你可以这样用。命令格式如下:
# vxdisksetup Ci c2t3d0 privlen=10080s
--------------------------------------------------------------------------------------------------
注意----一个可选的方案就是将磁盘组划分成2个或多个新的磁盘组
--------------------------------------------------------------------------------------------------
solstice 回复于:2003-05-12 10:18:30指定configdb和log记录
当一个新的磁盘组第一次被创建时,你能够指定configdb和log记录的总体数量,它们将被分布到后来增加的所有磁盘中。初始化一个新的磁盘组并增第一块硬盘的命令格式是:
# vxdg init group1 p001=c2t0d0 nconfig=20 nlog=20
在这个例子中,一个磁盘介质名:p001已经给定了磁盘,并且configdb
和log记录拷贝的数量设置为20,这个磁盘介质名可以在以后由许多VM命令使用,将其做为物理路径名的替代。
当多个磁盘增加到新创建的磁盘组中,必须要创建configdb和log记录的拷贝。
热设备 通过指派spare可以自动完成失败磁盘的替代,使用以下方式:l 一个旧的spare守护进程,vxsparecheckl 一个新的hot定位守护进程,vxrelocd
热设备
依赖于文件:/etc/rc2.d/S95vxvm-recover的配置,来决定启动老的hot spare守护进程---vxsparecheck,或是新的hot spare守护进程---vxrelocd。
这两个守护进程的功能是非常不同的,默认的,热定位(hot relocation)是被允许的。
Hot Spare概述
如果在启动时,hot spare守护进程---vxsparecheck被允许,检测并作用于全部磁盘介质的失败,通过移动失败磁盘的全部内容到磁盘组中的一个预定义的spare磁盘。如果VM不能访问一个或多个子磁盘并且不能访问磁盘的私有区域,那么,这个磁盘被考虑为完全失败。
Hot sparing是一个老的操作模式,但如果需要的话,仍然可以使用。
热定位概述(Hot Relocation)
热定位守护进程---vxrelocd,检测并作用于部分磁盘介质的失败,通过移动受到影响的子磁盘到组中的另一个磁盘的空闲空间。空闲空间可以在已经定义为热定位spare的有磁盘上发现,如果没有,由VM随机发现在一个磁盘组上的空闲空间。
热定位只可以由那些作为冗余卷的一部分的子磁盘所使用,如RAID 5或一个镜像卷。
默认的,允许热定位,当一个失败发生时,不需要管理员干涉就可以执行。
--------------------------------------------------------------------------------------------------
注意----热定位可以由系统管理员在任何时候通过停止vxrelocd守护进程来临时禁用,但,这是不推荐的。
--------------------------------------------------------------------------------------------------
如图4_6所示,当检测到一个子磁盘失败,子磁盘的内容将在分派的hot spare上进行结构重建,卷继续使用它最初的完全冗余来执行。
失败子磁盘的检测
热定位守护进程---relocd检测并作用于以下类型的失败。
l 磁盘失败(disk failure)
它最先从一个VM目标中检测到一个I/O失败,并试图修改这个错误。如果不能修改错误,VM试着访问磁盘私有区的配置信息,如果不能访问磁盘的私有区,那么,它认为这个磁盘失败。
l plex失败
一个不可修改的I/O错误在plex中被检测到,为了镜像这个卷,plex将被分离。
l RAID 5子磁盘失败
这将检测到一个不可修改的错误在RAID 5的子磁盘中,这个子磁盘将被分离。
热设备失败(Hot Devices Failures)
如果热定位是不可能的,将通知系统管理员,并且不会有更多的动作。如果发生下面的情况,热定位是不可能的。
l 子磁盘不属于一个镜像或RAID 5卷。
l 在spare磁盘上没有足够有效的空间或空闲空间。
l 在一个磁盘上,唯一有效的热定位空间包含镜像或RAID 5卷的一部分
l 一个有着脏区日志的镜像卷记录的子磁盘是它的数据plex的一部分。属于那个plex的子磁盘不能被热定位。
l 失败的是个日志plex,一个新的日志plex被创建,所以不能实际定位。(so it is not actually relocated)
--------------------------------------------------------------------------------------------------
注意----热定位可以创建一个启动磁盘的镜像如果它被封装或被镜像,必须有一个spare在rootdg中。
--------------------------------------------------------------------------------------------------
热设备的管理
分配一个hot spare磁盘
你可以在一个磁盘组中分配一个或多个磁盘作为热定位spares来为热定位作准备,
使用命令格式如下:
# vxedit Cg disk group set spare=on diskname
你可以通过使用命令:vxdisk list来校验当前spare磁盘状态,也可以通过使用命令:vxedit spare=off禁用磁盘的spare。
控制恢复时间
你可以减少恢复时对系统性能的影响,通过使用vxrelocd来增加一个卷的每个区域间的延时(vxrelocd Co slow=500 &)。变量slow传送给vxrecover,默认的变量值为250毫秒。
监视(Monitor)
默认的,vxrelocd发送错误的邮件通知给服务器的root用户。你可以在文件:/etc/rc2.d/S95vxvm-recover中的vxrelocd root &行来改变。
你也可以通过执行系统错误日志来显示磁盘问题,但,邮件通知通常就足够了。
允许hot spare功能
为了允许让老的hot spare功能代替新的hot relocation功能,修改文件:/etc/rc2.d/S95vxvm-recover注释行:vxrelocd root &,不注释#vxsparecheck root &
命令行状态 学会如何使用3种非常重要的工具来获得VM状态l vxprintl vxdiskl vxdg
命令行状态
使用vxprint
当分析卷的问题时,vxprint是一个很实质性的工具。不像VMSA图型用户接口,vxprint通过使用术语磁盘组(disk group),plex, 卷(volume)和子磁盘(sundisk)来显示所有信息。以下的例子显示了一个典型的连接卷在vxprint输出中是如何显示的。
# vxprint Cg DGa Cht
DG NAME NCONFIG NLOGMINORS GROUP-ID
DM NAME DEVICE TYPE PRIVLEN PUBLEN STATE
V NAME USETYPE KSTATE STATE LENGTH READPOL REFPLEX
PL NAME VOLUME KSTATE STATE LENGTH LAYOUT NCOL/WID
SD NAME PLEXDISK DISK OFFS LENGTH [COL/]OFF DEVICE
dg Dga default default 87000 skydome
dm c1t0d3 c1t0d3s2 sliced 2015 2050272 -
dm c1t0d4 c1t0d4s2 sliced 2015 2050272 -
v vol01 fsgen E ENABLED ACTIVE 4096512 ROUND -
pl plex01 vol01 ENABLED ACTIVE 4096512 CONCAT -
sd sd01 plex01 disk01 0 2048256 0 c1t0d3
sd sd02 plex01 disk02 0 2048256 2048256 c1t0d4
在这个例子的输出中,你可以决定以下细节:
n 磁盘组被称为DGa, 它包含一个单一的卷。
n 卷被称为vol01,它包含一个单一的plex, 称为plex01
n plex是串联的,并且从VM磁盘中已经创建了2个子磁盘,称为disk01和disk02
n 每个子磁盘的大小,大约是1.02G。
n 这两个磁盘的设备路径分别是:c1t0d3和c1t0d4
n 卷和plex被允许,并被激活
--------------------------------------------------------------------------------------------------
注意----通常,VM单元以磁盘块(block or sector)方式来显示大小。转换到MB字节的换算单位是2000,如果要精确划分的话,应该是2048。
--------------------------------------------------------------------------------------------------
使用vxdisk
vxdisk命令有着很多任务相关参数,但,用得最多的参数则是:list。命令:vxdisk list显示了一个快速的状态总结,和所有连接到系统的磁盘的属主。一个典型的vxdisk list输出如下:
# vxdisk list
DEVICE TYPE DISK GROUP STATUS
c0t0d0s2 sliced - - error
c2t33d0s2 sliced droot rootdg online
c2t35d0s2 sliced disk01 DGa online
c2t37d0s2 sliced - - online
c2t50d0s2 sliced - - online
c2t52d0s2 sliced - - error
c3t1d0s2 sliced - - online
c3t3d0s2 sliced - - error
c3t5d0s2 sliced - - error
c3t18d0s2 sliced disk02 DGa online
c3t20d0s2 sliced - - error
通过执行上例vxdisk的输出,我们可以确定:
n 所有带有error状态的设备不在VM控制之下
n 所有online状态的设备已被进行某种级别的初始化
如果一个设备没有磁盘名而且不是某个磁盘组的一部分,它们还没有被
完全初始化。它们只是被VM重新分配并且有一个空白的磁盘头。
--------------------------------------------------------------------------------------------------
注意----如果一个显示失败状态的磁盘:c0t0d0,这意味着产生了一个主要失败,并且VM不能访问物理磁盘,但它知道失败以前的地址。你将会发现,失败的地址将不会在 vxprint Cht 的输出中显示。
--------------------------------------------------------------------------------------------------
使用vxdg
命令:vxdg可以用来创建和维护磁盘组,它也可以提供在一个磁盘组中关于所有空闲磁盘空间非常重要的信息。当准备增加新的卷到一个磁盘组中,以下的参数:free的输出是非常有用的。
# vxdg Cg DGa free
DISK DEVICE TAG OFFSET LENGTH FLAGS
disk01 c3t1d0s2 c3t1d0 1843647 206625 -
disk02 c3t1d1s2 c3t1d1 2046240 4032 -
disk03 c4t2d0s2 c4t2d0 0 2050272 -
字段 LENGTH显示了在磁盘组中的每个磁盘上的所有空闲空间。这个值以块或扇区数显示。你也可以通过除以2000来将它们转换成MB。
通过执行上例的vxdg输出,可以确定:
l 磁盘组DGa有3个物理磁盘
l 其中的一块磁盘(disk03)处于不同的控制器上
l 所有有效的磁盘空间大约是1.1GB
(206625+4032+2050272)/2000=1130.46Mbytes
l 你可以创建一个100M的串联/镜像卷
l 你可以创建一个4M的RAID 5卷
命令行操作 通过使用命令行程序来实现如下的基本功能操作:l 在VM控制中移除一个磁盘(vxdiskunsetup or vxdisk)l 为VM初始化一个磁盘使用(vxdiskadm)l 增加一个磁盘到磁盘组(vxdiskadm or vxdg)l 从一个磁盘组中移除磁盘(vxdiskadm or vxdg)l 标识一个磁盘为hot spare(vxdiskadm or vxedit)l 更改VM磁盘名(vxedit)
命令行操作
虽然有很多Veritas命令行工具程序,对于大多数通常的操作,只需要很少的命令。本章讨论了以下命令的基本操作。
l vxdiskunsetup
l vxdiskadm
l vxdg
l vxedit
l vxdisk
使用命令:vxdiskunsetup
在存储阵列中校验或移除先前的VM配置记录。在VM软件的安装和初始化过程中,你将看到如下的出错信息:
vxvm:vxconfigd: WARNING: Disk c3t35d0 in group hanfs:
Disk device not found
vxvm:vxconfigd: WARNING: Disk c2t18d0 in group hadbms:
Disk device not found
这些错误通常表示,这些磁盘还包含着先前安装的VM配置记录。这些磁盘可以由命令:vxdiskunsetup清空并返回到一个非初始化状态。
# /etc/vx/bin/vxdiskunsetup CC c2t3d0
如果磁盘由其他一些主机导入(import),命令vxdiskunsetup将不会清空磁盘。如果磁盘上有老的配置记录,这将会发生。参数-C在这种情况下将强迫执行。
--------------------------------------------------------------------------------------------------
注意----在使用命令:vxdiskunsetup时一定要小心。你可能会毁掉活动磁
盘上的数据。
--------------------------------------------------------------------------------------------------
也有一个命令:vxdisksetup用来为VM初始化磁盘,但不能增加它们到磁盘组。它们保存在一个空闲的池,为将来VM所使用。一个典型的vxdisksetup命令:
# vxdisksetup Ci c2t0d0
如果不加任何参数,命令:vxdisksetup将只会重新分配指定磁盘到VM分区格式。使用参数 Ci VM配置记录将被写入到私有区。
--------------------------------------------------------------------------------------------------
注意----一般的,命令:vxdisksetup不会被直接使用,它由其它VM程序调用。
--------------------------------------------------------------------------------------------------
使用命令:vxdiskadm单元
命令:vxdiskadm是一个基于菜单进行操作的shell程序。当vxdiskadm启动后,以下的菜单操作是有效的:
1 Add or initialize one or more disks
2 Encapsulate one or more disks
3 Remove a disk
4 Remove a disk for replacement
5 Replace a failed or removed disk
6 Mirror volumes on a disk
7 Move volumes from a disk
8 Enable aclearcase/“ target=”_blank“ >ccess to (import) a disk group
9 Remove access to (deport) a disk group
10 Enable (online) a disk device
11 Disable (offline) a disk device
12 Mark a disk as a spare for a disk group
13 Turn off the spare flag on a disk
对于每一个菜单入口,都会有一个相对应的命令行操作来完成相同功能。基于菜单的操作易于使用,并提供了更多的相关信息。
在这里,我们要讨论的只有3个模块:
1 Add or initialize one or more disks
3 Remove a disk
12 Mark a disk as a spare for a disk group
--------------------------------------------------------------------------------------------------
注意----其他的关于命令:vxdiskadm的讨论将在以后适当的时候进行
--------------------------------------------------------------------------------------------------
增加或初始化磁盘
当在VM控制下替换磁盘,有几个可能的级别:
n 磁盘被重新分配给VM使用,但是它没有给定的名字也不属于任何磁盘组的一部分。它是空闲磁盘池的一部分。
n 磁盘被重新分配给VM使用,给定了一个名字,并被增加到一个新的磁盘组
n 磁盘被重新分配给VM使用,给定了一个名字,并被增加到一个已经存在的磁盘组
--------------------------------------------------------------------------------------------------
注意----当增加一个磁盘到磁盘组时,它也可能被标识为磁盘组的hot spare
--------------------------------------------------------------------------------------------------
你要以使用vxdiskadm中的参数1来增加一个磁盘,你将得到如下提示:
Select disk devices to add: c2t4d0
Which disk group?: disk_group_name or none
Use a default disk name for the disk?: y
Add disk as a spare disk?
Encapsulate this device?: n
Instead of encapsulating, initialize? y
你也可以使用以下的变量来处理多个磁盘:
Select disk devices to add: all
Select disk devices to add: c2
Select disk devices to add: c2t4d0 c3t4d0 c4t4d0
增加磁盘到已经存在的磁盘组的命令格式是:
# vxdg Cg group1 adddisk p002=c2t0d1
移除磁盘
你可以使用vxdiskadm的参数3来移除一个磁盘,有2个移除级别:
n 从一个磁盘组中移除磁盘,将它初始化并置于空闲磁盘池中
n 移除VM控制下的磁盘,通过对它非初始化并将它返回到标准的UNIX分区。
在移除过程中,你可能会遇到以下提示:
Enter disk name: disk05
--------------------------------------------------------------------------------------------------
注意----移除一个磁盘与vxdiskadm中的参数4是不同的,移除一个磁盘并替代它。参数4通常用于在一个硬件失败时进行磁盘替代。
--------------------------------------------------------------------------------------------------
通过使用vxdg和vxdisk命令可以更灵活的执行相同的过程:
从一个磁盘组中移除一个磁盘,但使其保存于一个空闲磁盘池:
# vxdg rmdisk disk05
从一个VM控制中完全移除一个磁盘:
# vxdisk rm c2t3d0s2
--------------------------------------------------------------------------------------------------
注意----你可以使用命令:vxdisk list来发现VM磁盘的路径
--------------------------------------------------------------------------------------------------
分配一个磁盘作为hot spare
通过使用vxdiskadm的参数12可以将一个磁盘标识为它的磁盘组中的hot spare,也可以通过vxdiskadm的参数13来将其标识为非hot spare。
不管是使用参数12或13,你将被提示输入磁盘名如下:
Enter disk name: disk06
可以使用vxedit 来实现相同的功能:
# vxedit set spare=on disk06
# vxedit set spare=off disk06
重命名一个VM磁盘
当初始化磁盘,并增加它们到磁盘组中,磁盘被给定为标准的VM名字如:disk01, disk02, disk03。你可能需要重命名磁盘组中的磁盘,赋予它们一个有意义的名字。
你可以使用vxedit命令来重命名VM磁盘:
# vxedit rename disk01 dbdisk01
X_X 回复于:2003-05-12 10:27:34鼓掌!!!!!!
solstice 回复于:2003-05-12 10:57:07呵呵,谢谢鼓励,
不过,楼上的,偶就没想明白,
泡妞干吗要被扁啊?
泡自己的妞不就得了,
别人的,就不要动了吧。。。
蓝冰 回复于:2003-05-12 11:07:32up
Bass3r 回复于:2003-05-12 11:38:15好,UP
flyjon 回复于:2003-05-12 12:31:40楼主真伟大
twlogin 回复于:2003-05-12 13:19:00楼主真是同道中人
虽然去年我也已经把这本书翻译完了
但和楼主比起来,还是有许多不妥之处
南非蜘蛛 回复于:2003-05-12 13:27:18都是我偶像呀,佩服佩服
solstice 回复于:2003-05-12 13:44:41[quote:c8d9b53a98=”twlogin“]楼主真是同道中人
虽然去年我也已经把这本书翻译完了
但和楼主比起来,还是有许多不妥之处[/quote:c8d9b53a98]
其实,偶也觉得这东东有点老,
但,一时找不到更新的,只好,将就着翻了!
有错的地方,请各位大虾帮忙改下了!
吱猪啊,不要吓偶好吗?
偶还是喜欢你的牙刷。。。。
sunsun2003 回复于:2003-05-14 08:57:23Thank a lot
原文转自:www.ltesting.net
篇3:这是偶翻译的SUN的网络管理员(SA387)的东东Windows系统
呵呵,两章两章贴,可以灌点水, 这不算无耻吧,呵呵,大家别生气啊! 我灌,。。。 第二章网络接口和硬件 本章目标 l能够定义以下项目:以太网(Ethernet),包(packet)和最大传输单元MTU l描述以太网络地址 l能够描述以太网络的帧 l理解封装的概念 l能够理解
呵呵,两章两章贴,可以灌点水,
这不算无耻吧,呵呵,大家别生气啊!
我灌。。。。
第二章 网络接口和硬件
本章目标
l 能够定义以下项目:以太网(Ethernet),包(packet)和最大传输单元MTU
l 描述以太网络地址
l 能够描述以太网络的帧
l 理解封装的概念
l 能够理解载波检测,多路存取及冲突检测的目的
l 定义以太网的广播地址
l 会使用 netstat及 snoop命令
介绍
本章目的是来描述一个以太网络的组成,包括以太网地址,存取方式(CAMA/CD),及广播总线技术的概念。介绍以太网的构架及封装技术。同时还介绍如何使用 netstat及 snoop命令。
以太网的定义
以太网是一个局域的包交换网络,它基于一个分布式存取控制的以10MB/秒广播总线技术。它在1980年变成了工业标准,由DEC,Intel,及Xerox 共同商拓。
以太网由三个主要的元素组成:
1. 硬件方面,可在通过网络电缆连接的计算机间移动数据。
2. 以太网的包(也叫帧)。包通常被用来描述通过包交换网络发送的数据单元。
3. 以太网的存取方式协议(CSMA/CD)通常用来控制包传输。
包交换网络允许在一个网络中的结点同时进行多路通讯。
以太网络设计为总线拓朴,也就是设备连在一条单一线路上。另外,以太
网络使用广播总线技术,也就是说,每一个收发器都可以接收每一个在网络上传输的包,收发器发送每一个包到以太网的接口,判断每一个包是否已经到达了目的地。如果一个包已经到达了目的地,那么,它将继续向协议栈的上层传送。
――存取方式
局域网中的主机使用网络接口层协议来发送数据,载波检测,多路存取和冲突检测(CSMA/CD)。
CAMS/CD先确定所有设备的通讯都在同一个单一介质中发生,每一个时间只有一个传输在进行。如果两个设备在同一时间进行传输,那么冲突将被检测到,然后两个设备将会再等待一个随机的时间(很短)后再发送数据。
以太网地址
一个以太网地址是一个硬件的唯一合法地址。共有48位长,显示成12个十六进制字符,中间由:隔开。如: 8:0:20:1e:2a:3c
MAC地址由Xerox管理,前三段标志由IEEE定义的厂商,Sun System的前三位经常是8:0:20,然后由Sun公司标识后三位的字符。这种方式确保了在网络上的每一个MAC地址都是唯一的。
以太网的帧
――以太网的帧分析
以太网的帧是局域网中的数据传输单元。帧由已经定义好开始和结束的连续的二进制数列构成。以太网络则决定这些数列如何编码和网络上的主机如何检测这些编码的开始和结束。
1-------------6 7-----------12 13-------14 15-----------------1514 last 4octets
序Preamble 64bits D addr 48bits S Addr 48 bits Type 16 bins Data (最大1500 bytes) CRC 32 bits
局域网上的主机就使用这些信息来接收和发送数据。
――序(Preamble)
有64bit的以太网序区由0和1组成,用来进行同步。同步过程可以帮助网络接口决定以太网的帧什么时候开始。
――目标地址
目标地址区包括目标主机的以太网地址。
――源地址
源地址区是发送信息的主机的以太网地址。
――类型
以太帧的第四个区域用来描述以太网中帧的数据封装类型(如,IP,ICMP,地址解析协议(ARP),及反向ARP)
――数据
数据区从至少包含46个字节的信息到最大1500个字节的信息。网络硬件决定了一个帧中的最大的octets的数量。称之为最大传输单元(MTU)。如果用来传输的数据少于46个字节,数据将会被追加0来过到最小46字节数。
循环冗余校验(CRC)
CRC区用来进行错误检测。这个值由发送主机的帧计算,接收主机则采用和发送主机相同的算法来重新计算到达的CRC值,并进行比较。如果两个值不同,则,这个帧将被舍弃。
――封装
EthernetHeader InternetHeader TransportHeader Application data CRC
|-----------Transport segment-----------------|
|--------------------------------Internet Datagram--------------------|
|----------1500-byte maximum transter unit of data--------------|
|----------------------------------------------------Ethernet frame--------------------------------|
――最大传输单元(MTU)
最大传输单元是一个给定的物理网络中数据可以传输的最大数量。以太网的MTU由硬件指定。对于以太网的物理接口,MTU是1500字节,对于loopback接口来说,MTU的值为8232。Loopback接口是一个用来和本地主机通讯的假想设备。
――封装的概念
当发送数据到网络中的另一个结点时,数据从应用层向物理层传送。每层都要在数据最前面增加一个控制信息,也就是头,头信息用来确保数据正确的发送。
在每一层都增加头信息,这个过程称为封装。当数据被接收时,进行反向的过程。在数据向上层传输的过程中,每一层都脱掉它的头。
以太网地址
――发送信息
在网络中进行通讯,可以使用两种以太网地址。
l Unicast Address
以太网中的一个主机向另一个主机发送信息可以使用Unicast Address,单独的以太网地址被一对一的用来进行Unicast传输。
l 广播地址(Broadcast Address)
一个主机在网络中向所有主机发送信息,使用广播地址,也就是ff:ff:ff:ff:ff:ff,
当以太网的帧接收到目标主机的地址时,网络接口层才会让信息向上一层传去。
相关的网络命令
/usr/sbin/snoop
snoop命令在网络中捕获包并且显示包的内容。在后面的几章中将继续讨论有关于snoop命令的功能。
例如:
l 检查广播包
#snoop broadcast
Using device /dev/ie (promiscuous mode)
Skunk -à128.50.255.255 RUSERS C
Zebra -à 128.50.255.255 RUSERS C
l 打印详细的广播包的头信息
#snoop Cv broadcast
Using device /dev/ie (promiscuous mode)
ETHER: --- Ether Header ----
ETHER:
ETHER:
ETHER: Packet 1 arrived at 11:33:4.02
ETHER: Packet size = 130 bytes
ETHER: Destination=ff:ff:ff:ff:ff:ff, (broadcast)
ETHER: Source = 8:0:20:75:8b:59, Sun
ETHER: Ethertype= 0800 (IP)
注意:当有网络流量并且流量符合搜索条件时,snoop命令只显示输出情况。
/usr/bin/netstat
使用netstat Ci 命令来显示网络接口状态。
例如:
#netstat -i
Name Mtu Net/Dest Address Ipkts Ierrs Opkts Oerrs Coll Queue
Lo0 8332 loopback localhost 5248 0 5248 0 0 0
Le0 1500 128.50.0.0 bear 77553 4 39221 2 2103 0
Name――接口设备名称
Mtu ――最大输出单元
Net/Dest――网络号,这个区涉及到文件/etc/inet/networks,将在以后讨论。
Address――接口的IP地址,这个区涉及到文件/etc/inet/hosts
Ipkts/Ierrs――显示输入包和错误
Opkts/Oerrs――显示输出包和错误
Collis――在这个接口的冲突数量
Queue――等待传输的包数量
总结
在本章中我们已经学过:
l 定义以下项:以太网络,包,及最大传输单元(MTU)
l 描述以太网络的地址
l 描述以太网的帧结构
l 描述封装的概念
l 描述CSMA/CD的存取方式
l 描述一个以太网的广播地址
l 使用命令 netstat和snoop
醉里方休 回复于:-06-25 15:34:43上个世纪的东东啊!第一章呢?
solstice 回复于:2003-06-25 15:36:21第三章 ARP和RARP
目标
通过本章学习,你将会掌握:
l 定义地址解析
l 能描述获得目标主机的以太网地址的过程
l 能够描述系统启动时的网络配置过程
l 能够描述用来配置网络接口的配置文件和脚本
介绍
本章的目的是来描述局域网中的主机如何通过网络地址来发送信息。解释获得目的地址的机制,和系统如何自动配置网络接口。
Address Resolution
――以太帧的封装
我们先回忆一下在数据被发送之前如何被封装到一个以太帧的过程。以太帧由地址信息段,数据段,数据类型段及错误校验段组成。
发送数据的主机必须完成帧的各个段的填写。发送主机了解它所要发送的数据,所使用的网络和传输协议,并能自动的计算一个CRC。
然而,发送主机还没有目标主机的地址……
IP头,是以太帧中的数据段的一部分,它必须包括源主机地址和目标主机地址的信息。发送主机最初通过本地数据库文件 /etc/inet/hosts来获取本机地址。
发送主机通过参考目标主机的 /etc/inet/hosts 文件或通过一个网络表(hosts,如果命名服务允许的话)来获得目标主机的地址。
发送主机完成了以太帧头的源和目标地址段。源地址很容易获取,因为它永久性的存在于本机的系统内核列表中(system kernel table)。
以太帧就要准备全了,所缺的就是目标主机的MAC地址了。
发送主机使用地址解析协议(Address Resolution Protocol(ARP))来获得目标主机的MAC地址。
地址解析协议(ARP)
ARP是一个在网络层和网络接口层建立地址连接的过程。主机用它来准备一个网络传输信息单元。
――ARP 列表(ARP Table)
ARP列表存于内存中,它存放那些被频繁请求的地址。准备传输的帧每次调用目标主机的地址时,都要查阅ARP列表。
――ARP请求(ARP Request)
如果一个MAC地址不存在于ARP列表,发送主机将它解析成一个IP地址。发送主机在本地网上发送一个广播类型的ARP请求来获取这个主机地址,与这个IP地址相符的主机响应它的MAC地址。
例如:
#snoop Cv arp
Using device /dev/le (promiscuous mode)
Ether: ------------- Ether Header -------------
Ether:
Ether: Packet 1 arrived at 16:15:29.64
Ether: Packet size=42 bytes
Ether: Destination=ff:ff:ff:ff:ff:ff, (broadcast)
Ehter: Source =8:0:20:75:6e:6f, Sun
Ether: Ethertype=0806(ARP)
Ether:
ARP: --------- ARP /RARP Frame --------
ARP:
ARP: Hardware type = 1
ARP: Protocol type =0800 (IP)
ARP: Length of hardware address = 6 bytes
ARP: Length of protocol address = 4 bytes
ARP: Opcode 1 (ARP Request)
ARP: Sender’s hardware address=8:0:20:75:6e:6f
ARP: Sender’s protocol address =128.50.1.2, bear
ARP: Target hardware address=?
ARP: Target protocol address= 128.50.1.5, skunk
在这个例子中,请求主机向子网上所有使用广播地址为ff:ff:ff:ff:ff:ff的主机广播ARP请求。
包类型是一个ARP请求,它包括属于目标主机skunk(Tartget protocol address)的被请求的MAC地址(Target hardware address)。
――ARP 应答(ARP Reply)
在子网上的每个主机都接收到ARP的请求包,只有匹配目标IP地址的唯一一台主机才给源MAC地址一个应答。
#snoop Cv arp
Using device /dev/le (promiscuous mode)
Ether: ------------- Ether Header -------------
Ether:
Ether: Packet 1 arrived at 16:15:29.64
Ether: Packet size=60 bytes
Ether: Destination=8:0:20:75:6e:6f, Sun
Ehter: Source =8:0:20:75:8b:59, Sun
Ether: Ethertype=0806(ARP)
Ether:
ARP: --------- ARP /RARP Frame --------
ARP:
ARP: Hardware type = 1
ARP: Protocol type =0800 (IP)
ARP: Length of hardware address = 6 bytes
ARP: Length of protocol address = 4 bytes
ARP: Opcode 2 (ARP Reply)
ARP: Sender’s hardware address=8:0:20:75:8b:59
ARP: Sender’s protocol address =128.50.1.5, skunk
ARP: Target hardware address=8:0:20:75:6e:6f
ARP: Target protocol address= 128.50.1.2, bear
ARP:
在这个例子中,应答主机发送这个ARP应答包给目标主机bear在同一子网,
包类型为ARP Reply,它包括发送主机的硬件地址,8:0:20:75:8b:59
而请求主机则使用这些信息来更新它的ARP列表。
――ARP应答缓存
请求主机接受一个ARP应答,并把它存放在一个由系统内核进行管理的临时ARP列表中,一个应答ARP请求的主机也同进更新它的请求主机的IP地址和MAC地址。
完整的入口映射IP地址到硬件(MAC)地址。不完整的入口则只包括IP地址。完整的入口有一个TTL值,是一个时间段,如果在这个有效的时间内,ARP列表的入口不能被使用,则,这个入口将被自动舍弃。
主机使用ARP列表中的这个信息来向目标主机发送包,可以避免再次向网络发送一个ARP广播包。
――ARP表管理
arp 命令显示和控制ARP表中的IP地址到MAC地址的映射的入口情况。
例如:
*要查看ARP表中的所有入口,可以:
# arp Ca
Net to Media Table
Device IP Address Mask Flags Phys Addr
Le0 skunk 255.255.255.255 08:00:20:75:8b:59
Le0 bear 255.255.255.255 SP 08:00:20:75:6e:6f
Le0 zebra 255.255.255.255 U
Le0 224.0.0.0 240.0.0.0 SM 01:00:5e:00:00:00
各字段的意义是:
l Device――网络设备(接口)
l IP Address――请求的IP地址
l Mask――应用的子网掩码,这将在后继章节讨论
l Flags――ARP入口的状态,以下是几个常用的状态列表:
* S――一个被永久保存的入口
*P――一个已发布的入口
*M――这是一个多址传输的入口,多址传输将在下一节介绍
*U――不可被解析或不完整的入口
* 要查看一个特定的ARP表入口,可以:
# arp hostname
hostname 可以是一个主机名,也可以是一个主机的IP地址。
*要增加一个永久性的ARP表入口,可以:
# arp Ca hostname ethernet_address
它创建了一个永久性的入口而不管ARP表的默认的TTL值,手工填加一个ARP列表可以减少ARP 的广播包,并可以在一个负载很重的网络(如子网的路由器在极为繁忙的骨干网上进行IP包转发)有效的降低网络流量。
*要增加一个临时的ARP入口,可以:
# arp Cs hostname ethernet_address temp
3到4分钟后,这个入口会死掉。
*要增加一个已发布的ARP入口,可以:
# arp Cs hostname ethernet_address pub
当一个主机应答另一个主机的ARP请求时,使用一个已发布的ARP入口。这是一个很有用的选项在一个不能对ARP请求进行应答的交互式环境。这个入口将永久保存下去除非使用temp关键字在命令中。
*要删除一个ARP入口,可以
# arp Ca hostname
hostname可以是一个主机名也可以是一个主机的IP地址。
*从一个文件增加一个ARP入口,可以:
# arp Cf filename
文件中的入口应该这样被显示在表中:
hostname ethernet_address [temp] [pub]
网络接口配置
正确的配置主机的网络接口对网络连接是非常重要的。主机使用ARP更新网络接口,去监听接收和发送信息。
――接口配置
Solaris系统环境使用本地或网络数据库自动配置主机的网络接口。这个进程是系统启动过程的一部分,并通过系统内核进行管理,也就是:init进程,和它的配置文件/etc/inittab,关联到系统运行级别的脚本。
/kernel/unix
| 1.系统从UNIX内核启动,它所运行的其中一个进程是/sbin/init
/sbin/init
| 2./sbin/init 进程读取配置文件 /etc/inittab。它运行其它脚本/sbin/init
/sbin/rcs
| 3./sbin/rcs脚本设置系统为单一用户模式,包括/etc/init.d/rootusr
/etc/init.d/rootusr
4./etc/init.d/rootusr 脚本配置以太及loopback接口,另外,把/usr文件系统作为只读系统挂接。
――/etc/init.d/rootusr
文件/etc/init.d/rootusr脚本在系统启动的单一用户阶段执行,
调用文件/etc/hostname.interface和/etc/hostname。文件/etc/hostname.interface标识网络接口的主机名,文件/etc/inet/host标识主机的IP地址和主机名。命令ifconfig参考这些文件来配置网络接口和各自的IP地址。
即使在单用户的模式下,网络接口仍然监听,接收和发送帧。
主机bear的文件/etc/hostname.le0的内容:
#cat /etc/hostname.le0
bear
主机flipper的/etc/inet/hosts文件内容:
# cat /etc/hosts
127.0.0.1 localhost loghost
128.50.1.2 bear
反向地址解析
――反向地址解析协议
――无盘系统
无盘系统就是没有本地硬盘。它们使用网络接口和网络服务(NFS)来存取文件/etc/inet/hosts。
一个无盘系统初始化必须使用反向地址解析协议(RARP)来获得它的IP地址。RARP是一个在网络接口层和网络层建立地址链接的过程。ARP的调用过程是已知的目标主机IP地址和未知的MAC地址。RARP则反向这个过程,即,由一个已知的MAC地址开始到一个未知的IP地址。
――启动系统(JumpStart System)
JumpStart System是一个简单的无盘客户端,他们依赖于另一个主机提供服务来安装。JumpStart客户使用RARP从服务器上开始安装进程。
――RARP 请求
一个RARP请求是由一个启动的无盘客户端产生的一个广播包。
例如:
# snoop Cv rarp
Using device /dev/le (promiscuous mode)
ETHER: ------- Ether Header -------
ETHER: Packet 1 arrived at 16:29:55.70
ETHER: Packet size = 64 bytes
ETHER: Destination = ff:ff:ff:ff:ff:ff, (broadcast)
ETHER: Source =8:0:20:75:8b:59, Sun
ETHER: Ethertype = 8035 (RARP)
ETHER:
ARP: ---------- ARP/RARP Frame. --------
ARP:
ARP: Hardware type = 1
ARP: Protocol type = 0800 (IP)
ARP: Length of hardware address = 6 bytes
ARP: Length of protocol address = 4 bytes
ARP: Opcode 3 (REVARP Request)
ARP: Sender’s hardware address = 8:0:20:75:8b:59
ARP: Sender’s protocol address = 255.255.255.255, BROADCAST
ARP: Target hardware address = 8:0:20:75:8b:59
ARP: Target protocol address = ?
ARP:
在这个例子里,无盘客户端由发送者的MAC地址8:0:20:75:8b:59来标识,并由RARP的广播请求包中的请求它的IP地址信息开始它的启动过程。
服务器bear和客户端在同一子网,它被配置来监听和响应客户端的RARP请求。
――RARP应答服务器
一个RARP应答包由同一子网上的被配置为应答RARP请求的主机产生。服务进程 in.rarpd响应RARP请求。它必须由root用户运行,并且是支持无盘系统的服务器的启动的一部分。
精灵进程根据MAC到IP地址的映射产生了一个RARP应答。它使用本地数据库(/etc/inet/host和/etc/ethers)或者网络列表(ethers和hosts)来创建一个应答。启动的机器必须在数据库中列出:in.rarpd,来定位它的IP地址,否则,in.rarpd将不会响应。
――RARP应答
例子:
# snoop Cv rarp
ETHER: ------------ Ether Header ----------
ETHER:
ETHER: Packet 2 arrived at 16:29:58.78
ETHER: Packet size = 42 bytes
ETHER: Destination = 8:0:20:75:8b:59, Sun
ETHER: Source =8:0:20:75:6e:6f, Sun
ETHER: Ethertype = 8035 (RARP)
ETHER:
ARP:
ARP: ------------ ARP/RARP Frame ----------
ARP: Hardware type = 1
ARP: Protocol type = 0800 (IP)
ARP: Length of hardware address = 6 bytes
ARP: Length of protocol address = 4 bytes
ARP: Opcode 4 (REVARP Reply)
ARP: Sender’s hardware address = 8:0:20:75:6e:6f
ARP: Sender’s protocol address = 128.50.1.2, bear
ARP: Target hardware address = 8:0:20:75:8b:59
ARP: Target protocol address = 128.50.1.5, skunk
ARP:
继续上一个过程,RARP应答服务器bear返回一个RARP应答包给无盘客户端的物理地址(8:0:20:75:8b:59)并返回客户的IP地址,128.50.1.5
客户端继续它的无盘启动过程。
――维护in.rarpd 服务器
如果一个无盘客户服务器第一次进行设置时,在服务器上启用以下的客户脚本来执行:
# /etc/init.d/nfs.server start
如果客户不启动,进行以下检查:
*执行 snoop Cv rarp 在同一子网的第三方机器上,如果不能看到无盘客户站的RARP请求,则可能是网络的硬件有问题。
*如果可以看到无盘客户端的RARP请求,但不能看到服务器端的RARP应答在客户的启动服务器上,检查以下项目:
*检查 /etc/inet/hosts文件(或者NIS/NIS+等)的客户主机名和IP地址。
*检查 /etc/ethers 文件中的客户主机名和MAC地址。
*检查 in.rarpd进程是否启用。
总结
*能描述在一个局域网上主机如何使用和获取MAC地址来发送信息
*描述自动网络配置进程
*描述配置网络过程中,文件和脚本的使用
*用ifconfig 命令来配置网络接口
solstice 回复于:2003-06-25 15:37:07老大,第0章和第一章在上一个贴子里啊!
南非蜘蛛 回复于:2003-06-25 15:57:2299年就这么强了,我还在念大学拿,郁闷
solstice 回复于:2003-06-25 16:13:13我倒,吱猪这么年轻,
唉,偶已经是老东东了,
翻译的东东也是 了!
原文转自:www.ltesting.net
篇4:这是偶翻译的SUN的网络管理员(SA387)的东东Windows系统
哈哈,接着贴了,第四章和第五章! 第四章Internet层 本章目标 通过本章的学习,你将掌握: l定义项目:IP,数据报(dategrame),存储片 l回忆一下IP地址的类描述 l能区分一个MAC地址,IP地址,和一个广播地址 l检查和处理网络接口故障 介绍 本章主要讨论Int
哈哈,接着贴了,第四章和第五章!
第四章 Internet 层
本章目标
通过本章的学习,你将掌握:
l 定义项目:IP,数据报(dategrame),存储片
l 回忆一下IP地址的类描述
l 能区分一个MAC地址,IP 地址,和一个广播地址
l 检查和处理网络接口故障
介绍
本章主要讨论Internet层的功能,有关于存储片,IP地址,数据报和广播地址的定义,以及如何使用ifconfig来检查网络接口状态及改变网络接口参数。以下的两节继续在Internet层上的有关于路由和子网的内容。
IP协议(Internet Protocol)
IP协议建立在系统内核中,主要提供三个服务:
l 使基本传输数据单元通过TCP/IP套传输
l 通过选择一条路径来实现路由功能,并发送数据
l 包括了一套比较具体的不可靠包发送规则。这些规则决定什么时候,而且如何处理IP产生的错误信息和丢弃包。
――数据报(Datagrams)
数据报是通过一个TCP/IP网络发送的基本的信息单元。数据报在一个以太帧的数据区。数据报内有包含信息的数据报头,如,源地址和目的地址。头还包括使用哪个协议来传输数据(如UDP,TCP或者ICMP)和一个TTL段来决定在它终止前可以有多少个网关或主机能处理这个数据报。
――存储片(Fragmentation)
存储片是是更小的数据传输单元。因为数据必须成为以太帧的一部分,它可能会被分成更小的数据片以便于使它封装入以太帧中。
数据片大小由网络接口和硬件层的MTU来决定。
――IP地址
IP地址是网络主机的唯一标识。IP地址一共32位,每八位一段,分为四段,每段的值介于0和255之间,如:129.150.182.31
每个IP地址标识一个网络和网络上的唯一主机。第一段决定了主机的地址类型。共分为四类:A类,B类,C类,D类。
――A 类地址,非常巨大的网络(最多可有1600万主机)
如果第一位为0,那么后七位就是网络号,而后24位则是主机号。允许有127个A类地址。[1――126]
首段为127的地址是保留地址,被称做 loopback,一个 loopback是指可以允许主机给它自己发送包的地址接口,在Solaris中,loopback是127.0.0.1
――B类地址,大型网络(最多可有65000个主机)
如果最前的两位为10,那么接着的后14位就是网络号,后两段为主机地址。一共可以有16384个B类网络。[128――191]
――C类地址,中小型网络(最多可有254台主机)
如果最前的三位是110,那么接着的后21位就是网络号,最后的8位为主机地址,最多可有2,097,152个C类网。[192――223]
――D类地址,多点传送地址
如果最前的四位是1110,这样,最前的段就在224――239间,这些地址是多点传送的地址,其后保留的28位由特定的多点传送的组识别码组成。一个IP的多点传送地址是一个或多个主机的目标地址,当一个A类,B类或C类为一个特定的主机指定地址时。
------------------------------------------------------------------------------------------------------
注意:IP的多点传送地址映射成一个MAC的多点传送地址以便于网络接口进行监听。低位的23位IP地址可以代替MAC的23位低位地址。如:一个IP为224.0.0.0的地址可以映射成――01:00:5e:00:00:00
――保留的网络和主机地址
IP地址全部为0的不是一个特定的主机,它表示一个网络。IP地址全部为1的也不是一个主机,它表示特定网络所有主机的广播地址。
――广播地址
广播地址就是网络中用来广播的。广播也就意味着数据被同时发送给网络中的所有主机。在Solaris 2.x环境中,默认的广播地址是主机号全部为1的地址,如:128.50.255.255
注意:在SunOS操作系统中,使用网络号全部为0的地址为广播地址。如:128.50.0.0 所以,Sun系统进程同样监听广播地址0或者255,以保持向后兼容性。
网络接口
――命令/sbin/ifconfig的使用
ifconfig 命令由超级用户使用,用来配置所有的网络接口参数。它在系统启动时由/etc/reS.d/S30rootusr脚本调用。同时,它后来也会被NIS/NIS+来重新设置网络接口配置,并通过调用脚本/etc/re2.d/S72inetsvc进入启动序列。Ifconfig命令也可以被用来重新定义一个接口的IP地址或其它的操作参数。
检查网络接口
例如:
*检查所有网络接口的状态:
# ifconfig Ca
lo0: flags=849
inet 127.0.0.1 netmask ff000000
le0: flags=863
mtu 1500 inet 128.50.1.2 netmask ffff0000 broadcast 128.50.255.255
ether 8:0:20:75:6e:6f
*检查一个接口的状态
# ifconfig le0
le0: flags=863
mtu 1500 inet 128.50.1.2 netmask ffff0000 broadcast 128.50.255.255
ether 8:0:20:75:6e:6f
各字段含义:
l lo0,le0――网络接口的设备名
l Flags――网络接口状态的数字表示方式,状态变量已经在包中定义,将在后来讨论。
l MTU――MTU用来定义包的存储片
l Inet――接口的Internet 地址
l etmask――掩码应用于网络层包的输入和输出。掩码被用来定义哪些值是用来表示
网络地址的位。
l Broadcast――广播地址,用来发送信息到所有主机。
l Ether――由ARP使用的以太网地址(MAC)
――状态段
l UP――这个标志指出这个接口是开放的,可以发送和接收数据。
l DOWN――相反的,这个标志指出这个接口是关闭的,也就是说,此时不能为主机发送和转发包。
l NOTRAILERS――这个标志指出了一个报文尾不包括以太帧的尾部。报文尾是在
BerkerleyUnix系统中使用的把信息头加到包尾的一种方式。在
Solaris2.x系统中已经不支持。
l RUNNING――这个标志指出,该接口已经被系统识别。
l MULTICAST――这表示接口支持多路传送地址。
l BROADCAST――这表示接口支持广播地址。
网络地址配置
――解决网络接口故障
丢失,不完整,或不正确的配置网络接口参数,将会引起连接失败。如:一个主机可能拒绝挂接(mount)远程文件系统,拒绝发送和接收邮件,拒绝执行打印任务,如果一个主机的接口配置错误的话。
为了确保主机接口配置的正确,要检查如下几项:
l 所有的接口状态是否为UP
l IP地址是否正确
l 子网掩码是否正确
l 广播地址是否正确
――重新配置网络接口参数
* 允许一个网络接口(Enable)
# ifconfig le0 up
# ifconfig le0
le0: flags=863
mtu 1500 inet 128.50.1.2 netmask ffff0000 broadcast 128.50.255.255
ether 8:0:20:75:6e:6f
*开放一个网络接口(Disable)
# ifconfig le0 down
# ifconfig le0
le0: flags=863
mtu 1500
inet 128.50.1.2 netmask ffff0000 broadcast 128.50.255.255
ether 8:0:20:75:6e:6f
*关闭一个网络接口(Close)
# ifconfig le0 unplumb
# ifconfig le0
ifconfig : SIOCGIFFLAGS:le0:no such interface
*打开一个网络接口(Open)
# ifconfig le0 plumb
# ifconfig le0
le0:flags=842
mtu 1500
inet 0.0.0.0 netmask 0
ether 8:0:20:75:6e:6f
*设置一个IP地址,允许接口但不允许 trailers
# ifconfig le0 inet 128.50.1.2 Ctrailers up
# ifconfig le0
le0: flags=842
mtu 1500 inet 128.50.1.2 netmask ffff0000 broadcast 128.50.255.255
ether 8:0:20:75:6e:6f
*改变掩码值和广播值来正确的反映新的掩码
# ifconfig le0 netmask 255.255.255.0 broadcast +
# ifconfig le0
le0: flags=843
inet 128.50.1.2 netmask ffffff00 broadcast 128.50.1.255
ether 8:0:20:75:6e:6f
*在正确的设置子网掩码后改变所有的广播地址
# ifconfig Ca
lo0: flags=849
inet 127.0.0.1 netmask ff000000
le0: flags=863
inet 128.50.1.5 netmask ffffff00 broadcast 128.50.255.255
ether 8:0:20:75:8b:59
le1: flags=842
mtu 1500
inet 128.50.3.6 netmask ffffff00 broadcast 128.50.255.255
ether 8:0:20:75:8b:59
# ifconfig Ca broadcast +
# ifconfig Ca
lo0: flags=849
inet 127.0.0.1 netmask ff000000
le0: flags=863
inet 128.50.1.5 netmask ffffff00 broadcast 128.50.1.255
ether 8:0:20:75:8b:59
le1: flags=842
mtu 1500
inet 128.50.3.6 netmask ffffff00 broadcast 128.50.3.255
ether 8:0:20:75:8b:59
总结
在本章中,我们已经学过:
l 定义以下项目:IP,数据报,和存储片
l 描述四个IP类:A类,B类,C类,D类
l 能够区别以太地址(MAC),IP地址,和广播地址
l 使用命令 ifconfig 来检查网络接口状态,解决网络接口故障,和校验网络接口参数。
solstice 回复于:2003-06-25 15:40:38第五章 路由
目标
学习本章之后,你将能够掌握:
l 定义以下的路由项目:路由驱动表,静态路由,动态路由和默认路由
l 能描述in.routed和in.rdisc进程
l 描述路由信息协议(RIP)和路由发现协议(RDISC)
l 描述 /etc/init.d/inetinit 的路由启动脚本
l 能够描述文件: /etc/defaultrouter, /etc/inet/networks和 /etc/gateways
l 使用 route 和 netstat 命令
l 配置一个路由器
介绍
本章定义了路由和路由的主要组件如:路由驱动表,静态和动态路由,和默认路由。同时也介绍了在Solaris 2.x系统中用来更新路由表及 in.routed和in.rdisc进程的RIP和RDISC协议.
本章还描述了路由的启动脚本文件:/etc/init.d/inetinit ,/etc/defaultrouter, /etc/inet/networks,以及 route 和 netstat 命令。
路由术语
路由是一个主机用来从一个网络向另一个网络进行包或数据转发的机制。主机间的相互通信,路由是关键。
――路由驱动表
每个主机都维持一个内核路由表用来标识可以转发包到一个指定的目标网络的主机或设备。这种选择正确网络路径的方式称为路由驱动表。
――静太路由
静态路由表中的路由是永久保存的,除非你手工删除它。重新启动系统时,将移除静态路由入口,大多数主机通常的静态入口是一个可以路由包到本地网络连接的一个主机。
Ifconfig 用来配置接口,及使用网络的静态路由入口(能够直接连接到你的本地网络接口)来更新内核路由表。因此,在单一用户模式下,一个主机可以直接路由到本地网络。
静态路由也可以手工增加到你的系统路由表中。这些静态入口定义了那些不能直接连接,但可以通过其它主机或设备调用一个路由进行搜索网络目标地址。
――动态路由
动态路由指路由的环境不断改变。动态路由通常用来标识那些不能直接进行连接但可以通过另一个路由器搜索到的其它网络目标。目标路由器要能够转发或发送包。
动态路由是由脚本 /etc/rc2.d/S69inet 启动的两个运行级别为2的守护进程来执行的。进程 in.routed执行协议RIP,而进程in.rdisc执行协议RDISC。
动态路由的理论支持就是:路由器在网上广播或通告他们已知的一切,其它主机用最新的和正确的信息来监听这些定期发布和更新的路由表。这样,路由表中就只留下有效的入口。路由器的监听和广播很相似。
――Internet控制信息协议重定向(ICMP Redirects)
ICMP用来处理控制和错误信息。在路由器或网关上的ICMP发送问题的报表给最初的源目标。
ICMP也包括一个用来测试一个目标是否可达的回显请求或应答。命令 ping 使用ICMP协议。
当一个主机使用默认的路由时,ICMP一般要被重定向。如果路由器知道一个更有效的转发包的路径,它将使用最佳路由来重定向数据报,并向发送者报告正确的路由信息。
发送主机的路由表由新的信息来更新。这种路由方式的困难就是每一个ICMP都被重定向,在发送主机的路由表中有一个独立的入口。这就有可能导致一个巨大的路由表。但,这也同时确保了包可以通过最短路径到达所有可搜索的主机。
――默认路由(Default Routing)
默认路由是一个入口表可以允许主机在任何时间定义默认的路由器,
它是所有不直接联接的工作站使用的静态地址。默认的路由器必须是可靠的。不需要定义每一个可达的网络。所有未直接连接的包目的就是到达默认路由器。
一个默认的路由器由 /etc/defaultrouter创建,包含了主机名或IP地址入口用来标识一个或多个路由器。重新启动时,它能够阻止 in.routed和 in.rdisc动态路由进程的启动。
默认路由的优点:
l /etc/defaultrouter文件能够阻止启动时的不必要的路由进程。
l 默认路由适合于只用一个路由器来搜索所有间接连接的目标。
l 在相对较小的路由表中只有一个单一的路由结果。
l 多个默认的路由器可以用来消除网络中的失效点。
默认路由的缺点:
l 默认的入口通常是当前的,即使当默认的路由已经关闭时。主机不能获取其它的可能的路径。
l 所有的系统必须配置文件:/etc/defaultrouter,这可以成为正在发展的大型网络的一个问题。
l 如果一个主机有多个可以使用的路由器时,会发生ICMP重定向。
――路由协议
――RIP
RIP是监听路由信息更新的协议。进程in.routed执行RIP,它建立并维护动态路由信息。
――关于进程 in.routed
当主机有多个以太端口存在时,进程 /usr/sbin/in.routed 触发主机广播路由信息。路由器每30秒向网络广播一次它的直接连接,但只有运行 in.routed的主机处理这些信息。当没有其它路由器运行in.routed Cq进程时,路由器运行in.routed进程。
RIP的优点:
l 它是一个常用的,易执行的,而且稳定的协议
l 路由器每30秒进行一次路由表的更新
l 它使网络管理员不需要再手工维护路由表,路由表的更新是动态的。
RIP的缺点:
l 由于频繁的网络广播,产生了大量的不必要的流量
l 路由信息经常是不可以改变的
l 它使监听主机每30秒唤醒进程 in.routed
l 在经过15个驿站后它使路径变为不可达,一个驿站就是一个路由的通道。
――命令格式:
/usr/sbin/in.routed [ -gqsStv] [ logfile]
in.routed进程在系统启动时由 /etc/init.d/inetinit脚本执行。它用来更新路由表。在路由器上它默认每30秒广播一次。
l 为了维持广播,你可以用 Cq参数用安静模式(quiet)来启动进程in.routed。但主机仍对其它所有广播监听。
# /usr/sbin/in.routed Cq
l 创建一个无路由广播,把它本身当做一个路由器
# /usr/sbin/in.routed Cs
l 要记录进程 in.routed的动作:
# /usr/sbin/in.routed Cv /var/adm/routelog
文件/var/adm/routelog不为空。
进程 in.routed读取文件/etc/gateways 初始化和建立它的路由表。这是一个增加永久(无源)路由器的另一种方式。这也是增加一个或多个不是默认路由的永久路由的方法。在/etc/gateway文件中有以下字段:
net
例如:
net 128.50.0.0 gateway sword-r metric 1 passive
RDISC
RDISC是一个在多址地址224.0.0.1的路由器上监听通告(advertise)信息的协议。RDISC通过进程 in.rdisc来执行。
――关于in.rdisc进程
主机通过in.rdisc来监听通告。路由器每600秒(10分钟)来运行in.rdisc Cr进程来通告它们的网络路径。本质上说,路由表定义了到每个通告路由器的路径而不是到每个个别的网络的路径。
――RDISC的优点:
l 它所产生的进程比进程 in.routed要少
l 它使用了一个多址广播
l 它产生了一个较小的路由表
l 如果一个路由失败,其它的则可被利用
――RDISC的缺点:
l 10分钟一个的通告周期有可能造成一个漏洞。漏洞是一个路由器的路径在当前的路由表中的时间段,但路由器不是当前实际的路由器。非通告路由的默认生存时间是30分钟(3次通告时间间隔)
l 路由器必须通行RIP协议(in.routed)来向其它网络进行学习。RDISC(in.rdisc)为主机提供了一个默认的路径,不是在路由器之间。
l 如果一个网络多于一个路由器,ICMP重定向将会发生。
――关于进程 in.rdisc
命令格式:
/usr/sbin/in.rdisc [-a] [-f] [-s] [send-address] [receive address]
/usr/sbin/in.rdisc -r [ -p preference] [-T interval] [send-address] [receive address]
进程in.rdisc执行ICMP发现协议。第一个格式主要用于无路由主机,第二个格式用于路由主机。
l 在系统启动时发送三个初始化请求信息来快速发现路由器。
# /usr/sbin/in.rdisc Cs
l 即使初始化请求失败,也强迫主机运行 in.rdisc 进程。
# /usr/sbin/in.rdisc Cf
l 引发一个路由器通告。
# /usr/sbin/in.rdisc Cr
l 改变路由通告的时间间隔(默认为600秒)
# /usr/sbin/in.rdisc Cr CT 100
多宿主主机
―― 一个表现复杂的路由器
在默认状态下,Solaris 2.x系统中,认为有多个网卡的机器就是路由器。不过,你可以改变路由器成为一个多宿主主机――有两块网卡但不运行路由协议或IP地址转发的主机。以下的机器类型可以配置为多宿主主机。
l NFS服务器,特别是大型的数据中心,可以在一个大型的用户池中绑定多个网卡。这些服务器不需要维护路由表。
l 数据库服务器因为和NFS同样的原因,可以绑定多个网卡。
l 防火墙网关可以提供私人网络到公共网络的连接如:Internet网的连接。系统管理员可以根据安全级别来设置防火墙。
当一个机器重新启动时,启动脚本文件:/etc/rc2.d/S69inet搜索当前的 /etc/notrouter文
件。如果这个文件存在,则启动脚本不运行 in.routed Cs或 in.routed Cr,并且不会进行IP转发。不管/etc/gateways文件是否存在,这个进程都将执行。
路由初始化
――有关于/etc/init.d/inetinit 脚本:
如图
启动脚本产生下列动作:
l 路由器的启动
*in.routed Cs
和或
*in.rdisc Cr
除非 /etc/notrouter文件存在
l 主机方式
*如果文件 /etc/defaultrouter已经被创建(由 in.rdisc或in.routed启动),则只维护静态的默认入口。
或者
*继续执行 in.rdisc Cs 如果原始的两个 in.rdisc Cs 请求成功的话。
或者
*启动 in.routed Cq 。在没有Solaris 2.x环境中的RDISC路由器的特殊情况下,进程 in.routed Cq将会启动。
――文件 /etc/init.d/inetsvc
这个脚本用来初始化地址为 224.0.0.0的多路。这个脚本执行命令 route 来增加一条路径到目的地。关于 route 命令本章将会继续讨论。
显示路由表
――命令 /usr/bin/netstat Cr
/usr/bin/netstat Cr 命令用来显示路由表信息。
例如:
# netstat Cr
Routing Table:
Destination Gateway Flags Ref Use Interface
Localhost localhost UH 0 2272 lo0
128.50.1.0 bear U 3 562 le0
128.50.2.0 potato-r UG 10 1562 le0
128.50.3.0 skunk UG 3 562 le0
224.0.0.0 bear U 3 0 le0
#
文件中的字段意义如下:
l Destination――目的网络或主机。这个字段涉及到文件/etc/inet/networks或 /etc/inet/hosts
l Gateway――发送或转发包的主机
l Flags――这个路由的状态。常用的选项一般有以下几个:
U――接口已经建立
H――目标是一个主机,不是一个网络
G――当前路由到达一个特定主机所使用的是一个网关或路由器
D――这条路径是一个由ICMP重定向的入口(通过重定向建立的路由)
l Ref――当前共享同一个网络IP地址的路由器数量
l Use――使用这个路由器发送包的数量,对于本地路由器来说,它也等同于接收包的数量
l Interface――用于目的地的接口设备
――关于 /etc/inet/networks 文件
文件 /etc/inet/networks用来建立网络名到网络IP地址的连接。以下是文件 /etc/inet/networks的文件字段。
Network-name network-number nicknames
举个例子来说:
Fish-net 128.50.3.0
Veggie-net 128.50.2.0
Zoo-net 128.50.1.0 Animal-net
l 在修改文件 /etc/inet/networks 后显示路由表
# netstat Cr
Routing Table:
Destination Gateway Flags Ref Use Interface
Localhost localhost UH 0 2272 lo0
Zoo-net bear U 3 562 le0
Veggie-net potato-r UG 10 1562 le0
Fish-net skunk UG 3 562 le0
224.0.0.0 bear U 3 0 le0
#
文件与 /etc/inet/networks 也与命令 route相关,下一节继续讨论。
手工操作路由表
――关于命令 route
命令格式:
route [-fn] add | delete [host|net] destination [gateway[metric]]
l 增加一个路由
# route add net 128.50.3.0 skunk 1
l 增加一个使用网络名的路由
# route add net Animal-net potato-r 1
l 删除一个路由
# route delete net 128.50.2.0 sword-r
l 刷新路由表
# route Cf
l 为网络224.0.0.0增加一个多址广播路径
# route add 224.0.0.0 ‘uname Cn’ 0
注意:RIP协议自动选择最短的路径(lowest metric)。关于路径的度量信息会被缓存保存在内核的路由表中。
注意:当删除一个入口或刷新路由表的时候,进程 in.routed和 in.rdisc停止监听广播和通告。这将冻结当前的路由表。有些进程需要手工重新启动来监听RIP的广播及RDISC的通告。
路由器的配置
――配置路由的步骤
配置Solaris 2.x系统下的路由器的步骤如下:
1. 为安装在机器上的网卡创建一个 /etc/hostname.interface 文件,并在这个文件中增加一包括这个接口主机名的行。
Hostname-for-interface
如:/etc/hostname.hme0 内容为: firewall
2. 修改文件 /etc/inet/hosts并增加一个新的IP地址和主机名
IP-Address hostname-for-interface
3. 执行重配置启动并中止系统以增加第二个以太网卡
# touch /reconfigure
# halt
4. 系统重启动后,检查新的网卡参数
# ifconfig Ca
――验证失败后应该执行的步骤
1. 确认设备信息树是否正确识别了第二块网卡
# prtconf
检查已经存在的设备名,并用新增加的以太网卡号为例。
2. 确认 ifconfig 命令看到了第二块卡
# ifconfig Ca
检查新网卡的参数配置是否适当
3. 你是否配置了正确的设备名和文件名
# ls Cl /etc/hostname.interface
检查设备名的后缀是否正确。如,设备le1, instance #1
4. 在文件 /etc/inet/hosts中是否正确的配置了IP地址
# cat /etc/inet/hosts
多宿主主机的配置
――多宿主主机的配置步骤
1. 为机器上已经安装的每个网卡创建一个文件:/etc/hostname.interface,并在文件中增加与这个网卡的主机名相关的行:
hostname-for-interface
2. 创建空文件:/etc/notrouter
# touch /etc/notrouter
3. 执行一个重配置启动,并为增加新网卡中止系统。
# touch /reconfigure
# halt
4. 系统重启动后,检查新的网卡参数
# ifconfig Ca
5. 检查主机是否已经是一个双宿主主机:
# ps Cef | grep in.r
root 119 1 0 Dec 29 ?0:01 /usr/sbin/rpcbind
root 111 1 0 dec 29 ?0:01 /usr/sbin/in.rdisc
root 340 33 1 19:59:55pts /2 0:00 qrep in.r
输出不应该影响进程 in.routed Cs或者 in.rdisc Cr
总结
在本章中,你已经学到
l 定义路由驱动表,静态路由,动态路由及默认路由
l 描述守护进程 in.routed 和 in.rdisc
l 描述进程 RIP和RDISC
l 描述路由启动脚本:/etc/init.d/inetinit
l 描述文件:/etc/defaultrouter, /etc/inet/networks, /etc/gateways和 /etc/notrouter
l 使用命令:route 和 netstat
l 会对路由和多宿主主机进行配置
原文转自:www.ltesting.net
★ 泊秦淮翻译
★ 桃花源记翻译
★ 如梦令翻译
★ 天净沙翻译
★ 琵琶行全文及翻译
★ 发言稿翻译
★ 晏子春秋翻译
★ 出师表 翻译
偶翻译的,ES310(Veritas)的东东,第一章,(努力翻译ing)Windows系统(通用4篇)




