基于ensp的园区网络搭建综合实验(详细步骤以及排错过程)

该文章已生成可运行项目,
一、技术介绍

本次实验运用到的技术有:

1、虚拟局域网(VLAN)
2、开放式最短路径优先(OSPF)
3、访问控制列表(ACL)
4、网络地址转换协议(NAT)
5、链路聚合(E-trunk)
6、生成树协议(STP)
7、多业务传送平台协议(MSTP)
8、虚拟路由冗余协议(VRRP)
9、DHCP中继技术

二、需求分析
项目背景和需求

你被雇佣为某公司网络工程师,该公司为小型企业,总人数约xxx人。公司目前设有研发部(xx人)、市场部(xx人)、行政部(xx人)和财务部(xx人)。目前该公司仅有一个公司总部,公司让你设计总部的园区网络,现该公司的网络需求如下:

1)公司内部各部门需实现正常通信,能够进行资源共享和信息共享,同时避免出现广播风暴,提高办公效率。
3)实现IP地址 的自动化管理和分配。
3)公司提供网页服务,公司各部门能够通过访问提供的URL访问该网页。
4)公司能够进行文件的统一管理,各部门能够集中进行文件的上传和下载。
5)公司可以使用NAT技术与互联网接入

三、网络结构设计

根据企业的总体网络结构分析后,采用三层结构组网的方式来实现数据的传输,即接入层、汇聚层和核心层,除了这三层结构以外还有DHCP区域、DMZ区域和ISP区域。

四、实验拓扑

五、设备基础配置

首先我先将DMZ、核心层和ISP的设备终端配置了ip地址;

后两层因为涉及vlanif之后慢慢的配置。

1、配置接入层的交换机(以LSW1为例)
<Huawei>undo ter monitor		# 关闭终端显示信息中心发送信息
<Huawei>sys
<Huawei>undo info-center enable		# 关闭信息中心
[Huawei]sysname LSW1

# 创建vlan
[LSW1]vlan batch 10 20 30 40	# 对应4个部门

[LSW1]int e0/0/1
[LSW1-Ethernet0/0/1]port link-type trunk
[LSW1-Ethernet0/0/1]port trunk allow-pass vlan all
[LSW1-Ethernet0/0/1]int e0/0/2
[LSW1-Ethernet0/0/2]port link-type trunk
[LSW1-Ethernet0/0/2]port trunk allow-pass vlan all

# 当有多个端口需要创建且均为相同配置,可以如下批量创建
[LSW1]port-group group-member Ethernet0/0/1 to Ethernet0/0/2
[LSW1-port-group]port link-type trunk
[LSW1-port-group]port trunk allow-pass vlan all

[LSW1]int e0/0/3
[LSW1-Ethernet0/0/3]port link-type access
[LSW1-Ethernet0/0/3]port default vlan 10
[LSW1-Ethernet0/0/3]int e0/0/4
[LSW1-Ethernet0/0/4]port link-type access
[LSW1-Ethernet0/0/4]port default vlan 10

接入端口(Access Port):一般用于终端设备与交换机之间互连,交换机与路由器连接的接口也需要使用接入端口。 干道端口(Trunk Port):一般用于交换机之间的互连。

后面其他交换机同理,只需要改变端口的vlan即可。

2、汇聚层的交换机

汇聚层的交换机需要使用到链路聚合的技术。

下面简单来介绍一下这项技术:

链路聚合技术:将个物理接口捆绑成一个逻辑接口,从而在不升级硬件情况下实现增加链路带宽带目的。Eth-Trunk链路两端相连的物理接口的数量、速率、双工方式、流控方式必须—致。

#以Core_LSW1为例:
[Core-LSW1]int Eth-Trunk 1
[Core-LSW1-Eth-Trunk1]port link-type trunk
[Core-LSW1-Eth-Trunk1]port trunk allow-pass vlan all
[Core-LSW1-Eth-Trunk1]trunkport GigabitEthernet 0/0/3
[Core-LSW1-Eth-Trunk1]trunkport GigabitEthernet 0/0/4

[Core-LSW1]dis eth-trunk 1
Eth-Trunk1's state information is:
WorkingMode: NORMAL         Hash arithmetic: According to SIP-XOR-DIP         
Least Active-linknumber: 1  Max Bandwidth-affected-linknumber: 8              
Operate status: up          Number Of Up Port In Trunk: 2                     
--------------------------------------------------------------------------------
PortName                      Status      Weight 
GigabitEthernet0/0/3          Up          1      
GigabitEthernet0/0/4          Up          1  
3、MSTP部署

MSTP(Multiple Spanning tree Algorithm and protocol)是多生成树技术,允许在一个交换环境中运行多个生成树,每个生成树称为一个实例(instance)。实例之间的生成树彼此独立,如一个实例下的阻塞接口在另一个实例上可能是一个转发端口。MSTP允许多个VLAN运行一个生成树实例,大部分情况下,运行多个生成树实例的好处就在于链路的负载分担,但是当只有一条冗余链路时,运行两个生成树实例完全可以实现负载均衡,同时又能节约系统开销。

MSTP(多生成树协议)是什么?
它是一种二层协议,用于防止以太网网络中的环路。它运行在交换机之间。
MSTP 运行在哪里? 
它运行在交换机之间连接接入、汇聚和核心层(二层部分)的链路(网段)上。

需要在接入层和汇聚层配置

下面以Core_LSW1为例:

[Core-LSW1]stp enable
[Core-LSW1]stp mode mstp
[Core-LSW1]stp region-configuration
[Core-LSW1-mst-region]region-name mstp
[Core-LSW1-mst-region]instance 1 vlan 10 20		
# 配置MSTP实例并关联相应的VLAN
[Core-LSW1-mst-region]instance 2 vlan 30 40
[Core-LSW1-mst-region]active region-configuration
# 启用配置
[Core-LSW1-mst-region]quit
[Core-LSW1]stp instance 1 root primary 		
# 配置汇聚层LSW1为实例1的主根桥
[Core-LSW1]stp instance 2 root secondary 	
# 配置汇聚层LSW1为实例2的备用根桥
# 优先级写法2
[Core-LSW1]stp instance 1 priority 4096
[Core-LSW1]stp instance 2 priority 8192
4、配置vlanif和VRRP

VLANIF 和 VLAN 的区别和联系
VLAN端口:它是一个物理端口。通常,我们配置access VLAN 10以使物理接口属于VLAN 10。 VLANIF:接口VLAN是逻辑端口。通常,此接口地址用作VLAN下用户的网关

VRRP介绍
虚拟路由冗余协议VRRP(Virtual Router Redundancy Protocol)是一种用于提高网络可靠性的容错协议。通过VRRP,可以在主机的下一跳设备出现故障时,及时将业务切换到备份设备,从而保障网络通信的连续性和可靠性。

(不是“两台设备各配一个不同的虚拟 IP”,那是两个不同的 VRRP 组,而不是一个组。)
(同一个 VRRP 组里,虚拟 IP 必须一致;)
(不同 VRRP 组(VRID 不同)可以用不同的虚拟 IP,做负载分担。)

以汇聚层Core_LSW1为例:

[Core-LSW1]vlan batch 10 20 30 40
[Core-LSW1]int Vlanif 10
[Core-LSW1-Vlanif10]ip address 192.168.10.1 24	
# LSW1为10.1,LSW2为10.2,下同
[Core-LSW1-Vlanif10]vrrp vrid 10 virtual-ip 192.168.10.254
[Core-LSW1-Vlanif10]vrrp vrid 10 priority 120	
# 设置优先级(默认为100),让VLAN10和20的请求优先到LSW1处理

[Core-LSW1]int Vlanif 20
[Core-LSW1-Vlanif20]ip address 192.168.20.1 24
[Core-LSW1-Vlanif20]vrrp vrid 20 virtual-ip 192.168.20.254
[Core-LSW1-Vlanif20]vrrp vrid 20 priority 120

[Core-LSW1]int Vlanif 30
[Core-LSW1-Vlanif30]ip address 192.168.30.1 24
[Core-LSW1-Vlanif30]vrrp vrid 30 virtual-ip 192.168.30.254

[Core-LSW1]int Vlanif 40
[Core-LSW1-Vlanif40]ip address 192.168.40.1 24
[Core-LSW1-Vlanif40]vrrp vrid 40 virtual-ip 192.168.40.254

故障排错:

#在配置完成的时候,发现Core_LSW1的vlanif30\40的状态异常,都为master,实际上两个应该为Backup,初步检查发现vlanif30的vrrp vrid配置错误。
#第二个问题:vlanif40出现了双主的现象(通讯故障)
#原因可能是Core_L1没有收到来自Core_L2优先级为120的vrrp通告报文。
#这通常是由以下原因导致的:
#1、VLAN 40 物理链路不通:检查两台核心交换机之间互联链路是否允许 VLAN 40 通过。
#2、二层阻塞:如果 MSTP 配置不当,VLAN 40 的某条链路可能被 STP 阻塞了,导致 VRRP 组播报文无法通过。
#3、配置未生效:确认 Core_LSW1 的 Vlanif40 接口是否 Up。

#检查(可以使用下面命令):
dis interface  Vlanif 40 #看接口状态
display ip interface brief vlanif 40 #看ip地址和接口的简要信息
display vrrp interface vlanif 40  #只看Vlanif40的VRRP状态
display stp brief  #看端口是否被STP阻塞

#最终发现Core_LSW2上的vlanif40的ip地址配置的与LSW1的一致,应该改为192.168.40.2\24。问题成果解决!
5、配置DHCP池塘
#只在Core_LSW1上配置DHCP池塘
[Core-LSW1]dhcp enable

[Core-LSW1]ip pool vlan10
[Core-LSW1-ip-pool-vlan10]gateway-list 192.168.10.254	# 网关地址
[Core-LSW1-ip-pool-vlan10]network 192.168.10.0 mask 24	# 加入地址池的网段
[Core-LSW1-ip-pool-vlan10]excluded-ip-address 192.168.10.1 192.168.10.2		# 排除已占用的接口(汇聚层交换机上的vlanif接口)
[Core-LSW1-ip-pool-vlan10]q
[Core-LSW1]ip pool vlan20
[Core-LSW1-ip-pool-vlan20]gateway-list 192.168.20.254
[Core-LSW1-ip-pool-vlan20]network 192.168.20.0 mask 24
[Core-LSW1-ip-pool-vlan20]excluded-ip-address 192.168.20.1 192.168.20.2
[Core-LSW1-ip-pool-vlan20]q
[Core-LSW1]ip pool vlan30
[Core-LSW1-ip-pool-vlan30]gateway-list 192.168.30.254
[Core-LSW1-ip-pool-vlan30]network 192.168.30.0 mask 24
[Core-LSW1-ip-pool-vlan30]excluded-ip-address 192.168.30.1 192.168.30.2
[Core-LSW1-ip-pool-vlan30]q
[Core-LSW1]ip pool vlan40
[Core-LSW1-ip-pool-vlan40]gateway-list 192.168.40.254
[Core-LSW1-ip-pool-vlan40]network 192.168.40.0 mask 24
[Core-LSW1-ip-pool-vlan40]excluded-ip-address 192.168.40.1 192.168.40.2
[Core-LSW1-ip-pool-vlan40]q

[Core-LSW1]int Vlanif 10
[Core-LSW1-Vlanif10]dhcp select global # 配置DHCP为全局模式
[Core-LSW1-Vlanif10]int Vlanif 20
[Core-LSW1-Vlanif20]dhcp select global 
[Core-LSW1-Vlanif20]int Vlanif 30
[Core-LSW1-Vlanif30]dhcp select global 
[Core-LSW1-Vlanif30]int Vlanif 40
[Core-LSW1-Vlanif40]dhcp select global 

#本次实验暂时不打算采用DHCP中继,而是采用了核心交换机作为DHCP服务器。(后面会遇到这个问题,又会采用DHCP中继)
#原因:
###避免 IP 冲突:华为交换机的 DHCP 服务器功能默认不会自动同步租约表。如果你在两台交换机上都配置相同的地址池,它们各自独立运行。Core_LSW1 可能分配了 192.168.10.2 给 PC1,Core_LSW2 也不知道,可能会把 192.168.10.2 再次分配给 PC2。这会导致严重的 IP 地址冲突。
###VRRP 联动:你已经在 Core_LSW1 上配置了 VRRP 优先级 120(Master),流量默认会优先走 Core_LSW1。DHCP 请求也是广播/单播到网关,由 Master 处理最为合理。

#缺点:如果 Core_LSW1 彻底挂了,Core_LSW2 接管网关(VRRP 切换),但此时没有 DHCP 服务器,新上线的 PC 将无法获取 IP 地址。但在一般的实验环境中,这种单点故障通常是可以接受的。

检查一下发现pc端并没有自动获取到ip地址;

[core_LSW1]dis dhcp server statistics
 DHCP Server Statistics: 

 Client Request          : 0       
  Dhcp Discover          : 0       
  Dhcp Request           : 0       
  Dhcp Decline           : 0       
  Dhcp Release           : 0       
  Dhcp Inform            : 0       
 Server Reply            : 0       
  Dhcp Offer             : 0       
  Dhcp Ack               : 0       
  Dhcp Nak               : 0       
 Bad Messages            : 0   
 #使用这个命令发现Core-LSW1 根本没有收到 PC 发来的 DHCP 请求包。说明PC 的广播包被“拦截”了,没能到达核心交换机。
 
[core_LSW1]dis port vlan
Port                    Link Type    PVID  Trunk VLAN List
-------------------------------------------------------------------------------
Eth-Trunk1              trunk        1     1-4094
GigabitEthernet0/0/1    hybrid       1     -                                   
GigabitEthernet0/0/2    hybrid       1     -                                   
GigabitEthernet0/0/3    hybrid       0     -                                   
GigabitEthernet0/0/4    hybrid       0     -                                   
GigabitEthernet0/0/5    hybrid       1     -                                   
GigabitEthernet0/0/6    hybrid       1     -                                   
GigabitEthernet0/0/7    hybrid       1     -                                   
GigabitEthernet0/0/8    hybrid       1     -     
#最后发现原来是汇聚层的交换机接口的trunk没有配置。。。
##如果 Core-LSW1 还连接了 LSW2、LSW3 等其他接入交换机,你需要找到对应的接口(如 GE0/0/7、GE0/0/6),重复执行上述 port link-type trunk 和 port trunk allow-pass vlan all 命令。(这时我将汇聚层与接入层相接交换机的接口上全都配置了trunk)
##Eth-Trunk1 已经允许了所有 VLAN,这通常是两台核心交换机之间的互联链路,这个配置是正确的,不要动它。

配置完成后再检查DHCP统计,发现计数开始增加,这次PC端应该就可以了获取ip了。

使用ipconfig的时候又出现了新的问题,发现PC1、PC2成功获取了IP地址,而PC3、PC4则还是没有。

6、问题分析

检查配置,从配置步骤中,发现了关键问题:

根本原因:MSTP + VRRP 配置不一致

配置存在以下问题:

配置项VLAN 10/20VLAN 30/40
MSTP实例Instance 1Instance 2
Core_LSW1 根桥角色主根桥 (priority 4096)备用根桥 (priority 8192)
VRRP优先级120 (Master)默认100 (可能为Backup)
DHCP服务器Core_LSW1Core_LSW1

问题所在:
1. Core_LSW1是VLAN 30/40的备用根桥,这意味着VLAN 30/40的流量路径优先走Core_LSW2
2. VLAN 30/40的VRRP没有设置优先级,如果Core_LSW2设置了更高优先级,Core_LSW2会成为VRRP Master
3. DHCP只在Core_LSW1上配置,但VLAN30/40的流量可能被导向 Core_LSW2

结果:PC3/PC4的DHCP请求被转发到Core_LSW2,但Core_LSW2没有DHCP服务!

解决方案:(这里选择的是第二种方法)

#方案一:修改 VRRP 优先级(推荐)
##在 Core_LSW1 上为 VLAN 30/40 设置更高的 VRRP 优先级,确保 Core_LSW1 成为所有 VLAN 的 VRRP Master:
##在 Core_LSW1 上配置
[Core-LSW1]int Vlanif 30
[Core-LSW1-Vlanif30]vrrp vrid 30 priority 120

[Core-LSW1]int Vlanif 40
[Core-LSW1-Vlanif40]vrrp vrid 40 priority 120

##配置完成后,Core_LSW1 将成为 VLAN 30/40 的主网关,PC3/PC4 的 DHCP 请求将由 Core_LSW1 响应,问题解决。
#方案二:在 Core_LSW2 上配置 DHCP 中继
##如果希望保持负载分担(VLAN 30/40 流量走 Core_LSW2),需要在 Core_LSW2 上配置 DHCP 中继:
##在 Core_LSW2 上配置
[Core-LSW2]dhcp enable
[Core-LSW2]int Vlanif 30
[Core-LSW2-Vlanif30]dhcp select relay
[Core-LSW2-Vlanif30]dhcp relay server-ip 192.168.30.1  # 指向 Core_LSW1

[Core-LSW2]int Vlanif 40
[Core-LSW2-Vlanif40]dhcp select relay
[Core-LSW2-Vlanif40]dhcp relay server-ip 192.168.40.1

##配置完成后,Core_LSW2 收到 DHCP 请求会单播转发给 Core_LSW1,由 Core_LSW1 分配地址。
#方案三:修改 MSTP 根桥配置
##让 Core_LSW1 成为所有 VLAN 的主根桥:
##在 Core_LSW1 上修改
[Core-LSW1]stp instance 1 root primary
[Core-LSW1]stp instance 2 root primary

##在 Core_LSW2 上修改
[Core-LSW2]stp instance 1 root secondary
[Core-LSW2]stp instance 2 root secondary

到这里汇聚层和接入层实现了设备之间的互通,接下来该核心层和汇聚层的设备,这里就要用到OSPF了;

7、规划OSPF区域
#汇聚层交换机配置:
[Core-LSW1]ospf
[Core-LSW1-ospf-1]area 1
[Core-LSW1-ospf-1-area-0.0.0.1]network 192.168.10.0 0.0.0.255
[Core-LSW1-ospf-1-area-0.0.0.1]area 2
[Core-LSW1-ospf-1-area-0.0.0.2]network 192.168.20.0 0.0.0.255
[Core-LSW1-ospf-1-area-0.0.0.2]area 3
[Core-LSW1-ospf-1-area-0.0.0.3]network 192.168.30.0 0.0.0.255
[Core-LSW1-ospf-1-area-0.0.0.3]area 4
[Core-LSW1-ospf-1-area-0.0.0.4]network 192.168.40.0 0.0.0.255
[Core-LSW1-ospf-1-area-0.0.0.4]area 0
[Core-LSW1-ospf-1-area-0.0.0.0]network 192.168.5.2 0.0.0.0		# 0代表严格匹配
[Core-LSW1-ospf-1-area-0.0.0.0]network 192.168.7.2 0.0.0.0

##core_LSW2的配置与C_LSW1的配置一样,但要注意ip地址。
#核心层路由器R1的配置:
[R1]ospf
[R1-ospf-1]
[R1-ospf-1]area 0
[R1-ospf-1-area-0.0.0.0]network 192.168.4.1 0.0.0.0
[R1-ospf-1-area-0.0.0.0]network 192.168.5.1 0.0.0.0
[R1-ospf-1-area-0.0.0.0]network 192.168.6.1 0.0.0.0
[R1-ospf-1-area-0.0.0.0]network 192.168.100.1 0.0.0.0
[R1-ospf-1-area-0.0.0.0]network 192.168.2.1 0.0.0.0

##R2、R3的配置与C_LSW1的配置一样,但要注意ip地址。

这里发现了一个问题,就是核心层的ospf表上并没有汇聚层的信息;可能是因为在core_LSW1上宣告了192.168.5.2地址,但实际上并没有配置这个地址,有两种方法:
1、使用vlanif   
2、使用三层物理接口

#解决方法1:
[Core_LSW1] vlan 5
[Core_LSW1] interface GigabitEthernet0/0/1
[Core_LSW1-GigabitEthernet0/0/1] port link-type access
[Core_LSW1-GigabitEthernet0/0/1] port default vlan 5
[Core_LSW1-GigabitEthernet0/0/1] quit
[Core_LSW1] interface Vlanif 5
[Core_LSW1-Vlanif5] ip address 192.168.5.2 255.255.255.0
[Core_LSW1-Vlanif5] quit

#解决方法2:
[Core_LSW1] interface GigabitEthernet0/0/1
[Core_LSW1-GigabitEthernet0/0/1] undo portswitch  
[Core_LSW1-GigabitEthernet0/0/1] ip address 192.168.5.2 255.255.255.0

配置完后测试一下连通性。

到此汇聚层、核心层、接入层全网互通。

8、出口区Nat与ACL策略配置
[Core-R3]acl 2000		# 设定基本ACL规则匹配网段
[Core-R3-acl-basic-2000]rule permit source 192.168.10.0 0.0.0.255		# 筛选出内网的网段
[Core-R3-acl-basic-2000]rule permit source 192.168.20.0 0.0.0.255
[Core-R3-acl-basic-2000]rule permit source 192.168.30.0 0.0.0.255
[Core-R3-acl-basic-2000]rule permit source 192.168.40.0 0.0.0.255

[Core-R3]int g0/0/2
[Core-R3-GigabitEthernet0/0/2]nat outbound 2000	
# 配置NAPT
[Core-R3-GigabitEthernet0/0/2]int g3/0/0
[Core-R3-GigabitEthernet3/0/0]nat outbound 2000

[Core-R3]ospf
[Core-R3-ospf-1]default-route-advertise always	
# 出口配置一条默认路由,让 R3 自动向所有内网设备(R1、R2 及其下的交换机)“广播”自己就是通往互联网的出口。

ip route-static 0.0.0.0 0.0.0.0 102.1.24.2
ip route-static 0.0.0.0 0.0.0.0 102.1.42.2 preference 80 ##备份
##配置静态路由

测试:

到此内网PC设备可以ping通外网,访问服务。。下面还剩下HTTP、FTP、DNS服务。

9、服务配置

点击设备直接进行配置

FTP服务:

HTTP服务:

DNS服务:

刚开始配置完成后,尝试使用域名访问HTTP发现并没有访问成功。

检查一下发现原来是PC端的DNS服务器地址没有配置。

总结

这次实验收获了很多,了解了小型公司中拓扑结构,熟悉网络设备的流程。强化了我的设备配置能力和排错能力,使我的网络水平得到了提升。

本文章已经生成可运行项目
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

祁白_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值