1. 项目实践
1.1. 项目介绍
某中等规模公司的网络环境如下图1 所示,本公司现有三个部门分别是生产部、销售部、技术部,生产部属于vlan1,销售部属于vlan2,技术部属于vlan3,所有PC的IP地址均为静态配置,各部门之间都可互相通信,并且能够访问外网。
网络拓扑如图-1所示:
随着企业发展需求,为了保证网络稳定性及高可用性,需将现有网络进一步规划:
1)当MS1发生故障时是会导致公司内部无法访问外网,而且内网中的不同部门之间也不能通信,对于公司来说可能会造成巨大的损失。因此我们引进热备份路由协议,通过使用同一个虚拟IP地址和虚拟MAC地址,LAN网上的多台三层交换机可以作为一台虚拟的路由器提供服务,HSRP实现对组内路由器的监督,在第一时间防止企业网络瘫痪造成的损失。
2)在增加了三层交换机之后,将每个二层交换机连接在这个备份的三层交换机上,但是这又有了新的问题,由于三层交换机MS1独自支撑整个网络的数据通信,造成MS1的通信压力增加,导致它损坏的几率增大,所以为了解决三层交换机MS1通信的压力,我们在三层交换机之间连接一条中继链路,分担三层交换的负担。
3)增加一条线路固然不错,但是这条链路压力会增大,链路会很容易损坏,当链路损坏之后对三层交换机SM1的通信压力瞬间增加。所以我们引进通道技术来解决这个问题。在三层交换机之间连接多条链路,形成通道,实现多条线路负载均衡、带宽提高,当一条线路发生故障是其他线路也可以通信,具有容错功能。
4)但是又有了新的隐患,交换机之间形成了环路会产生广播风暴,为了解决这个问题我们引进了STP技术在逻辑上断开链路,当线路出现故障的时候,阻塞接口会自动激活,恢复通信,不仅防止了广播风暴的产生而且实现了链路的备份。
5)在与外网之间进行通信的时候当R1发生故障的时候会造成企业内部与外界不能及时的通信,导致企业的经济上的损失,为了解决这个问题我们增加一台路由器做R1的备份,与两台三层交换机相连,在R1发生故障的时候能够保证企业与外界正常通信,同时引进端口多路复用技术,通过改变外出数据包的源IP地址和源端口并进行端口转换,内部网络的所有主机可以共享一个合法的IP地址实现互联网的访问,节约了IP地址重新规划后的网络拓扑如图-2所示:
1.2. 方案
基于项目的需求,解决方案中需要用到如下技术:
VLAN:虚拟局域网,实现广播控制,提高网络的安全性和带宽利用率,减小延迟时间
Trunk:Trunk中继链路,实现跨交换机之间的VLAN 通信
Ethernet Channel:以太网通道,实现负载均衡,提高带宽利用率和链路的容错功能
DHCP:动态分配IP地址和网关,对企业内部的人员的调整以及变动
RIP:动态路由协议,减少了管理任务,增强了网络的可扩展行
HSRP:热备份路由协议,通过一个虚拟IP地址和虚拟网关对外提供服务,保护了网络中设备
STP:生成树协议,防止广播风暴的产生,对链路齐备份作用
ACL:访问控制列表,读取第三层与第四层的数据包头信息,按照规则对包过滤,起到对网络的保护作用
NAT:网络地址转换。将私有地址转换成全球唯一的公有地址,使得内部网络能够连接到互联网等外部网络上
1.3. 规划后网络连接说明:
设备 |
接口 |
IP地址 |
默认网关 |
对端设备 |
SW1 |
F0/1 |
n/a |
n/a |
PC1 |
F0/2 |
n/a |
n/a |
PC2 |
|
F0/3 |
n/a |
n/a |
MS1 |
|
F0/4 |
n/a |
n/a |
MS2 |
|
SW2 |
F0/1 |
n/a |
n/a |
PC3 |
F0/2 |
n/a |
n/a |
PC4 |
|
F0/3 |
n/a |
n/a |
MS1 |
|
F0/4 |
n/a |
n/a |
MS2 |
|
SW3 |
F0/1 |
n/a |
n/a |
WEB服务器 |
F0/2 |
n/a |
n/a |
邮件服务器 |
|
F0/3 |
n/a |
n/a |
DNS服务器 |
|
F0/4 |
n/a |
n/a |
MS1 |
|
F0/5 |
n/a |
n/a |
MS2 |
|
MS1 |
F0/1 |
n/a |
n/a |
SW1 |
F0/2 |
n/a |
n/a |
SW2 |
|
F0/3 |
n/a |
n/a |
SW3 |
|
F0/4 |
n/a |
n/a |
MS2 |
|
F0/5 |
n/a |
n/a |
MS2 |
|
F0/6 |
192.168.4.1/24 |
n/a |
R1 |
|
F0/7 |
192.168.5.1/24 |
n/a |
R2 |
|
Vlan1 |
192.168.1.252/24 |
n/a |
n/a |
|
Vlan2 |
192.168.2.252/24 |
n/a |
n/a |
|
Vlan3 |
192.168.3.252/24 |
n/a |
n/a |
|
MS2 |
F0/1 |
n/a |
n/a |
SW1 |
F0/2 |
n/a |
n/a |
SW2 |
|
F0/3 |
n/a |
n/a |
SW3 |
|
F0/4 |
n/a |
n/a |
MS1 |
|
F0/5 |
n/a |
n/a |
MS1 |
|
F0/6 |
192.168.6.1/24 |
n/a |
R1 |
|
F0/7 |
192.168.7.1/24 |
n/a |
R2 |
|
Vlan1 |
192.168.1.253/24 |
n/a |
n/a |
|
Vlan2 |
192.168.2.253/24 |
n/a |
n/a |
|
Vlan3 |
192.168.3.253/24 |
n/a |
n/a |
|
R1 |
G0/0 |
192.168.4.2/24 |
n/a |
MS1 |
G0/1 |
192.168.6.2/24 |
n/a |
MS2 |
|
G1/0 |
200.1.1.1/24 |
n/a |
Internet |
|
R2 |
G0/0 |
192.168.5.2/24 |
n/a |
MS1 |
G0/1 |
192.168.7.2/24 |
n/a |
MS2 |
|
G1/0 |
200.1.1.2/24 |
n/a |
Internet |
|
PC1 |
NIC |
DHCP |
DHCP |
SW1 |
PC2 |
NIC |
DHCP |
DHCP |
SW1 |
PC3 |
NIC |
DHCP |
DHCP |
SW2 |
PC4 |
NIC |
DHCP |
DHCP |
SW2 |
WEB服务器 |
NIC |
192.168.3.1 |
192.168.3.254 |
SW3 |
MAIL服务器 |
NIC |
192.168.3.2 |
192.168.3.254 |
SW3 |
DNS服务器 |
NIC |
192.168.3.3 |
192.168.3.254 |
SW3 |
Internet |
F0/1 |
n/a |
n/a |
R1 |
F0/2 |
n/a |
n/a |
R2 |
|
Vlan1 |
200.1.1.3/24 |
n/a |
n/a |
注:Internet用一台二层交换机模拟
1.4. 实现
注:各台设备根据拓扑图中进行改名,因为命令简单,下述步骤没有逐一进行标明。
(一)配置
1.分别在三台交换机上配置
1)SW1上的配置:
Switch>enable
Switch#conf t
Switch(config)#vlan 2
Switch(config-vlan)#vlan 3 //创建VLAN2 和L\VLAN3
Switch(config)#interface fastEthernet 0/2
Switch(config-if)#switchport access vlan 2 //将PC2加入VLAN2
Switch(config)#interface range fastEthernet 0/3 - 4
Switch(config-if-range)#switchport mode trunk //配置Trunk链路
2)SW2的配置:
Switch>enable
Switch#conf t
Switch(config)#vlan 2
Switch(config-vlan)#vlan 3 //创建VLAN2 和L\VLAN3
Switch(config)#interface fastEthernet 0/2
Switch(config-if)#switchport access vlan 2 //将PC4加入VLAN2
Switch(config)#interface range fastEthernet 0/3 - 4
Switch(config-if-range)#switchport mode trunk //配置Trunk链路
3)SW3的配置:
Switch>enable
Switch#conf t
Switch(config)#vlan 2
Switch(config-vlan)#vlan 3 //创建VLAN2 和L\VLAN3
Switch(config)#interface range fastEthernet 0/1 - 3
Switch(config-if-range)#switchport access vlan 3 //将服务器加入VLAN3
Switch(config)#interface range fastEthernet 0/4 - 5
Switch(config-if-range)#switchport mode trunk //配置Trunk链路
2.分别在二台三层交换机上配置
1)MS1配置:
Switch>enable
Switch#conf t
Switch(config)#ip routing //开启路由功能
Switch(config)#vlan 2
Switch(config-vlan)#vlan 3 //创建VLAN 2和VLAN 3
Switch(config)#interface range fastEthernet 0/1 - 5
Switch(config-if-range)#switchport trunk encapsulation dot1q
Switch(config-if-range)#switchport mode trunk //配置Trunk链路
Switch(config)#interface vlan 1
Switch(config-if)#ip address 192.168.1.252 255.255.255.0
Switch(config-if)#no shutdown //为VLAN 1配置IP地址
Switch(config)#interface vlan 2
Switch(config-if)#ip address 192.168.2.252 255.255.255.0
Switch(config-if)#no shutdown //为VLAN 2配置IP地址
Switch(config)#interface vlan 3
Switch(config-if)#ip address 192.168.3.252 255.255.255.0
Switch(config-if)#no shutdown //为VLAN 3配置IP地址
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)#dns-server 202.106.0.20
Switch(dhcp-config)#exit
Switch(config)#ip dhcp excluded-address 192.168.1.51 192.168.1.254
//配置DHCP服务同时为VLAN 1设置IP取值范围
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)#dns-server 202.106.0.20
Switch(dhcp-config)#exit
Switch(config)#ip dhcp excluded-address 192.168.2.51 192.168.2.254
//配置DHCP服务同时为VLAN 2设置IP取值范围
Switch(config)#interface vlan 1
Switch(config-if)#standby 1 ip 192.168.1.254
Switch(config-if)#standby 1 priority 200
Switch(config-if)#standby 1 preempt //在VLAN 1中配置HSRP服务
Switch(config)#interface vlan 2
Switch(config-if)#standby 2 ip 192.168.2.254
Switch(config-if)#standby 2 priority 195
Switch(config-if)#standby 2 preempt //在VLAN 2中配置HSRP服务
Switch(config)#interface vlan 3
Switch(config-if)#standby 3 ip 192.168.3.254
Switch(config-if)#standby 3 priority 200
Switch(config-if)#standby 3 preempt //在VLAN 3中配置HSRP服务
Switch(config)#spanning-tree vlan 1 root primary
Switch(config)#spanning-tree vlan 3 root primary
Switch(config)#spanning-tree vlan 2 root secondary
//配置STP,实现链路备份
Switch(config)#interface range fastEthernet 0/4 - 5
Switch(config-if-range)#channel-group 1 mode on //配置通道
Switch(config)#interface fastEthernet 0/6
Switch(config-if)#no switchport
Switch(config-if)#ip address 192.168.4.1 255.255.255.0
Switch(config-if)#no shutdown //为三层交换0/6接口配置IP
Switch(config)#interface fastEthernet 0/7
Switch(config-if)#no switchport
Switch(config-if)#ip address 192.168.5.1 255.255.255.0
Switch(config-if)#no shutdown //为三层交换0/7接口配置IP
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.5.0 //RIP服务配置
2)MS2配置:
Switch>enable
Switch#conf t
Switch(config)#ip routing //开启路由功能
Switch(config)#vlan 2
Switch(config-vlan)#vlan 3 //创建VLAN 2和VLAN 3
Switch(config)#interface range fastEthernet 0/1 - 5
Switch(config-if-range)#switchport trunk encapsulation dot1q
Switch(config-if-range)#switchport mode trunk //配置Trunk链路
Switch(config)#interface vlan 1
Switch(config-if)#ip address 192.168.1.253 255.255.255.0
Switch(config-if)#no shutdown //为VLAN 1配置IP地址
Switch(config)#interface vlan 2
Switch(config-if)#ip address 192.168.2.253 255.255.255.0
Switch(config-if)#no shutdown //为VLAN 2配置IP地址
Switch(config)#interface vlan 3
Switch(config-if)#ip address 192.168.3.253 255.255.255.0
Switch(config-if)#no shutdown //为VLAN 3配置IP地址
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)#dns-server 202.106.0.20
Switch(dhcp-config)#exit
Switch(config)#ip dhcp excluded-address 192.168.1.1 192.168.1.50
Switch(config)#ip dhcp excluded-address 192.168.1.101 192.168.1.254
//配置DHCP服务同时为VLAN 1设置IP取值范围
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)#dns-server 202.106.0.20
Switch(dhcp-config)#exit
Switch(config)#ip dhcp excluded-address 192.168.2.1 192.168.2.50
Switch(config)#ip dhcp excluded-address 192.168.2.101 192.168.2.254
//配置DHCP服务同时为VLAN 2设置IP取值范围
Switch(config)#interface vlan 1
Switch(config-if)#standby 1 ip 192.168.1.254
Switch(config-if)#standby 1 priority 195
Switch(config-if)#standby 1 preempt //在VLAN 1中配置HSRP服务
Switch(config)#interface vlan 2
Switch(config-if)#standby 2 ip 192.168.2.254
Switch(config-if)#standby 2 priority 200
Switch(config-if)#standby 2 preempt //在VLAN 2中配置HSRP服务
Switch(config)#interface vlan 3
Switch(config-if)#standby 3 ip 192.168.3.254
Switch(config-if)#standby 3 priority 195
Switch(config-if)#standby 3 preempt //在VLAN 3中配置HSRP服务
Switch(config)#spanning-tree vlan 1 root secondary
Switch(config)#spanning-tree vlan 2 root primary
Switch(config)#spanning-tree vlan 3 root secondary
//配置STP,实现链路备份
Switch(config)#interface range fastEthernet 0/4 - 5
Switch(config-if-range)#channel-group 1 mode on //配置通道
Switch(config)#interface fastEthernet 0/6
Switch(config-if)#no switchport
Switch(config-if)#ip address 192.168.6.1 255.255.255.0
Switch(config-if)#no shutdown //为三层交换0/6接口配置IP
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 //为三层交换0/7接口配置IP
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.6.0
Switch(config-router)#network 192.168.7.0 //RIP服务配置
3.分别在二台路由器上配置
1)R1的配置:
Router>enable
Router#conf t
Router(config)#interface fastEthernet 0/0
Router(config-if)#ip address 192.168.4.2 255.255.255.0
Router(config-if)#no shutdown //为R1接口0/0配置IP
Router(config)#interface fastEthernet 0/1
Router(config-if)#ip address 192.168.6.2 255.255.255.0
Router(config-if)#no shutdown //为R1接口0/1配置IP
Router(config)#interface fastEthernet 1/0
Router(config-if)#ip address 200.1.1.1 255.255.255.0
Router(config-if)#no shutdown //为R1接口1/0配置IP
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.6.0 //RIP服务配置
Router(config)#ip route 0.0.0.0 0.0.0.0 f1/0 //配置默认路由
Router(config)#router rip
Router(config-router)#version 2
Router(config-router)#default-information originate
//让三层交换机自动学习默认路由
Router(config)#interface fastEthernet 0/0
Router(config-if)#ip nat inside
Router(config-if)#exit
Router(config)#interface fastEthernet 0/1
Router(config-if)#ip nat inside
Router(config-if)#exit
Router(config)#interface fastEthernet 1/0
Router(config-if)#ip nat outside
Router(config)#access-list 1 permit any
Router(config)#ip nat inside source list 1 interface fastEthernet 1/0 overload //配置ACL和PAT服务
2)R2的配置:
Router>enable
Router#conf t
Router(config)#interface fastEthernet 0/0
Router(config-if)#ip address 192.168.5.2 255.255.255.0
Router(config-if)#no shutdown //为R2接口0/0配置IP
Router(config)#interface fastEthernet 0/1
Router(config-if)#ip address 192.168.7.2 255.255.255.0
Router(config-if)#no shutdown //为R2接口0/1配置IP
Router(config)#interface fastEthernet 1/0
Router(config-if)#ip address 200.1.1.2 255.255.255.0
Router(config-if)#no shutdown //为R2接口1/0配置IP
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 //RIP服务配置
Router(config)#ip route 0.0.0.0 0.0.0.0 f1/0 //配置默认路由
Router(config)#router rip
Router(config-router)#version 2
Router(config-router)#default-information originate
Router(config)#router rip
Router(config-router)#version 2
Router(config-router)#default-information originate
//让三层交换机自动学习默认路由
Router(config)#interface fastEthernet 0/0
Router(config-if)#ip nat inside
Router(config-if)#exit
Router(config)#interface fastEthernet 0/1
Router(config-if)#ip nat inside
Router(config-if)#exit
Router(config)#interface fastEthernet 1/0
Router(config-if)#ip nat outside
Router(config)#access-list 1 permit any
Router(config)#ip nat inside source list 1 interface fastEthernet 1/0 overload //配置ACL和PAT服务
4.Internet使用二层交换机Swintch4代替,配置如下:
Switch>enable
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)#interface vlan 1
Switch(config-if)#ip address 200.1.1.3 255.255.255.0
Switch(config-if)#no shutdown