1.1. 项目介绍
某中等规模公司的网络环境如下图1 所示,本公司现有三个部门分别是生产部、销售部、技术部,生产部属于vlan1,销售部属于vlan2,技术部属于vlan3,所有PC的IP地址均为静态配置,各部门之间都可互相通信,并且能够访问外网。
网络拓扑如图-1所示:
随着企业发展的需求,为了保证网络的稳定性及高可靠性,需将现有网络进一步规划:
即在现有网络规划和原有网络设备的基础上,添加一台路由器和一台三层交换机,对网络进一步规划设计。新设备与原有的路由器和三层交换机互相配合,分工协调工作,对网关和线路实现冗余备份,并使设备之间负载均衡,增强整个网络的容错能力,更加稳定可靠。
具体规划过程如下:
1. 新采购的三层交换机和原三层交换机互连,在两交换机上配置HSRP协议。三层交换机SW0是vlan1和vlan2的活跃路由,是vlan3的备份路由;三层交换机SW1是vlan3的活跃路由,是vlan1和vlan2的备份路由。两台三层交换机组成一个“热备份组”,作为一台虚拟路由对外提供服务。(配置虚拟网关,边缘通信设备或线路出现故障可使用户通信迅速并透明恢复。)
2. 在两台三层交换机配置STP生成树协议,三层交换机SW0是vlan1和vlan2的主根网桥,vlan3的次根网桥;三层交换机SW1是vlan3的主根网桥,vlan1和vlan2的次根网桥。目的是逻辑上断开环路,防止广播风暴的产生;当线路故障,阻塞接口被激活,恢复通信,起备份线路的作用。
综上,遵循一个原则:若将三层交换机作为某一vlan的主根,并且在此基础上配置该vlan作为默认网关,便可实现交换机以对该vlan流量的完全转发。如果再添加HSRP服务,还可实现对网关的备份,以及流量的负载均衡。
3. 在两台三层交换机SW0和SW1上配置以太网通道,实现线路的负载均衡,提高带宽。
4. 在两台三层交换机上分别设置对vlan1和vlan2的DHCP服务,实现对各部门计算机IP的自动获取,减少网络管理员的工作量。对vlan3技术部的服务器设置静态IP地址。
5. 在・两台路由器上分别配置端口多路复用(PAT),避免因一台路由器故障,影响整个网络对Internet的正常访问。
重新规划后的网络拓扑如图-2所示:
1.2. 方案
基于项目的需求,解决方案中需要用到如下技术:
Vlan划分技术:对广播进行控制,增强网络的安全性,提高网络带宽,减少延迟
Trunk中继链路:实现跨交换机vlan内通信。
以太网通道:多条线路负载均衡,提高带宽;容错,当一条线路失效时,其他线路通信,不会丢包。
动态路由RIP:实现各网段互联,自动构建路由表,减少网络管理员工作量。
默认路由: 适用于只有一个出口的末节网络,优先级最低,可以作为其他路由的补充,当找不到匹配的路由条目,默认使用此路由。
STP(生成树协议):逻辑上断开环路,防止广播风暴的产生;当线路故障,阻塞接口被激活,恢复通信,起备份线路的作用。
热备份路由选择协议(HSRP):网段上的两台或多台路由器可以作为一个虚拟路由器对外提供服务;HSRP使组内的cisco路由器能够互相监视对方的运行状态。
DHCP服务:在路由器上配置动态IP服务,减少管理员工作量。
ACL:为网络地址转换设定需要被转换的内部IP地址或网段。
端口多路复用(PAT):通过改变外出数据包的源IP地址和源端口并进行端口转换,内部网络的所有主机均可共享一个合法IP地址实现互联网的访问,节约IP。
1.3. 规划后网络连接说明:
设备 |
接口 |
IP地址 |
默认网关 |
对端设备 |
SW0 |
F0/1 |
-- |
-- |
MS0 |
F0/2 |
-- |
-- |
PC0 |
|
F0/3 |
-- |
-- |
PC1 |
|
F0/4 |
-- |
-- |
MS1 |
|
SW1 |
F0/1 |
-- |
-- |
MS0 |
F0/2 |
-- |
-- |
PC2 |
|
F0/3 |
-- |
-- |
PC3 |
|
F0/4 |
-- |
-- |
MS1 |
|
SW2 |
F0/1 |
-- |
-- |
MS0 |
F0/2 |
-- |
-- |
邮件服务器 |
|
F0/3 |
-- |
-- |
DNS服务器 |
|
F0/4 |
-- |
-- |
WEB服务器 |
|
F0/5 |
-- |
-- |
MS1 |
|
MS0 |
F0/1 |
-- |
-- |
SW0 |
F0/2 |
-- |
-- |
SW1 |
|
F0/3 |
-- |
-- |
SW2 |
|
F0/4 |
192.168.4.1/24 |
-- |
R0 |
|
F0/5 |
-- |
-- |
MS1 |
|
F0/6 |
-- |
-- |
MS1 |
|
F0/7 |
192.168.6.1/24 |
-- |
R1 |
|
Vlan1 |
192.168.1.254/24 |
-- |
-- |
|
Vlan2 |
192.168.2.254/24 |
-- |
-- |
|
Vlan3 |
192.168.3.254/24 |
-- |
-- |
|
MS1 |
F0/1 |
-- |
-- |
SW0 |
F0/2 |
-- |
-- |
SW1 |
|
F0/3 |
-- |
-- |
SW2 |
|
F0/4 |
192.168.5.1/24 |
-- |
R0 |
|
F0/5 |
-- |
-- |
MS0 |
|
F0/6 |
-- |
-- |
MS0 |
|
F0/7 |
192.168.7.1/24 |
-- |
R1 |
|
Vlan1 |
192.168.1.253/24 |
-- |
-- |
|
Vlan2 |
192.168.2.253/24 |
-- |
-- |
|
Vlan3 |
192.168.3.253/24 |
-- |
-- |
|
R0 |
F0/0 |
192.168.4.2/24 |
-- |
MS0 |
F0/1 |
200.0.0.254/24 |
-- |
Internet |
|
F1/0 |
192.168.5.2/24 |
-- |
MS1 |
|
R1 |
F0/0 |
192.168.6.2/24 |
-- |
MS0 |
F0/1 |
192.168.7.2/24 |
-- |
MS1 |
|
F1/0 |
200.0.0.253/24 |
-- |
Internet |
|
PC0 |
NICFa0 |
DHCP |
DHCP |
SW0 |
PC1 |
NICFa0 |
DHCP |
DHCP |
SW0 |
PC2 |
NICFa0 |
DHCP |
DHCP |
SW1 |
PC3 |
NICFa0 |
DHCP |
DHCP |
SW1 |
WEB服务器 |
NICFa0 |
192.168.3.1 |
192.168.3.254 |
SW2 |
MAIL服务器 |
NICFa0 |
192.168.3.2 |
192.168.3.254 |
SW2 |
DNS服务器 |
NICFa0 |
192.168.3.3 |
192.168.3.254 |
SW2 |
Internet |
F0/1 |
-- |
-- |
R0 |
F0/2 |
-- |
-- |
R1 |
|
Vlan1 |
200.0.0.1/24 |
-- |
-- |
注:Internet用一台二层交换机模拟
1.4. 实现
注:各台设备根据拓扑图中进行改名,因为命令简单,下述步骤没有逐一进行标明。
1. 配置二层交换机
v SW0配置
在SW0创建vlan2和vlan3,将fa0/2和fa0/3接口(静态接入端口模式)加入vlan1(默认本身就拥 有vlan1);接口fa0/1和fa0/4配置为trunk模式。
Switch>enable
Switch#configure terminal
Switch(config)#vlan 2
Switch(config-vlan)#exit
Switch(config)#vlan 3
Switch(config-vlan)#exit
Switch(config)#interface range fastEthernet 0/2-3
Switch(config-if-range)#switchport mode access
Switch(config-if-range)#switchport access vlan 1
Switch(config-if-range)#exit
Switch(config)#interface fastEthernet 0/1
Switch(config-if)#switchport mode trunk
Switch(config-if)#exit
Switch(config)#interface fa0/4
Switch(config-if)#switchport mode trunk
v SW1配置
在SW1创建vlan2和vlan3,将fa0/2和fa0/3接口(静态接入端口模式)加入vlan2;接口fa0/1和fa0/4配置为trunk模式。
Switch>enable
Switch#configure terminal
Switch(config)#vlan 2
Switch(config-vlan)#exit
Switch(config)#vlan 3
Switch(config-vlan)#exit
Switch(config)#interface range fastEthernet 0/2-3
Switch(config-if-range)#switchport mode access
Switch(config-if-range)#switchport access vlan 2
Switch(config-if-range)#exit
Switch(config)#interface fastEthernet 0/1
Switch(config-if)#switchport mode trunk
Switch(config-if)#exit
Switch(config)#interface fa0/4
Switch(config-if)#switchport mode trunk
v SW2配置
在SW2创建vlan2和vlan3,将fa0/2、fa0/3和fa0/4接口(静态接入端口模式)加入vlan3;接口fa0/1和fa0/5配置为trunk模式。
Switch>enable
Switch#configure terminal
Switch(config)#vlan 2
Switch(config-vlan)#exit
Switch(config)#vlan 3
Switch(config-vlan)#exit
Switch(config)#interface range fastEthernet 0/2-4
Switch(config-if-range)#switchport mode access
Switch(config-if-range)#switchport access vlan 3
Switch(config-if-range)#exit
Switch(config)#interface fastEthernet 0/1
Switch(config-if)#switchport mode trunk
Switch(config-if)#exit
Switch(config)#interface fa0/5
Switch(config-if)#switchport mode trunk
2. 配置三层交换机
v MS0的配置
创建vlan2和vlan3(虚拟接口),默认情况下已有vlan1,虽然即使不创建也能对虚接口配 置IP地址等参数,但只有创建之后才会使链路和接口状态激活,这点需要注意。
Switch>enable
Switch#configure terminal
Switch(config)#vlan 2
Switch(config-vlan)#exit
Switch(config)#vlan 3
Switch(config-vlan)#exit
将接口fa0/1-3配置为trunk端口模式
witch(config)#interface range fa0/1-3
Switch(config-if-range)#switchport trunk encapsulationdot1q
Switch(config-if-range)#switchport mode trunk
Switch(config-if-range)#exit
在fa0/5-6创建以太网通道
Switch(config)#interface range fastEthernet 0/5-6
Switch(config-if-range)#switchport trunk encapsulationdot1q
Switch(config-if-range)#switchport mode trunk
Switch(config-if-range)#channel-group 1 mode on
Switch(config-if-range)#exit
创建STP生成树协议,三层交换机配置为vlan1和vlan2的主根,vlan3的次根
Switch(config)#spanning-tree vlan 1 root primary
Switch(config)#spanning-tree vlan 2 root primary
Switch(config)#spanning-tree vlan 3 root secondary
在三层交换机MS0对SVI(虚拟接口)指定IP地址
Switch(config)#interface vlan 1
Switch(config-if)#ip address 192.168.1.254 255.255.255.0
Switch(config-if)#no shutdown
Switch(config)#interface vlan 2
Switch(config-if)#ip address 192.168.2.254 255.255.255.0
Switch(config-if)#no shutdown
Switch(config-if)#exit
Switch(config)#interface vlan 3
Switch(config-if)#ip address 192.168.3.254 255.255.255.0
Switch(config-if)#no shutdown
Switch(config-if)#exit
在接口fa0/4和fa0/7配置相应的IP地址,以此和边缘路由器通信
Switch(config)#interface fastEthernet 0/4
Switch(config-if)#no switchport
Switch(config-if)#ip address 192.168.4.1 255.255.255.0
Switch(config-if)#no shutdown
Switch(config-if)#exit
Switch(config)#interface fastEthernet 0/7
Switch(config-if)#no switchport
Switch(config-if)#ip address 192.168.6.1 255.255.255.0
Switch(config-if)#no shutdown
Switch(config-if)#exit
在三层交换机上创建DHCP服务
Switch(config)#ip dhcp pool vlan1
Switch(dhcp-config)#network 192.168.1.0 255.255.255.0
Switch(dhcp-config)#default-router 192.168.1.254
Switch(dhcp-config)#exit
Switch(config)#ip dhcp pool vlan2
Switch(dhcp-config)#network 192.168.2.0 255.255.255.0
Switch(dhcp-config)#default-router 192.168.2.254
Switch(dhcp-config)#exit
对每一个DHCP地址池预留一段静态的IP地址段,可供动态分配的地址段隔离开来,以免冲突(在MS1配置时就可以突显出来了,这一点很重要)
Switch(config)#ip dhcpexcluded-address 192.168.1.51 192.168.1.254
Switch(config)#ip dhcpexcluded-address 192.168.2.51 192.168.2.254
Switch(config)#ip dhcpexcluded-address 192.168.3.51 192.168.3.254
开启路由功能
Switch(config)#ip routing
在三层交换机MS0上创建HSRP热备份路由选择协议
Switch(config)#interface vlan 1
Switch(config-if)#standby 1 ip 192.168.1.200
Switch(config-if)#standby 1 priority 200
Switch(config-if)#standby 1 preempt
Switch(config-if)#standby 1 track fa0/4
Switch(config-if)#exit
Switch(config)#interface vlan 2
Switch(config-if)#standby 1 ip 192.168.2.200
Switch(config-if)#standby 1 priority 200
Switch(config-if)#standby 1 track fa0/4
Switch(config)#interface vlan 3
Switch(config-if)#standby 1 ip 192.168.3.200
Switch(config-if)#standby 1 priority 195
Switch(config-if)#standby 1 preempt
Switch(config-if)#exit
在三层交换机上配置RIP动态路由协议
Switch(config)#router rip
Switch(config-router)#version 2
Switch(config-router)#no auto-summary
Switch(config-router)#network 192.168.1.0
Switch(config-router)#network 192.168.2.0
Switch(config-router)#network 192.168.3.0
Switch(config-router)#network 192.168.4.0
Switch(config-router)#network 192.168.6.0
v MS1的配置
创建vlan2和vlan3
Switch>enable
Switch#configure terminal
Switch(config)#vlan 2
Switch(config-vlan)#exit
Switch(config)#vlan 3
Switch(config-vlan)#exit
将接口fa0/1-3配置为trunk端口模式
witch(config)#interface range fa0/1-3
Switch(config-if-range)#switchport trunk encapsulationdot1q
Switch(config-if-range)#switchport mode trunk
Switch(config-if-range)#exit
在fa0/5-6创建以太网通道
Switch(config)#interface range fastEthernet 0/5-6
Switch(config-if-range)#switchport trunk encapsulationdot1q
Switch(config-if-range)#switchport mode trunk
Switch(config-if-range)#channel-group 1 mode on
Switch(config-if-range)#exit
创建STP生成树协议,配置为vlan3的主根, vlan1和vlan2的次根
Switch(config)#spanning-tree vlan 3 root primary
Switch(config)#spanning-tree vlan 1 root secondary
Switch(config)#spanning-tree vlan 2 root secondary
在三层交换机对MS1的SVI(虚拟接口)指定IP地址(注:由于该接口与MS0的相应接口均作为同 一网段的网关,同属一个LAN,切莫IP地址冲突)
Switch(config)#interface vlan 1
Switch(config-if)#ip address 192.168.1.253 255.255.255.0
Switch(config-if)#no shutdown
Switch(config)#interface vlan 2
Switch(config-if)#ip address 192.168.2.253 255.255.255.0
Switch(config-if)#no shutdown
Switch(config-if)#exit
Switch(config)#interface vlan 3
Switch(config-if)#ip address 192.168.3.253 255.255.255.0
Switch(config-if)#no shutdown
Switch(config-if)#exit
在接口fa0/4和fa0/7配置相应的IP地址,以此和边缘路由器通信
Switch(config)#interface fastEthernet 0/4
Switch(config-if)#no switchport
Switch(config-if)#ip address 192.168.5.1 255.255.255.0
Switch(config-if)#no shutdown
Switch(config-if)#exit
Switch(config)#interface fastEthernet 0/7
Switch(config-if)#no switchport
Switch(config-if)#ip address 192.168.7.1 255.255.255.0
Switch(config-if)#no shutdown
Switch(config-if)#exit
在三层交换机上创建DHCP服务
Switch(config)#ip dhcp pool vlan1
Switch(dhcp-config)#network 192.168.1.0 255.255.255.0
Switch(dhcp-config)#default-router 192.168.1.253
Switch(dhcp-config)#exit
Switch(config)#ip dhcp pool vlan2
Switch(dhcp-config)#network 192.168.2.0 255.255.255.0
Switch(dhcp-config)#default-router 192.168.2.253
Switch(dhcp-config)#exit
对每一个DHCP地址池预留一段静态的IP地址段,可供动态分配的地址段隔离开来
Switch(config)#ip dhcpexcluded-address 192.168.1.1 192.168.1.49
Switch(config)#ip dhcpexcluded-address 192.168.2.1 192.168.2.49
Switch(config)#ip dhcpexcluded-address 192.168.3.1 192.168.3.49
Switch(config)#ip dhcpexcluded-address 192.168.1.101
Switch(config)#ip dhcp excluded-address 192.168.1.101 192.168.1.254
Switch(config)#ip dhcp excluded-address 192.168.2.101 192.168.2.254
Switch(config)#ip dhcp excluded-address 192.168.3.101 192.168.3.254
开启路由功能
Switch(config)#ip routing
在三层交换机MS0上创建HSRP热备份路由选择协议
Switch(config)#interface vlan 1
Switch(config-if)#standby 1 ip 192.168.1.200
Switch(config-if)#standby 1 priority 195
Switch(config-if)#standby 1 preempt
Switch(config-if)#exit
Switch(config)#interface vlan 2
Switch(config-if)#standby 1 ip 192.168.2.200
Switch(config-if)#standby 1 priority 195
Switch(config)#interface vlan 3
Switch(config-if)#standby 1 ip 192.168.3.200
Switch(config-if)#standby 1 priority 200
Switch(config-if)#standby 1 track fa0/7
Switch(config-if)#standby 1 preempt
Switch(config-if)#exit
在三层交换机上配置RIP动态路由协议
Switch(config)#router rip
Switch(config-router)#version 2
Switch(config-router)#no auto-summary
Switch(config-router)#network 192.168.1.0
Switch(config-router)#network 192.168.2.0
Switch(config-router)#network 192.168.3.0
Switch(config-router)#network 192.168.5.0
Switch(config-router)#network 192.168.7.0
3. 配置边缘路由器
v 配置路由器R0
给路由器R0各接口配置ip地址
Router(config)#int fa0/0
Router(config-if)#ip address 192.168.4.2 255.255.255.0
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#interface fastEthernet 0/1
Router(config-if)#ip address 200.0.0.254 255.255.255.0
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#interface fastEthernet 1/0
Router(config-if)#ip address 192.168.5.2 255.255.255.0
Router(config-if)#no shutdown
Router(config-if)#exit
配置默认路由:
Router(config)#ip route 0.0.0.0 0.0.0.0 fa0/1
在路由器R0上使用RIP协议
Router(config)#router rip
Router(config-router)#version 2
Router(config-router)#no auto-summary
Router(config-router)#network 192.168.4.0
Router(config-router)#network 192.168.5.0
Router(config-router)#default-information originate
在路由器R0上配置PAT
Router(config)#access-list 1 permit any
Router(config)#ip nat inside sourcelist 1 interface fa0/1 overload
Router(config)#interface fastEthernet 0/0
Router(config-if)#ip nat inside
Router(config-if)#exit
Router(config)#interface fastEthernet 1/0
Router(config-if)#ip nat inside
Router(config-if)#exit
Router(config)#interface fastEthernet 0/1
Router(config-if)#ip nat outside
Router(config-if)#exit
v 配置路由器R1
给路由器R1各接口配置ip地址
Router(config)#interface fa0/0
Router(config-if)#ip address 192.168.6.2 255.255.255.0
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#interface fa0/1
Router(config-if)#ip address 192.168.7.2 255.255.255.0
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#interface fastEthernet 1/0
Router(config-if)#ip address 200.0.0.253 255.255.255.0
Router(config-if)#no shutdown
配置默认路由
Router(config)#ip route 0.0.0.0 0.0.0.0 fa1/0
在路由器R1上使用RIP协议
Router(config)#router rip
Router(config-router)#version 2
Router(config-router)#no auto-summary
Router(config-router)#network 192.168.5.0
Router(config-router)#network 192.168.7.0
Router(config-router)#default-information originate
在路由器R1上配置PAT
Router(config)#access-list 1 permit any
Router(config)#ip nat inside source list 1 interface fa1/0overload
Router(config)#interface fa0/0
Router(config-if)#ip nat inside
Router(config-if)#exit
Router(config)#interface fa0/1
Router(config-if)#ip nat inside
Router(config-if)#exit
Router(config)#interface fa1/0
Router(config-if)#ip nat outside
Router(config-if)#exit
4. 配置Internet(交换机)
Switch(config)#interface vlan 1
Switch(config-if)#ip address 200.0.0.1 255.255.255.0
Switch(config-if)#no shutdown
1.5. 小结:
此实验需要注意的是,不能对Internet(交换机)配置网关,否则,即使没有地址转换也能够相互通信;而且路由器R0和R2使用RIP时,不能宣告外网段,否则也同样验证不了PAT,要知道在实际生产环境,是不可能知道外网的具体网段的,而且外网很多,会给内部网络的网络设备的路由表造成过大压力。因此最理想的方式,就是添加默认路由,宣告一条默认路由即可。
备注:整个拓扑的环境实现是在Cisco packet tracer模拟器的环境下实现,因此HSRP协议虽然可以配置,但无法生效和工作,在实际操作环境中则没有问题。
由于本人能力有限和客观条件的限制,缺陷在所难免,还请谅解。