爱再来一次主题曲:Cisco_三层交换机关于VLAN的划分以及ACL的使用实例

来源:百度文库 编辑:偶看新闻 时间:2024/04/28 01:28:12
转载
今天下午去了一个公司,叫我过去的目的是帮他们划一下VLAN,本来想到应该还是很简单的,但是没有想到想了一下午的办法才想出来。感兴趣的话来试试看你能够花多少时间把这个方案想出来。

需求:

他们以前没有划分VLAN,用的一台Cisco 2918二层交换机,但是他们没有做任何配置,现在由于他们的有一部分计算机(192.168.1.0/24)配置比较差,当交换机发送一个广播包的时候就导致部分计算机假死机状态,于是他们买了一台Cisco 3560三层交换机想把192.168.1.0/24这个网段与其他网段(10.1.1.0/24,10.1.2.0/24)的广播包进行分离开来。

以下是对VLAN划分的一些要求:

1、要实现在SW1上面192.168.1.0/24这个网段能够正常访问10.1.1.0/24与10.1.2.0/24这两个网段。
2、SW1中只允许10.1.1.2/24与10.1.2.2/24这两台PC能够访问192.168.1.0/24的网段。3、 10.1.1.0/24与10.1.2.0/24这两个网段要能够正常访问SW2以外的网络。(也就是说10.1.1.0/24与10.1.2.0/24这两个网段的默认网关还得是10.1.1.1/24或者10.1.2.1/24才行。因为很多详细路由在SW2上面才有。)4、不能让SW1以外的计算机访问SW1中192.168.1.0/24这个网段。5、 SW2内的计算机能够访问SW1的服务器以及10.1.1.0/24与10.1.2.0/24这两个网段的计算机。(sw2为主公司交换机)
拓扑图如下:  


需求分析:

以前网络的分析:

从总部出来给了一根光纤过来,而这根光纤接入到总部交换机的VLAN20中。VLAN20的SVI地址是10.1.1.1/24,10.1.2.1/24这两个,在原始情况下10.1.1.0/24与10.1.2.0/24这两个网段要访问192.168.1.0/24的计算机,他们以前的解决方案是在192.168.1.0/24这个网段配置双IP地址,也就是说再给他们配置一个10.1.1.0/24或者10.1.2.0/24网段的地址。10.1.1.0/24或者10.1.2.0/24这两个网段要访问总部以外的网段网关必须指定10.1.1.1/24,10.1.2.1/24。

现在的需求分析:
从上面我们已经知道他们最主要想利用VLAN来隔离我们的广播域,但需要让我们SW1上的192.168.1.0/24与SW1上的10.1.1.2/24与10.1.2.2/24能够正常访问,还不能影响SW1上面的10.1.1.0/24与10.1.2.0/24访问SW2以及SW2以外的网络。
从上面的需要我们来分析一下,要隔离广播域我们都知道使用交换机上面的VLAN,这个很好解决,但是划了VLAN以后,要使不同VLAN间进行互相访问我们就必须给这个VLAN的SVI地址设置一个IP。当我们PC上面将网关设置成为自己所在VLAN下面的SVI地址,这样在开启三层交换机的路由功能就能够互相访问了,但是在这里我们又遇见一个问题?那就是从SW2过来的光纤给了两个IP地址给我们10.1.1.1/24,10.1.2.1/24。而在SW1上面的10网段中的计算机要访问外面的网络就必须将这两个地址设置成网关才行。
现在我想的办法就是,在SW1上面划分两个VLAN,VLAN20用于接192.168.1.0/24这个网段,VLAN30用于接10.1.1.0/24与10.1.2.0/24。VLAN20的SVI地址192.168.1.254/24,而在VLAN30我们给它的SVI地址设置两个IP,10.1.1.254/24与10.1.2.254/24。这样它们两个VLAN间通过这个SVI地址就可以互相进行通信了。

但是SW1中两个VLAN可以进行通信,现在又出现一个新的问题,我们以前10网段的PC,IP地址必须设置成10.1.1.1/24与10.1.2.1/24才能访问SW2以及它以外的网络,现在我们将它的网关设置成10.1.1.254/25与10.1.2.254/24以后,就不能访问SW2以外的网络,后面我想了一个办法就是10网段的PC的网关还是设置它以前的(10.1.1.1/24,10.1.2.1/2),而在要访问192.168.1.0/24这个网段的PC,在PC上的“命令提示符”下面加一条软路由,

> route add 192.168.1.0 mask 255.255.255.0 10.1.1.254         destination^      ^mask       ^gateway

这样当我们10网段的PC去往192.168.1.0这个网段的时候走10.1.1.254/24这个网关,而默认走10.1.1.1/24出来,这样就达到我们预期的目的了,但是没有加软件的计算机就不能够访问我们的192.168.1.0的网段了。

然后他们还要限制某几台10网段中的PC去访问192.168.1.0/24的网络,前面我们提到在PC上面添加软路由就可以访问我们的192.168.1.0/24的网络,那有的人就会想我不让他们访问的就不加嘛,那某些人他就想要来访问我们192.168.1.0/24的网络的时候,自己添加一条不就能够访问了,于是我使用了ACL来对他们做一个限制。只允许固定10网段中的几台PC可以访问192.168.1.0/24,其他10网段中的计算机即使添加了软路由还是不能够访问,这样就达到了我们的效果了。
以下是配置文档:

Switch#conf tEnter configuration commands, one per line. End with CNTL/Z.Switch(config)#vlan 20   //创建VLAN20Switch(config-vlan)#exitSwitch(config)#vlan 30   //创建VLAN30Switch(config-vlan)#exitSwitch(config)#int range fa0/1 -14    //进行fa0/1-14这一段接口Switch(config-if-range)#switchport mode access //将交换机端口设置成访问模式Switch(config-if-range)#switchport access vlan 20 //将该端口加入到vlan20当中Switch(config-if-range)#exitSwitch(config)#int range fa0/15 -24    //进行fa0/15-24这一段接口Switch(config-if-range)#switchport mode access    //将交换机端口设置成访问模式Switch(config-if-range)#switchport access vlan 30   //将该端口加入到vlan30当中Switch(config-if-range)#exitSwitch(config)#int vlan 20    //进入VLAN20的SVI接口Switch(config-if)#ip add 192.168.1.254 255.255.255.0 //给访问接口配置一个IP地址做为网关Switch(config-if)#exitSwitch(config)#int vlan 30   ////进入VLAN30的SVI接口Switch(config-if)#ip add 10.195.93.254 255.255.255.0//给访问接口配置一个IP地址做为网关Switch(config-if)#ip add 10.195.91.254 255.255.255.0 sec//给访问接口配置第二个IP地址做为网关Switch(config-if)#exitSwitch(config)#ip routing //开启我们的路由功能Switch(config)# access-list 100 permit ip 10.1.1.2 0.0.0.0 192.168.1.0 255.255.255.0     //允许10.1.1.2访问192.168.1.0/24Switch(config)# access-list 100 permit ip 10.1.2.2 0.0.0.0 192.168.1.0 255.255.255.0     //允许10.1.2.2访问192.168.1.0/24Switch(config)# access-list 100 deny ip any any //其他的都拒绝Switch(config)#int vlan 20   //进入VLAN20的SVI接口Switch(config-if)#ip access-group 100 in   //调用我们刚才建立的ACL100方向使用进,因为我们是对来的数据进行检查。Switch(config-if)#exit