学好网络经验谈
我1993年开始学习计算机基础知识,利用两年的时间将计算机的硬件及部分软件进行了系统的学习;1995年开始学习网络知识,通过一年的学习,我已熟练掌握了网络的相关知识并能独立完成组网,1996年正式开始从事网络方面的工作,到现在已经积累了十几年的经验。回想这些年,我从零开始,从不懂计算机、不会网络,到现在已成为对网络熟知并经常为政府、企事业单位、各厅局解决网络问题,为网友解答问题的"高手",是怎么成长起来的呢?下面我将和有识之士一起分享我的经验。
要勤于学习
要学好网络(学任何其他的知识都是一样),首先要多看书,并且要翻看多种资料并大量阅读相关书籍。
作者在写每本书,都有其重点要表达的内容,但这些内容,有的适合读者,有的可能并不完全适合读者。可能一本书中,只有一部分对读者有用。所以,这就需要我们,从每本书中,摘抄记录下来对自己有用的内容,组成自己的知识网。
【说明】渔夫的捕鱼网,捕鸟人的捕鸟网,都不只有单一的一张网,往往都是利用多张网,最终真正捕捉到鱼或鸟的网,可能仅仅只是其中的一个网眼。但如果只有这么一个网眼,肯定也是抓不到鱼或鸟的。我们的知识也是这样,知识面越广、学的越精,碰到问题时,从自己的"知识网"中,找到答案的范围就越大。
但是,我们也并不是一味的多看书、死看书。我们在看书的时候,一定要思考,要通过对比多本相同或不同类型、知识的书,批判性的接受。因为有的书,加上了作者个人的观点,这些观点,有的只适合特定的场合,有的可能有偏差或错误,所以要批判的接受。
知识面广,是指除了要看本专业的书,还要看专业外的书。在有的时候,解决问题,并不完全靠专业知识。例如,我在写这篇文章的时候,一个读者问我一个问题,他在物理机上安装vCenter Server 5.5的时候,出现"错误28035"的提示,如图1所示。
图1 安装vCenter Server时出现28035错误
首先这个问题我也没有碰到过。首先我会了解他的安装环境、安装步骤,当我知道他的环境及步骤都没问题,我会继续从他的下载的镜像入手,我得知是从VMware官方网站下载的。之后我需要了解他的下载方式(是使用HTTP下载的还是使用VMware提供的"下载管理器"),及下载需要的时间,当读者告知是直接下载的,时间为20分钟时,我判断是下载的文件出现问题。于是我告诉读者下载一个MD5校验工具,检验下载的vCenter Server安装镜像的MD5值,然后与VMware官方网站提供的MD5值对比。经过检验,两者的MD5值不一样(如图2所示),表示下载的文件有问题,重新下载安装即可。
图2 检验下载后文件的MD5值与官方公布的MD5值
所以,虽然平时做系统集成、网络、虚拟化与云计算方面的项目,但除了看专业的图书外,与此之外的一些基础图书,我也会阅读。例如我经常看电脑报(现在是合订本)、微型计算机等杂志,《网络运维与管理》(以前的《网管员世界》我也是每年必订的。
看书范围广,并不是指,泛泛的看、泛泛的学。在学习专业知识的时候,要学的足够精。例如学习网络,IP地址与子网划分,这是基础知识是必须要学习的,而且必须要精通的。对于网管来说,正确的划分子网、了解DNS、网关的作用及意义,了解路由、交换,掌握交换机及路由器的基础配置,并掌握一些防火墙的配置,是学好管理网络的基础。
在日常生活中,还要多动手、多实践,多接触、多学习新的知识,了解新的技术特点。例如,我是从MS-DOS 3.30开始学起的,从MS-DOS 3.30,到MS-DOS 3.31、MS-DOS 4.0、5.0、6.0、6.22,以及Windows 3.1、Windows 3.11,到Windows NT 3.51、Windows NT 4.0,后面的Windows 95、Windows 98、Windows ME、Windows 2000、Windows XP、Windows Server 2003、Windows Server 2008、Windows Server 2008 R2、Windows Server 2012以及最新的Windows Server 2012 R2,以及Windows Vista、Windows 7、Windows 8、Windows 8.1,这些产品,每一个我都很熟悉,都是自己一点点的实验直到理解透彻并熟练应用。在Windows XP版本开始,我都是从Beta版开始测试使用的。Microsoft的其他产品,例如ISA Server,我是从ISA Server 2000、到ISA Server 2004、2006以及到后面的Forefront TMG 2010。例如Exchange,我是从Exchange 5.5到Exchange 2000、2003、2007、2010到现在的Exchange Server 2013。VMware的产品则是从VMware Workstation 1.0到现在的10.0.2,以及VMware GSX Server 1.0到3.0、VMware Server 1.0到2.0、VMware ESX Server 1.0到现在的5.5,每个版本我都用过,并且大多数用于实际的生产环境,并慢慢将其升级到最新的版本。
冷静的思考
在我们生产、生活中,可能会碰到各种各样的问题,在碰到问题时,要冷静的思考,千万不能着急。尤其是出现问题后,例如发生了误操作、导致了错误的结果时,这时就更不能着急。在时间允许的前提下,让大脑得到良好的放松及休息,以便用清醒的头脑解决问题。千万不能越急越动,导致事情向更坏的情况发展。
例如,在2014年上半年的时候,有个单位的服务器RAID卡坏了,然后整个系统就都不能启动(是突然断电之后造成的,断电时间太长,UPS也没电了)。他们首先判断服务器启动不了了,找不到硬盘。他们直观的看到有个硬盘亮了"黄灯",表示这个硬盘已经出了故障。于是更换硬盘,硬盘更换后,数据不能同步,此时厂商工程师上门,经过检查说RAID卡也坏了,然后更换新的RAID卡。在更换新的RAID卡之后,数据开始同步,但同步完成之后(1天之后),系统仍然不能启动。(因为这台服务器是安装的VMware ESXi 5.0(比较早安装的了),里面运行着生产所用的虚拟机)他们通过电话找到了我,当时我不在现场,他们通过电话与我交流,首先我指导他们进入RAID卡配置界面,检查磁盘信息及逻辑磁盘是否正常,然后,指导他们用VMware ESXi 5.0的安装磁盘,重新安装ESXi Server。在安装的时候,选择升级安装或重新安装,但要保留原来的数据,不能"覆盖安装",如图3所示,可以选择列表中的第1项或第2项。
图3 升级或重新安装,保留存储数据
在安装完成之后,使用vSphere Client连接到了ESXi服务器,仍然找不到虚拟机,我让他们浏览打开存储,可以看到存储中的每个虚拟机,让他们将这些虚拟机"添加到清单",添加之后,就可以启动虚拟机了。但是,在将虚拟机添加到VMware ESXi清单之后,发现虚拟机仍然不能启动,此时现场工作人员就有些着急了。
此时,我告诉他们,不要着急,因为能浏览存储、能将虚拟机添加到清单,表示服务器的数据并没有丢失,只是数据可能是出错了(突然断电,导致虚拟机数据损坏)。我想到了两种方法解决:
(1)对于不能启动的虚拟机,可以加载操作系统光盘镜像,重新安装虚拟机操作系统,在安装的时候,不要格式化虚拟机磁盘,可以更改安装的位置(例如原来安装在C盘Windows文件夹,可以改为其他文件夹例如WS,安装之后就可以看到数据。
(2)可以将虚拟机文件夹,复制或下载到本地,在本地安装VMware Workstation,在VMware Workstation中新建一个虚拟机,在虚拟机中安装操作系统(与不能启动虚拟机操作系统相同),然后将下载到本地的、不能启动的虚拟机的虚拟硬盘,挂载到新安装系统的虚拟机中,也能看到数据。
在我为这个单位规划并解决问题的时候,都是遵循如下的原则:
(1)在划分RAID卡的时候,划分至少两个逻辑分区,第一个逻辑分区30~100GB,用来安装操作系统(本例是VMware ESXi 5.0),剩下的划分另一个逻辑分区,用于保存数据。
(2)在安装虚拟机的时候,虚拟硬盘分区两个分区,第一个分区为40~80GB,用来安装虚拟机操作系统,而数据都保存在第2个分区中。
最后,现场人员,在不能启动的虚拟机中,安装相同的操作系统,看到数据在D盘都正常。然后重新安装SQL Server,附加数据库,并重新配置,至此系统恢复。
不依赖他人
要独立解决问题,不要养成依赖他人的习惯。在我上学的时候,我对无线电学就非常精通,经常给低年级的学生上课,教他们无线电的知识,教他们做电子小制作。我和他们的班长、学习委员或小组长一起学习一起讨论,得出如下结论:高手并不是天然就是高手,而是周围许多同学,碰到问题都问这人,他实际上一开始也不是样样都会,只是为大家解决的多了,无形中丰富了自己的知识和经验。解决的问题多了,自然而然的就是高手了。可以说,是周围的同学造就了他。
所以,对于我们初学者来说,一开始碰到问题,先不要着急问别人。而是独立思考、画图,想办法解决。如果什么问题都是通过问别人解决的,那就形不成自己知识库、能力库,也不能成为自己的本领。只有你真正独立解决的问题,才会成为你的能力。解决的一个问题,都会成为我们知识网上的重要一环。解决问题多了,知识网越密、能力越强。
丰富的知识
从事网络方面的工作,需要有丰富的知识。当碰到问题时,我们的大脑就像一台可以"高速检索"的计算机一样,查找与当前问题相关的场景、知识或经验。如果我们在故障现场,可以通过查看故障现象、使用工具或设备排查;如果不在现场,就需要与用户交流,从用户描述的情况中,分析问题原因、判断并解决问题。
有许多时候,事情(故障)与网络可能无关,需要我们从"周边"动手,想办法解决。
例如,在2014年5月份的时候,一些单位询问我,说他们的网站打不开了,而这些网站在单位内部访问没有问题,就是从外网(指Internet,互联网)访问不了。网站服务器,一直在例行使用,没有对网站进行大的更改。而防火墙与路由器也没有做调整。刚开始,我以为是防火墙策略被更改(以前单位出现过类似情况,管理员更改了策略之后没有保存,而由于突然断电再启动之后,由于策略没有保存导致使用旧的策略-更改前的策略),经过多次检查,发现确实如用户所说,网站及防火墙都没更改,而网站在局域网都能访问,只有Internet用户不能访问。后来我怀疑是端口问题,我使用telnet命令(telnet 网站的IP地址 80),发现不能登录80端口,随后我将网站改为80以外的端口例如81,发现网站可以打开(http://网站外网IP地址:81)。发现是端口问题之后,找专线接入运营商询问,是他们关闭了TCP的80及8080端口,如果要开通,需要进行IP地址的备案(不是网站域名备案,因为网站域名已经备案)。
在2013年年底与2014年年初的时候,联通关闭了专线用户的TCP的80及8080端口,在以前专线用户的端口都是开放的。电信的专线用户,默认情况下80端口是关闭的,需要申请才能开放。所以在这段时间,大量的联通专线用户的网站不能打开,只有到联通重新备案之后,才能开放。
良好的习惯
我现在设计与维护的网络有许多,每次设计或配置与维护网络,都要详细的记录下来,包括网络的拓扑(必备)、相关的IP地址、子网掩码、网关,服务器及交换机的用户名密码、一些关键参数(例如服务器的CPU数量、内存大小、硬盘的大小及数量、RAID的规划、每个逻辑分区大小、每个系统分区大小、格式),如果规划了网络,还要写清交换机、路由器在什么位置、相对应的管理地址、用户名密码是什么,都要记录下来。根据这些规划,当用户出了问题时,可根据这些记录的信息,帮用户解决问题。现在我们管理与维护的网络,用户经常问我有那些设备、设备的型号(以及设备的存放地址)、管理地址、用户名密码等。我打开以前的工作日志文件,都能很快的帮助用户解决。
在大多数的情况下,我们帮用户设计或维护了网络,可能和用户的协议是两、三年,但用户的设备出问题可能是五六年甚至更长的时间,等用户出问题找你的时候,如果你有这些记录信息,就能很容易的帮用户解决问题。在今年(2014年)6月份的时候,我们2008年的一个用户,服务器的RAID卡及硬盘损坏,硬盘数据丢失。我根据当时的记录,很清楚的指导当时服务器安装的是Windows Server 2003+ VMware Server+ ISA Server 2006,用户数据都在虚拟机中,虚拟机都在D盘中。我集中精力恢复了用户D盘的虚拟机文件,成功的为用户恢复了数据,挽回了用户的损失。
一般情况下,我会为每个用户创建一个文件夹,在这个文件夹中,再创建"拓扑图"、"交换机配置"、"IP地址规划表",并在根目录中,保存一个文本文件,里面有重新的信息,例如一些服务器及设备的密码、使用注意事项等。图3是某单位IP地址规划的的截图。
图3 交换机端口配置表
在图3中,记录了每个交换机的端口号、管理地址、存放位置。如果某个点网络有问题,可以快速知道问题出在那一个交换机,如果去检查,知道交换机在那个位置。更详细的记录表,可以记录交换机某个端口连接了那个房间的计算机,这样故障更容易定位。