这是本人在大学本科的毕业设计内容,在这里分享出来,希望大佬们指正不足和能够改进的地方,我会在评论区置顶的,谢谢大家。
含配置环境和源码分享哦

介绍下我实现的功能吧:
1.接入的主机能够通过汇聚层的DHCP服务器自动获取IP地址、网关等信息,同时划分了VLAN
2. 配置了VRRP协议来实现汇聚层三层交换机的主备备份和负载分担
3. 在汇聚层的交换机间配置了链路聚合以实现提高带宽和快速交换报文
4. 根据VRRP内容配置了MSTP,做到不同的VLAN的流量也能做到主备备份和负载分担
5. 配置了路由器协议(这里是OSPF,并且只配置了区域0)来实现网络自动获取路由信息,同时在网络出口处配置了NAT
6. 配置了BFD协议来监视汇聚层三层交换机的上行链路以实现VRRP快速收敛(这里忘记配置与OSPF的联动了)
7. 在接入防火墙集群和数据中心集群的端口处配置了端口镜像用于监听网络整体流量
8. 配置了组播协议,以实现组播功能(这里采用的是IGMPv2和PIM-SM)
9. 对汇聚层和核心层的交换机和路由器配置了Telnet
10. 配置了相应的安全内容(如端口镜像、ARP固化)(DHCP Snooping、IPSG、DAI等尚未配置),同时接入Kali虚拟机进行安全性测试
11. 配置了HTTP、DNS、FTP服务内容
12. 在防火墙集群处接入虚拟机并配置了m0n0wall防火墙系统
说说个人认为可以改进的地方吧:
1.首先是OSPF可以划分多个区域,如接入汇聚层交换机路由器划分至区域0,防火墙集群主机划分至区域1,数据中心集群划分至区域2等
2.上述提及的VRRP可以与OSPF也进行联动
3.上述提及的安全方面可以增加DHCP Snooping、IPSG、DAI等内容
4.可以尝试配置VPN、IP电话、IPv6等最新内容
那么这里进行一步的说明吧:
1.首先在网络整体布局上使用了接入层-汇聚层-核心层三个层次,布线使用了双上行线路。
2.第二就是对于网络设备的选择:
3.IP地址分配方面:首先内网使用的是172.22.vlan号.x/24的IP地址,出口处连接组播源侧使用的是115.200.60.x/24网段,连接外部服务器侧使用的是223.104.244.x/24网段(至于为什么这么规划么,只能说是根据当时真机获取的IP地址参考得出的)
4.DHCP方面,DHCP服务是在汇聚层的四台三层交换机上配置的,同时配合了VRRP协议以防止关键设备单点故障。规划如下:
5 .MSTP方面需要注意的是MSTP各个实例对应各个VLAN,同时要注意MSTP某个实例中的主根桥需要与该实例对应的VLAN的VRRP的主路由器一致,否则会造成次优路由问题
6.路由规划就不多讲了,只要注意一点:出口配置NAT是配置对应的ACL以做到只对允许的IP网段进行转换
7.BFD、链路聚合和端口镜像方面也感觉正常配置即可,注意的是BFD协议配合VRRP协议时,VRRP各个路由器的优先级推荐配置为加模式而不是减模式(即上行链路故障时对某些设备增加优先级而不是减少某些设备的优先级)
8.组播方面,采用IGMPv2的原因是其含组成员离开报文,且目前适用性最广。使用PIM的稀疏模式的原因是其包含RPT+SPT到SPT的转换且其特性符合校园网内组播时成员分布分散的特点。
需要注意的是,在配置PIM-SM时,RP和BSR的选举推荐在环回口上配置
9.最后就是安全内容了,这里只配置了端口安全和ARP固话,经测试mac地址泛洪攻击可以很好抵御,ARP攻击在没有配置DHCP Snooping和DAI的情况下还是会被攻击的(狗头)
可能我这里说明还是不是很清楚,我这里提供下我当时答辩的PPT和配置代码还是配置环境等内容吧,毕业论文也提供下吧,但是是英文的并且感觉写的也不咋地,别宣传,怕丢人,谢谢
地址:https://download.csdn.net/download/weixin_45235422/19845096
我设置的是免费的,如果不是可以提醒我下,我去改。如果下载成功的话希望能评论评星下,让我知道你们下载成功了啥,谢谢啦
环境的话基本上你有华为的eNSP软件并且下载了VLC就行,虚拟机方面记得改成我设置的网段,设置成仅主机模式,关闭VMWare自带的DHCP服务,关闭真机的防火墙还有就是真机的IP地址记得不要和虚拟环境中的内容冲突
好像csdn私自给我改成要VIP才能下载,这里分享下百度云吧:
链接:https://pan.baidu.com/s/1_44i0V_GH8JYylnTV3pqrw
提取码:2333
记得点赞哦
是的,我知道最好使用webmock,但我想知道如何在RSpec中模拟此方法:defmethod_to_testurl=URI.parseurireq=Net::HTTP::Post.newurl.pathres=Net::HTTP.start(url.host,url.port)do|http|http.requestreq,foo:1endresend这是RSpec:let(:uri){'http://example.com'}specify'HTTPcall'dohttp=mock:httpNet::HTTP.stub!(:start).and_yieldhttphttp.shou
导读:随着叮咚买菜业务的发展,不同的业务场景对数据分析提出了不同的需求,他们希望引入一款实时OLAP数据库,构建一个灵活的多维实时查询和分析的平台,统一数据的接入和查询方案,解决各业务线对数据高效实时查询和精细化运营的需求。经过调研选型,最终引入ApacheDoris作为最终的OLAP分析引擎,Doris作为核心的OLAP引擎支持复杂地分析操作、提供多维的数据视图,在叮咚买菜数十个业务场景中广泛应用。作者|叮咚买菜资深数据工程师韩青叮咚买菜创立于2017年5月,是一家专注美好食物的创业公司。叮咚买菜专注吃的事业,为满足更多人“想吃什么”而努力,通过美好食材的供应、美好滋味的开发以及美食品牌的孵
华为OD机试题本篇题目:明明的随机数题目输入描述输出描述:示例1输入输出说明代码编写思路最近更新的博客华为od2023|什么是华为od,od薪资待遇,od机试题清单华为OD机试真题大全,用Python解华为机试题|机试宝典【华为OD机试】全流程解析+经验分享,题型分享,防作弊指南华为o
system-view进入系统视图quit退到系统视图sysname交换机命名vlan20创建vlan(进入vlan20)displayvlan显示vlanundovlan20删除vlan20displayvlan20显示vlan里的端口20Interfacee1/0/24进入端口24portlink-typeaccessvlan20把当前端口放入vlan20undoporte1/0/10删除当前VLAN端口10displaycurrent-configuration显示当前配置02配置交换机支持TELNETinterfacevlan1进入VLAN1ipaddress192.168.3.100
C#实现简易绘图工具一.引言实验目的:通过制作窗体应用程序(C#画图软件),熟悉基本的窗体设计过程以及控件设计,事件处理等,熟悉使用C#的winform窗体进行绘图的基本步骤,对于面向对象编程有更加深刻的体会.Tutorial任务设计一个具有基本功能的画图软件**·包括简单的新建文件,保存,重新绘图等功能**·实现一些基本图形的绘制,包括铅笔和基本形状等,学习橡皮工具的创建**·设计一个合理舒适的UI界面**注明:你可能需要先了解一些关于winform窗体应用程序绘图的基本知识,以及关于GDI+类和结构的知识二.实验环境Windows系统下的visualstudio2017C#窗体应用程序三.
需求:要创建虚拟机,就需要给他提供一个虚拟的磁盘,我们就在/opt目录下创建一个10G大小的raw格式的虚拟磁盘CentOS-7-x86_64.raw命令格式:qemu-imgcreate-f磁盘格式磁盘名称磁盘大小qemu-imgcreate-f磁盘格式-o?1.创建磁盘qemu-imgcreate-fraw/opt/CentOS-7-x86_64.raw10G执行效果#ls/opt/CentOS-7-x86_64.raw2.安装虚拟机使用virt-install命令,基于我们提供的系统镜像和虚拟磁盘来创建一个虚拟机,另外在创建虚拟机之前,提前打开vnc客户端,在创建虚拟机的时候,通过vnc
假设我在Store的模型中有这个非常简单的方法:defgeocode_addressloc=Store.geocode(address)self.lat=loc.latself.lng=loc.lngend如果我想编写一些不受地理编码服务影响的测试脚本,这些脚本可能已关闭、有限制或取决于我的互联网连接,我该如何模拟地理编码服务?如果我可以将地理编码对象传递到该方法中,那将很容易,但我不知道在这种情况下该怎么做。谢谢!特里斯坦 最佳答案 使用内置模拟和stub的rspecs,你可以做这样的事情:setupdo@subject=MyCl
在ruby中,你可以这样做:classThingpublicdeff1puts"f1"endprivatedeff2puts"f2"endpublicdeff3puts"f3"endprivatedeff4puts"f4"endend现在f1和f3是公共(public)的,f2和f4是私有(private)的。内部发生了什么,允许您调用一个类方法,然后更改方法定义?我怎样才能实现相同的功能(表面上是创建我自己的java之类的注释)例如...classThingfundeff1puts"hey"endnotfundeff2puts"hey"endendfun和notfun将更改以下函数定
我有一个gem,它有一个根据Rails.env的不同行为的方法:defself.envifdefined?(Rails)Rails.envelsif...现在我想编写一个规范来测试这个代码路径。目前我是这样做的:Kernel.const_set(:Rails,nil)Rails.should_receive(:env).and_return('production')...没关系,只是感觉很丑。另一种方法是在spec_helper中声明:moduleRails;end而且效果也很好。但也许有更好的方法?理想情况下,这应该有效:rails=double('Rails')rails.sho
我正在寻找用于Rails的优质管理插件。似乎大多数现有的插件/gem(例如“restful_authentication”、“acts_as_authenticated”)都围绕着self注册等展开。但是,我正在寻找一种功能齐全的基于管理/管理角色的解决方案——但不是简单地附加到另一个非基于角色的解决方案。如果我找不到,我想我会自己动手......只是不想重新发明轮子。 最佳答案 RyanBates最近做了两个关于授权的railscast(注意身份验证和授权之间的区别;身份验证检查用户是否如她所说的那样,授权检查用户是否有权访问资源