访问控制列中established用法_第1页
访问控制列中established用法_第2页
访问控制列中established用法_第3页
访问控制列中established用法_第4页
访问控制列中established用法_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

访问控制列中established用法访问控制列中的established用法说明ACL中的established选项先来看一个例子:现有一台路由器A,其faO/O口连接内网,内网网段/16,s0/0口连接外网,现在路由器A上做如下配置:access-list101permittcpany55establishedints0/0ipaccess-group101in这个配置实现一下目标:外网只能回应内网的TCP连接,而不能发起对内网的TCP连接!access-list101permittcpany55这个命令很好理解吧?允许外网对内网的TCP访问。加上established选项后,ACL会对外网访问内网的TCP段中的ACK或RST位进行检查,如果ACK或RST位被设置(使用)了,则表示数据包是正在进行的会话的一部分,那么这个数据包会被permit。也就是说,在外网向内网发起TCP连接的时候,由于ACK或RST位未设置,这个时候是不会被permit的。关于TCP段中的字段:SYN:同步只在三次握手(建立连接)时设置ACK:确认在整个TCP通信过程中都可能用到RST:复位四次握手不是关闭TCP连接的唯一方法。有时,如果主机需要尽快关闭连接(或连接超时,端口或主机不可达),RST将被设置。FIN:结束只在在四次握手(终止连接)时设置URG:紧急PSH:推和我们今天说的内容有关字段如下:在三次握手时,发起方A首先发送SYN,接收方B回复ACK和SYN,发起方A再回复ACK。注意,发起方最开是发送的只有SYN,没有ACK。四次握手时,A向B发送ACK和FIN,B回复ACK,然后B向A发送ACK和FIN,A回复ACK。在中间的传输过程中ACK始终被使用。重置连接(reset)时,RST会被设置,ACK可能有也可能没有(大部分情况有)。综上,ACL中的established选项会影响到三次握手中的第一次!因为这次握手只有SYN,没有ACK或RST。简单总结一下:ACL中的established选项只适用于TCP而不适用于UDP。限制外部发起的TCP连接。可以适用端口号进一步限制,如:access-list101permittcpany55eq80established则不允许外网对内网发起80端口的TCP连接。标准型IP访问列表的格式 标准型IP访问列表的格式如下: access-list[listnumber][permit|deny][sourceaddress][address][wildcardmask][log]----下面解释一下标准型IP访问列表的关键字和参数。首先,在access和list这2个关键字之间必须有一个连字符"-";一、listnubmer参数listnumber的范围在0〜99之间,这表明该access-list语句是一个普通的标准型IP访问列表语句。因为对于CiscoIOS,在0〜99之间的数字指示出该访问列表和IP协议有关,所以listnumber参数具有双重功能:(1) 定义访问列表的操作协议;(2) 通知IOS在处理access-list语句时,把相同的listnumber参数作为同一实体对待。正如本文在后面所讨论的,扩展型IP访问列表也是通过listnumber(范围是100〜199之间的数字)而表现其特点的。因此,当运用访问列表时,还需要补充如下重要的规则:在需要创建访问列表的时候,需要选择适当的listnumber参数。二、 permit|deny允许/拒绝数据包通过一在标准型IP访问列表中,使用permit语句可以使得和访问列表项目匹配的数据包通过接口,而deny语句可以在接口过滤掉和访问列表项目匹配的数据包。三、 [sourceaddress][address][wildcardmask]代表主机的IP地址,利用不同掩码的组合可以指定主机。指定网络地址为了更好地了解IP地址和通配符掩码的作用,这里举一个例子。假设您的公司有一个分支机构,其IP地址为C类的。在您的公司,每个分支机构都需要通过总部的路由器访问Internet。要实现这点,您就可以使用一个通配符掩码55。因为C类IP地址的最后一组数字代表主机,把它们都置1即允许总部访问网络上的每一台主机。因此,您的标准型IP访问列表中的access-list语句如下: access-list1permit55 注意,通配符掩码是子网掩码的补充。因此,如果您是网络高手,您可以先确定子网掩码,然后把它转换成可应用的通配符掩码。这里,又可以补充一条访问列表的规则。指定主机地址如果您想要指定一个特定的主机,可以增加一个通配符掩码。例如,为了让来自IP地址为的数据包通过,可以使用下列语句: Access-list1permit----在Cisco的访问列表中,用户除了使用上述的通配符掩码来指定特定的主机外,还可以使用"host"这一关键字。例如,为了让来自IP地址为的数据包通过,您可以使用下列语句: Access-list1permithost一除了可以利用关键字"host"来代表通配符掩码夕卜,关键字"any"可以作为源地址的缩写,并代表通配符掩码0.00055。例如,如果希望拒绝来自IP地址为的站点的数据包,可以在访问列表中增加以下语句: Access-list1denyhost Access-list1permitany 注意上述2条访问列表语句的次序。第1条语句把来自源地址为的数据包过滤掉,第2条语句则允许来自任何源地址的数据包通过访问列表作用的接口。如果改变上述语句的次序,那么访问列表将不能够阻止来自源地址为的数据包通过接口。因为访问列表是按从上到下的次序执行语句的。这样,如果第1条语句是: Access-list1permitany 那么来自任何源地址的数据包都会通过接口。拒绝的奥秘 在默认情况下,除非明确规定允许通过,访问列表总是阻止或拒绝一切数据包的通过,即实际上在每个访问列表的最后,都隐含有一条"denyany"的语句。假设我们使用了前面创建的标准IP访问列表,从路由器的角度来看,这条语句的实际内容如下: access-list1denyhost access-list1permitany access-list1denyany 在上述例子里面,由于访问列表中第2条语句明确允许任何数据包都通过,所以隐含的拒绝语句不起作用,但实际情况并不总是如此。例如,如果希望来自源地址为和2的数据包通过路由器的接口,同时阻止其他一切数据包通过,则访问列表的代码如下: access-list1permithost access-list1permithost2 注意,因为所有的访问列表会自动在最后包括该语句.四、log讨论一下标准型IP访问列表的参数"log",它起日志的作用。一旦访问列表作用于某个接口,那么包括关键字"log"的语句将记录那些满足访问列表中"permit"和"deny"条件的数据包。第一个通过接口并且和访问列表语句匹配的数据包将立即产生一个日志信息。后续的数据包根据记录日志的方式,或者在控制台上显示日志,或者在内存中记录日志。通过CiscoIOS的控制台命令可以选择记录日志方式。扩展型IP访问列表----扩展型IP访问列表在数据包的过滤方面增加了不少功能和灵活性。除了可以基于源地址和目标地址过滤外,还可以根据协议、源端口和目的端口过滤,甚至可以利用各种选项过滤。这些选项能够对数据包中某些域的信息进行读取和比较。扩展型IP访问列表的通用格式如下: access-list[listnumber][permit|deny] [protocol|protocolkeyword] [sourceaddresssource-wildcardmask][sourceport] [destinationaddressdestination-wildcardmask] [destinationport][logoptions]一和标准型IP访问列表类似,"listnumber"标志了访问列表的类型。数字100〜199用于确定100个惟一的扩展型IP访问列表。"protocol"确定需要过滤的协议,其中包括IP、TCP、UDP和ICMP等等。 如果我们回顾一下数据包是如何形成的,我们就会了解为什么协议会影响数据包的过滤尽管有时这样会产生副作用。图2表示了数据包的形成。请注意,应用数据通常有一个在传输层增加的前缀,它可以是TCP协议或UDP协议的头部,这样就增加了一个指示应用的端口标志。当数据流入协议栈之后,网络层再加上一个包含地址信息的IP协议的头部。由于IP头部传送TCP、UDP、路由协议和ICMP协议,所以在访问列表的语句中,IP协议的级别比其他协议更为重要。但是,在有些应用中,您可能需要改变这种情况,您需要基于某个非IP协议进行过滤----为了更好地说明,下面列举2个扩展型IP访问列表的语句来说明。假设我们希望阻止TCP协议的流量访问IP地址为的服务器,同时允许其他协议的流量访问该服务器。那么以下访问列表语句能满足这一要求吗? access-list101permithost access-list101denyhost2----回答是否定的。第一条语句允许所有的IP流量、同时包括TCP流量通过指定的主机地址。这样,第二条语句将不起任何作用。可是,如果改变上面2条语句的次序反向访问列表有5个VLAN,分别为管理(63)、办公(48)、业务(49)、财务(50)、家庭(51)。要求:管理可以访问其它,而其它不能访问管理,并且其它VLAN之间不能互相访问!它的应用不受影响,例如通过上连进行INTERNET的访问。方法一:只在管理VLAN的接口上配置,其它VLAN接口不用配置。在入方向放置reflectipaccess-listextendedinfilterpermitipanyanyreflectcciepass在出方向放置evaluateipaccess-listextendedoutfilterevaluatecciepassdenyip55anydenyip.55anydenyip55anydenyip55anypermitipanyany!应用到管理接口intvlan63ipaccess-groupinfilterinipaccess-groupoutfilterout方法二:在管理VLAN接口上不放置任何访问列表,而是在其它VLAN接口都放以办公VLAN为例:在出方向放置reflectipaccess-listextendedoutfilterpermitipanyanyreflectcciepass!在入方向放置evaluateipaccess-listextendedinfilterdenyip5555denyip5555denyip5555denyip5555evaluatecciepasspermitipanyany!应用到办公VLAN接口:intvlan48ipaccess-groupinfilterinipaccess-groupoutfilterout总结:1)Reflect放置在允许的方向上(可进可出)2)放在管理VLAN上配置简单,但是不如放在所有其它VLAN上直接。3)如果在内网口上放置:在入上设置Reflect如果在外网口上放置:在出口上放置ReflectLANWANinboundoutbound4)reflect不对本地路由器上的数据包跟踪,所以对待进入的数据包时注意,要允许一些数据流进入从IOS12.0开始,CISCO路由器新增加了一种基于时间的访问列表。通过它,可以根据一天中的不同时间,或者根据一星期中的不同日期,当然也可以二者结合起来,控制对网络数据包的转发。一、使用方法这种基于时间的访问列表就是在原来的标准访问列表和扩展访问列表中加入有效的时间范围来更合理有效的控制网络。它需要先定义一个时间范围,然后在原来的各种访问列表的基础上应用它。并且,对于编号访问表和名称访问表都适用。二、使用规则用time-range命令来指定时间范围的名称,然后用absolute命令或者一个或多个periodic命令来具体定义时间范围。IOS命令格式为:time-rangetime-range-nameabsolute[starttimedate][endtimedate]periodicdays-of-theweekhh:mmto[days-of-theweek]hh:mm我们分别来介绍下每个命令和参数的详细情况time-range:用来定义时间范围的命令time-range-name:时间范围名称,用来标识时间范围,以便于在后面的访问列表中引用absolute:该命令用来指定绝对时间范围。它后面紧跟这start和end两个关键字。在这两个关键字后面的时间要以24小时制、hh:mm(小时:分钟)表示,日期要按照日/月/年来表示。可以看到,他们两个可以都省略。如果省略start及其后面的时间,那表示与之相联系的permit或deny语句立即生效,并一直作用到end处的时间为止;若省略如果省略end及其后面的时间,那表示与之相联系的permit或deny语句在start处表示的时间开始生效,并且永远发生作用,当然把访问列表删除了的话就不会起作用了。怎么样,看明白了吗?上面讲的就是命令和基本参数为了便于理解,我们看两个例子。1、 如果要表示每天的早8点到晚8点就可以用这样的语句:absolutestart8:00end20:002、 再如,我们要使一个访问列表从2006年10月1日早5点开始起作用,直到2006年10月31日晚24点停止作用,语句如下:absolutestart5:001December2000end24:0031December2000这样一来,我们就可以用这种基于时间的访问列表来实现,而不用半夜跑到办公室去删除那个访问列表了。这对于网络管理员来说,是个很好的事情。如果你恰好是网管。。哇。。。什么也不要讲了,快回去好好配置吧:)。好了接下来,让我们接着看下一个periodic命令及其参数。一个时间范围只能有一个absolute语句,但是可以有几个periodic语句。periodic:主要是以星期为参数来定义时间范围的一个命令。它的参数主要有宾Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunda中的一个或者几个的组合,也可以是daily(每天)、weekday(周一到周五)或者weekend(周末)。示例一:带Established选项的扩展访问列表拓扑:R2-(S2/0) (S2/0)-R1(S2/1) (S2/1)-R3带有Established的扩展访问列表允许内部用户访问外部网络,而拒绝外部网络访问内部网络,而没带Established的标准访问列表和扩展访问列表没有这个特性.这个示例首先用OSPF来使全网互联.R1:r1#shrun*Mar100:25:17.275:%SYS-5-CONFIG_I:ConfiguredfromconsolebyconsoleBuildingconfiguration...Currentconfiguration:1410bytes!version12.2servicetimestampsdebugdatetimemsecservicetimestampslogdatetimemsecnoservicepassword-encryption!hostnamer1!loggingqueue-limit100!ipsubnet-zeroipauditnotifylogipauditpomax-events100mplsldploggingneighbor-changesnovoicehpicapturebuffernovoicehpicapturedestination!!mtareceivemaximum-recipients0interfaceLoopback0ipaddress!interfaceFastEthernet0/0noipaddressshutdownduplexautospeedauto!interfaceFastEthernet1/0noipaddressshutdownduplexautospeedauto!interfaceSerial2/0ipaddressencapsulationframe-relayipospfnetworkpoint-to-pointserialrestart_delay0frame-relaymapip102broadcastnoframe-relayinverse-arp!interfaceSerial2/1ipaddressencapsulationframe-relayipospfnetworkpoint-to-pointserialrestart_delay0frame-relaymapip113broadcast!interfaceSerial2/2noipaddressshutdownserialrestart_delay0interfaceSerial2/3noipaddressshutdownserialrestart_delay0!routerospf10log-adjacency-changesnetwork55area0!iphttpservernoiphttpsecure-serveripclasslesscallrsvp-sync!!mgcpprofiledefaultdial-peercorcustomlinecon0lineaux0linevty04nologinendR2:r2#shrunBuildingconfiguration...*Mar100:27:29.871:%SYS-5-CONFIG_I:ConfiguredfromconsolebyconsoleCurrentconfiguration:1298bytes!version12.2servicetimestampsdebugdatetimemsecservicetimestampslogdatetimemsecnoservicepassword-encryption!hostnamer2!loggingqueue-limit100!ipsubnet-zeroipauditnotifylogipauditpomax-events100mplsldploggingneighbor-changesnovoicehpicapturebuffernovoicehpicapturedestinationmtareceivemaximum-recipients0interfaceLoopback0ipaddress!interfaceFastEthernet0/0noipaddressshutdownduplexautospeedauto!interfaceFastEthernet1/0noipaddressshutdownduplexautospeedauto!interfaceSerial2/0ipaddressencapsulationframe-relayipospfnetworkpoint-to-pointserialrestart_delay0frame-relaymapip201broadcastnoframe-relayinverse-arp!interfaceSerial2/1noipaddressshutdownserialrestart_delay0!interfaceSerial2/2noipaddressshutdownserialrestart_delay0!interfaceSerial2/3noipaddressshutdownserialrestart_delay0!routerospf10log-adjacency-changesnetwork55area0iphttpservernoiphttpsecure-serveripclasslesscallrsvp-sync!!mgcpprofiledefaultdial-peercorcustomlinecon0lineaux0linevty04nologin!!endr3r3#shrunBuildingconfiguration...Currentconfiguration:1298bytes!version12.2servicetimestampsdebugdatetimemsecservicetimestampslogdatetimemsecnoservicepassword-encryptionhostnamer3loggingqueue-limit100!ipsubnet-zeroipauditnotifylogipauditpomax-events100mplsldploggingneighbor-changesnovoicehpicapturebuffernovoicehpicapturedestination!!mtareceivemaximum-recipients0interfaceLoopback0ipaddress!interfaceFastEthernet0/0noipaddressshutdownduplexautospeedauto!interfaceFastEthernet1/0noipaddressshutdownduplexautospeedauto!interfaceSerial2/0noipaddressshutdownserialrestart_delay0!interfaceSerial2/1ipaddressencapsulationframe-relayipospfnetworkpoint-to-pointserialrestart_delay0frame-relaymapip311broadcastnoframe-relayinverse-arp!interfaceSerial2/2noipaddressshutdownserialrestart_delay0!interfaceSerial2/3noipaddressshutdownserialrestart_delay0!routerospf10log-adjacency-changesnetwork55area0!iphttpservernoiphttpsecure-serveripclasslesscallrsvp-sync!!mgcpprofiledefaultdial-peercorcustomlinecon0lineaux0linevty04nologin!!end监视和测试配置:我们让R2作为内部网络,R3作为内部网络,以下配置使R2发起访问R3没问题,从R3访问R2则被拒绝•注意这个配置方案是针对基于TCP的应甩任何TCP通讯都是双向的,从R2发起的访问外部网络之后,外部网络的流量得以通过,这个时候TCP报文,ACK或RST位被设置为1R1(configure)access-list101permittcpanyanyestablishedlog-inputR1(configure)access-list101permitospfanyanyR1(configure)access-list101denyipanyanylog-inputR1(configure)ints2/1R1(configure-if)ipaccess-group101in以上log-input是为了显示监视数据报文被过滤的情况,接下来用debugippacketdetailed来监视报文经过R1的情况,应该路由器还有OSPF报文产生,因此我们对DEBUG信息做了限制•r1(config)#access-list102permittcpanyany我们这样做让R2发起telnet访问R3r1#telnetTrying333.3...Openr3>*Mar100:55:53.003:IP:tableid=0,s=(local),d=(Serial2/1),routedviaRIB*Mar100:55:53.003:IP:s=(local),d=(Serial2/1),len44,sending*Mar100:55:53.007:TCPsrc=11001,dst=23,seq=2398697781,ack=0,win=4128SYN*Mar100:55:53.179:%SEC-6-IPACCESSLOGP:list101permittedtcp(23)(Serial2/1)->(11001),1packet*Mar100:55:53.183:IP:tableid=0,s=(Serial2/1),d=(Serial2/1),routedviaRIB*Mar100:55:53.183:IP:s=(Serial2/1),d=(Serial2/1),len44,rcvd3*Mar100:55:53.187:TCPsrc=23,dst=11001,seq=949632690,ack=2398697782,win=4128ACKSYN*Mar100:55:53.187:IP:tableid=0,s=(local),d=(Serial2/1),routedviaRIB*Mar100:55:53.191:IP:s=(local),d=(Serial2/1),len40,sending*Mar100:55:53.191:TCPsrc=11001,dst=23,seq=2398697782,ack=949632691,win=4128ACK*Mar100:55:53.199:IP:tableid=0,s=(local),d=(Serial2/1),routedviaRIB*Mar100:55:53.203:IP:s=(local),d=(Serial2/1),len49,sending*Mar100:55:53.203:TCPsrc=11001,dst=23,seq=2398697782,ack=949632691,win=4128ACKPSH*Mar100:55:53.207:IP:tableid=0,s=(local),d=(Serial2/1),routedviaRIB*Mar100:55:53.211:IP:s=(local),d=(Serial2/1),len40,sending*Mar100:55:53.215:TCPsrc=11001,dst=23,seq=2398697791,ack=949632691,win=4128ACK*Mar100:55:53.455:IP:tableid=0,s=(Serial2/1),d=(Serial2/1),routedviaRIB*Mar100:55:53.455:IP:s=(Serial2/1),d=(Serial2/1),len52,rcvd3*Mar100:55:53.459:TCPsrc=23,dst=11001,seq=949632691,ack=2398697791,win=4119ACKPSH*Mar100:55:53.459:IP:tableid=0,s=(Serial2/1),d=(Serial2/1),routedviaRIB*Mar100:55:53.463:IP:s=(Serial2/1),d=(Serial2/1),len45,rcvd3*Mar100:55:53.467:TCPsrc=23,dst=11001,seq=949632703,ack=2398697791,win=4119ACKPSH*Mar100:55:53.467:IP:tableid=0,s=(Serial2/1),d=(Serial2/1),routedviaRIB*Mar100:55:53.471:IP:s=(Serial2/1),d=(Serial2/1),len43,rcvd3*Mar100:55:53.471:TCPsrc=23,dst=11001,seq=949632708,ack=2398697791,win=4119ACKPSH*Mar100:55:53.475:IP:tableid=0,s=(Serial2/1),d=(Serial2/1),routedviaRIB*Mar100:55:53.479:IP:s=(Serial2/1),d=(Serial2/1),len46,rcvd3*Mar100:55:53.479:TCPsrc=23,dst=11001,seq=949632711,ack=2398697791,win=4119ACKPSH*Mar100:55:53.483:IP:tableid=0,s=(local),d=(Serial2/1),routedviaRIB*Mar100:55:53.487:IP:s=(local),d=(Serial2/1),len43,sending*Mar100:55:53.487:TCPsrc=11001,dst=23,seq=2398697791,ack=949632717,win=4102ACKPSH*Mar100:55:53.491:IP:tableid=0,s=(local),d=(Serial2/1),routedviaRIB*Mar100:55:53.495:IP:s=(local),d=(Serial2/1),len43,sending*Mar100:55:53.495:TCPsrc=11001,dst=23,seq=2398697794,ack=949632717,win=4102ACKPSH*Mar100:55:53.499:IP:tableid=0,s=(local),d=(Serial2/1),routedviaRIB*Mar100:55:53.503:IP:s=(local),d=(Serial2/1),len49,sending*Mar100:55:53.503:TCPsrc=11001,dst=23,seq=2398697797,ack=949632717,win=4102ACKPSH*Mar100:55:53.659:IP:tableid=0,s=(Serial2/1),d=(Serial2/1),routedviaRIB*Mar100:55:53.663:IP:s=(Serial2/1),d=(Serial2/1),len43,rcvd3*Mar100:55:53.663:TCPsrc=23,dst=11001,seq=949632717,ack=2398697797,win=4113ACKPSH*Mar100:55:53.867:IP:tableid=0,s=(local),d=(Serial2/1),routedviaRIB*Mar100:55:53.867:IP:s=(local),d=(Serial2/1),len40,sending*Mar100:55:53.871:TCPsrc=11001,dst=23,seq=2398697806,ack=949632720,win=4099ACK*Mar100:55:53.963:IP:tableid=0,s=(Serial2/1),d=(Serial2/1),routedviaRIB*Mar100:55:53.967:IP:s=(Serial2/1),d=(Serial2/1),len40,rcvd3*Mar100:55:53.967:TCPsrc=23,dst=11001,seq=949632720,ack=2398697806,win=4104ACK注意R3返回R2的数据报文得以通过,接下来我们测试从R3发起访问R2的情况r3#telnetTrying...%Destinationunreachable;gatewayorhostdownr1#*Mar101:02:22.779:%SEC-6-IPACCESSLOGP:list101deniedtcp(11002)(Serial2/1)->(23),1packet*Mar101:02:22.783:IP:s=(Serial2/1),d=,len44,accessdenied*Mar101:02:22.783:IP:tableid=0,s=(local),d=(Serial2/1),routedviaRIB*Mar101:02:22.787:IP:s=(local),d=(Serial2/1),len56,sending*Mar101:02:24.139:IP:s=(Serial2/0),d=,len80,rcvd0*Mar101:02:24.315:IP:s=(local),d=(Serial2/1),len80,sendingbroad/multicast*Mar101:02:25.139:IP:s=(local),d=(Serial2/0),len80,sendingbroad/multicast注意,TCP协议的第一次发送是SYN字段这是用来同步准备建立一个新连接的两端主机,而ACK位由接收者置位从而向发送者表明数据已经成功接收.RST(reset)位说明什么时候重新启动连接.带Eetablished的扩展访问列表只允许ACK或RST位置1的TCP报文通过.reflect+evalute实现单向访问控制列表的最新实验结果interfaceVlan12ipaddress240ipaccess-groupin-filterinipaccess-groupout-filteroutiphelper-address93noipredirectsstandby12ip4standby12priority150standby12preempt第一步:ipaccess-listextendedin-filterevaluateabcddenyipanyanyipaccess-listextendedout-filterpermitipanyanyreflectabcd结果从VLAN12上的客户机ping其它VLAN的机器,提示:Replyfrom2:Destinationnetunreachable.第二步:将上面的访问控制列表改为:ipaccess-listextendedin-filterpermitipanyanyreflectabcdipaccess-listextendedout-filterevaluateabcddenyipanyany结果从VLAN12的客户机可以ping通其它vlan的机器,但其它vlan的机器ping不通vlan12的机器.观察发现,我从vlan12的客户机上ping其它vlan里面的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论