阿国运维网技术分享平台:桌面运维、网络运维、系统运维、服务器运维(及云服务器),精品软件分享、阿国网络、尽在北京运维网
这期我们学习链路聚合、vlan互通、静态路由,再加一个DHCP中继,这些知识点都是中小型办公网、企业网、园区网要用到的,
后续我们再逐步加入无线、冗余备份和防火墙相关知识,基本就可以实现一个中小型的企业网搭建了。为了让大家有兴趣学习,
知识点就主要以一些大方面的为主,尽量都搭配实验环境学习,如有漏掉的一些知识点,我们遇到的时候顺带跟着实验一起学习。
一、实验拓扑图
本期实验拓扑图以华为S5700和AR系列路由器为主,采用标准的核心-汇聚-接入网络架构,拓扑规划如下。
大致需求如下:
PC1属于vlan10,网段为172.16.10.0/24
PC2属于vlan20,网段为172.16.20.0/24
SW1为核心交换机,同时作为所有PC的网关
SW2汇聚SW3接入,这里汇聚其实可以不要,现在网络架构趋于扁平化,原来的三层网络架构现在已经优化为两层,不过中大型网络还是可以采用三层架构
DHCP_Server作为PC1和PC2的DHCP中继服务器
PC1和PC2采用vlan间路由互通
SW1和SW2以及SW3之间互联采用聚合,LACP模式
分支站点PC3和PC4分别属于vlan100和vlan200
SW4作为汇聚交换机,R2配置子接口作为vlan100和vlan200的网关
采用单臂路由的方式实现vlan100和vlan200互通
各设备之间互联地址已经给出,由于S5720接口无法直接配地址,我们后续互联使用vlanif接口解决
二、分步解决
1、先处理SW1-SW2-SW3以及DHCP_Server之间的接口。
配置前先介绍一下链路聚合,链路聚合(华为Eth-Trunk /新华三 Bridge-Aggregation)的核心思路很简单:将多条物理链路捆绑成一条逻辑链路,以此叠加带宽、实现冗余备份和负载分担等。
链路聚合主要有两种模式,手工负载分担模式(Static)和动态LACP模式(Dynamic),加入同一个聚合组的物理端口必须满足速率、双工模式、VLAN配置完全一致,流量会基于流(如源/目的MAC、IP地址等)哈希算法,在活动链路上分发。动态模式下,设备通过交互LACPDU报文,比较系统优先级(数值越小越优)来决定主动端,再依据主动端的接口优先级来选举活动链路。
SW1配置:
[SW1]vlan batch 10 20 1001 1002 #创建vlan,其中1001和1002将作为与R1和DHCP_Server互联用
int Eth-Trunk 1 #创建并进入聚合组1
mode lacp-static #聚合组模式
trunkport g0/0/21 #将接口21加入聚合组
trunkport g0/0/22
dis eth-trunk #查看聚合组信息
port link-type trunk #配置聚合接口类型,当接口加入聚合组以后,接口类型需要在聚合接口视图下配置
port trunk allow-pass vlan 10 20
接下来配置vlan10和vlan20的网关
int Vlanif 10
ip address 172.20.10.254 24
int vlan 20
ip address 172.20.20.254 24
把互联接口和地址一起配置完成
int vlanif 1001
ip address 10.1.1.1 30
int vlanif 1002
ip address 10.1.1.5 30
分别将接口加入对应vlan
int g0/0/20 #DHCP_Server互联
port link-type access
port default vlan 1001
int g0/0/24 #R1互联
port link-type access
port default vlan 1002
SW2配置,SW2比较简单,只需要创建vlan和互联接口即可:
vlan batch 10 20
int Eth-Trunk 1
mode lacp-static
trunkport g0/0/21
trunkport g0/0/22
port link-type trunk
port trunk allow-pass vlan 10 20
int Eth-Trunk 2 #创建聚合组2
mode lacp-static
port link-type trunk
port trunk allow-pass vlan 10 20
int g0/0/23 #进入接口视图
eth-trunk 2 #在接口下加入聚合组2,与上面在聚合组里添加接口一样,两种方式
int g0/0/24
eth-trunk 2
SW3配置:
创建vlan、聚合组、添加接口、放行vlan
vlan batch 10 20
int Eth-Trunk 2
mode lacp-static
trunkport g0/0/23
trunkport g0/0/24
port link-type trunk
port trunk allow-pass vlan 10 20
配置终端接口
int g0/0/1
port link-type access
port default vlan 10
int g0/0/2
port link-type access
port default vlan 20
2、接下来处理DHCP中继
之前我们讲过,DHCP协议使用广播来发现服务器。默认情况下,路由器隔离广播域,不会转发广播包,因此如果DHCP服务器和客户端不在同一个子网,客户端的广播请求就无法到达服务器。DHCP中继的作用就是代替客户端向DHCP服务器转发请求,从而跨三层获取到ip地址。
SW1配置:
[SW1]dhcp enable
int vlanif 10 #进入vlanif10接口
dhcp select relay #接口下开启dhcp中继服务
dhcp relay server-ip 10.1.1.2 #指定dhcp中继服务器地址
int vlan 20
dhcp select relay
dhcp relay server-ip 10.1.1.2
DHCP_Server配置:
dhcp enable #全局开启DHCP
ip pool POOL1 #建立地址池,名字为POOL1
dns-list 1.1.1.1
gateway-list 172.20.10.254
network 172.20.10.0 mask 255.255.255.0 #vlan10网段配置
ip pool POOL2 #为vlan20创建地址池
network 172.20.20.0 mask 255.255.255.0
gateway-list 172.20.20.254
dns-list 2.2.2.2
然后配置互联接口地址和默认路由,如果真实环境采用真正的服务器,那这两个步骤可以不配置,因为这里我们用路由器模拟DHCP服务器,所以要确保路由可达以及调用全局地址池。
int g0/0/0
ip address 10.1.1.2 30
Dhcp select global #由于SW1配置的中继是指到这个接口地址的,所以这个接口会将DHCP再指向全局,从而可以从全局地址池拿到对应地址
[DHCP_Server]ip route-static 0.0.0.0 0 10.1.1.1 #再添加一条默认路由,可以确保DHCP服务器和PC之间可以互通。
接下来我们测试一下PC获取地址情况:
可以看到获取到了253的地址,华为DHCP地址是从后向前分配,由于254已经分配给了网关,所以DHCP默认跳过此地址从前一个开始分配。
三、Vlan互通
Vlan间互通常见的有两种方式,单臂路由和三层vlanif接口
单臂路由原理:在一台路由器的一个物理接口上创建多个子接口,每个子接口对应一个 VLAN,通过 802.1Q 封装识别不同 VLAN 的标签。
节省物理接口,适合小型网络,vlan数量较少的情况,缺点是依靠软件转发,效率较低。
三层vlanif接口:在三层交换机上为每个 VLAN 创建一个 VLANIF 接口,并配置 IP地址作为该VLAN的网关。
VLAN间流量由交换机的硬件三层转发引擎直接处理。
上一步的配置,其实就已经实现了vlan10和vlan20的互通,当配置了vlanif接口地址,并且接口up状态,PC配置了正确的网关,
SW1就自动生成了直连路由,此时经过查询路由表就知道访问哪个vlan需要经过哪个vlanif接口。
在SW1上查看一下路由表
[SW1]dis ip routing-table #查看路由表
所以这一步我们以本次实验的分支站点为例,展示单臂路由配置:
SW4配置:
[SW4]vlan ba 100 200
interface GigabitEthernet0/0/4
port link-type access
port default vlan 200
interface GigabitEthernet0/0/3
port link-type access
port default vlan 100
interface GigabitEthernet0/0/1 #到路由的互联接口
port link-type trunk #多vlan,因此需要使用trunk接口
port trunk allow-pass vlan 100 200 #要放行所有需要通过的vlan
R2配置,这里是vlan100和vlan200能互通的关键:
interface GigabitEthernet0/0/1.100 #建立并进入g0/0/1接口的子接口
dot1q termination vid 100 #使用dot1q封装,实现VLAN标签的剥离和添加
ip address 10.10.100.254 255.255.255.0 #配置子接口地址,也是vlan100的网关
arp broadcast enable #这一步很重要,开启ARP广播请求,不开启无法通信
interface GigabitEthernet0/0/1.200 #为vlan200配置子接口
dot1q termination vid 200
ip address 10.10.200.254 255.255.255.0
arp broadcast enable
接下来为PC配置地址,测试连通性,PC3和PC4分别配置.1的地址:
可以看到已经通了,这就是单臂路由的配置,比较简单,重点是子接口一定要记得开启ARP广播。
上图有个小问题留给大家思考,红色圈起来的第一个包为什么丢包了,从第二个开始才真正的通了?大家思考一下原因,评论区可以讨论一下。
四、静态路由
接下来我们就处理vlan10和vlan20与分支站点之间通信的问题,全程采用静态路由实现:
SW1需要添加一条默认路由:
[SW1]ip route-static 0.0.0.0 0 10.1.1.6
R1配置:
互联接口地址配置:
interface GigabitEthernet0/0/1
ip address 10.1.1.6 255.255.255.252
interface GigabitEthernet0/0/0
ip address 10.1.1.9 255.255.255.252
添加两条静态路由,也叫回程路由,属于明细路由,明确了哪个地址或者网段下一跳要从哪里出去,通信都是双向的,有来有回,所以需要配置回程路由才可以知道回去的数据包从哪走:
[R1]ip route-static 172.20.10.0 255.255.255.0 10.1.1.5
[R1]ip route-static 172.20.20.0 255.255.255.0 10.1.1.5
还需要一条默认路由,PC1和PC2的数据包进入R1以后只要没有明确从哪走的,就是没有明细路由的情况下,全部都走默认路由,下一跳10.1.1.10就是R2。
[R1]ip route-static 0.0.0.0 0 10.1.1.10
R2配置:
互联接口地址配置
interface GigabitEthernet0/0/0
ip address 10.1.1.10 255.255.255.252
这里需要配置一条默认路由,就是所有进入的数据包全部默认走10.1.1.9,也就是R1:
[R2]ip route-static 0.0.0.0 0 10.1.1.9
到这里就差不多了,该有的路由基本都有了,我们从分支站点PC3测试一下到PC1和PC2是否可以通信:
确认通信没有问题,完成了PC1/2和PC3/4之间的互通。












