热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

从“987分飘过,栽在ACLin/out~”说开去

几天前在某论坛中看到一个帖子,标题是“987分飘过,栽在ACLinout~”。今天写这篇博文的时候,再去论坛里找,却没有找到。幸好我还记得很清楚,得以继续这篇博文。这个帖子的内容是这样的:LZ考过了CCNA,但有一道关于ACL的题目,使他只得到了987分,否

几天前在某论坛中看到一个帖子,标题是“ 987分飘过,栽在ACL in/out~ ”。今天写这篇博文的时候,再去论坛里找,却没有找到。幸好我还记得很清楚,得以继续这篇博文。 这个帖子的内容是这样的:LZ考过了CCNA,但有一道关于ACL的题目,使他只得到了987分,否

几天前在某论坛中看到一个帖子,标题是“987分飘过,栽在ACL in/out~ ”。今天写这篇博文的时候,再去论坛里找,却没有找到。幸好我还记得很清楚,得以继续这篇博文。

这个帖子的内容是这样的:LZ考过了CCNA,但有一道关于ACL的题目,使他只得到了987分,否则就是满分1000分了。所以把这道ACL的题目也发出来了,希望别人给予指点。

网络拓扑如下:

WEB server ---------> f0/0 (Router) f0/1 ----------> (LAN) ------ Host1 Host2 Host3 ...

题目的要求是禁止某台主机访问WEB server。

他的访问列表是这样写的:

access-list 101 deny tcp <主机地址> <80>

access-list 101 permit ip any any

根据他在帖子里的描述,他把该ACL放置在f0/0接口上的in方向上,故此失掉了分数。但他还是没明白为什么。他认为只要不让访问服务器的数据从f0/0接口进,或者出,即可满足要求。因此他把ACL用在了in方向上。

我们来分析一下。(1)他的想法是对的,但不深刻。因为没有分清楚进入f0/0的数据和从f0/0外出的数据是不同的。要区分清楚数据流,需要分析一下IP报文的结构及其各字段内的值。进入f0/0的数据,其源地址是服务器的地址,目标地址是主机的地址,目标端口号肯定不是80,应该是主机发送http数据使用的源端口号;从f0/0出来的数据,其源地址是主机,目标地址是服务器,目标端口是80。(2)关于方向。有了上述分析后,自然知道该把ACL应用在哪个方向。就上述ACL,应该应用在f0/0的out方向才起效。(3)也可以用在f0/1的in方向。

从 LZ帖子标题的前半句看,考试通过了,分数还不低,考生的兴奋心情溢于言表,所以是“飘过”。当然,pass了考试,对每一个人来说都是件高兴的事,如果是高分通过,那就值得兴奋了。对在中国教育制度下的学生来说尤其如此。再看后半句,“栽在ACL in/out ~”,好像当头一盆冷水-连基本的ACL in/out都没搞懂,又有什么值得兴奋的呢?很显然,是背题考过的。如果不继续学习,即便有了证书,工作起来恐怕仍然吃力。

现在,背题成了流行的考试方式,单从应试角度来说,我不反对在考试前看看题库,但不是不求甚解地背诵,应根据题目所反映的考点把该掌握理论和技能学会。毕竟考试只是个手段,掌握技能才是重要的。但如果把考试看作是目的,只为那一个证书而考,最终连那个证书也意义不大了。前几天在论坛里还看到一个帖子,标题是“别小看了CCIE”,发贴的大概是个CCIE,他回应的是业界对CCIE的含金量的质疑。许多人认为考CCIE也是“背背题库,敲敲版本”而来的。真实水平并不是那么高的。该发贴人就说,思科设置的CCIE并不是让你背题敲版本的,思科建议有1~3年的实际工程、维护经验的人去考。背题敲版本的就算不上CCIE,真的CCIE还是很有水平的,不要小看了这些人。

我们应该重新思考一下考证和学习的关系,如何在行业树立一个良性的风气。Paper多了,对企业和个人都不利。考和学应该兼顾,考是手段,学才是真正目的。

无独有偶,同一天在思科学习空间上也看到一个帖子,内容也是关于ACL in/out的。帖子用英文写的,很显然,发贴的是个外国朋友。拓扑、要求同上。这位朋友的疑问是:Should I apply ACL on the interface f0/1 , in direction or on the f0/0, out direction ?应该应用在f0/1的in方向呢?还是f0/0的out方向?

因为扩展ACL既检查源地址,也检查目标地址,所以,当使用扩展ACL时,应该尽量应用在靠近数据发源地的路由器接口。也就是放在f0/1的in方向。这样,数据到达该接口后,就被丢弃,不需要再经过路由进程,查路由表,然后把数据转到f0/0接口,再经过检查ACL,被丢弃。节约了路由器系统资源。当然也节约了处理时间。

通过对比这2个同样是关于ACL in/out的问题,我们发现,这2位考虑问题的深度截然不同。前一位对数据流方向和IP报文结构不熟悉,其实是TCP/IP协议没学习好。后一位显然在考虑深层次的问题。已经考虑路由器的架构、路由过程和报文处理过程了。

表面上看似简单的问题,也许下面隐藏着很深的奥秘。这虽然是一个ccna级别的问题,看似简单,如果我们深入思考下去,能触及研发人员的思路。如果我们能理解研发人员的思路,我们掌握这些技术则是很容易的事了。

深入思考问题首先需要有端正的态度。在另一篇博文-《评“哗众取宠”的书名》里反驳了某人的态度。其认为《拨开CCNA迷雾-重点及疑难解析》这个书名有点哗众取宠。他认为CCNA是很简单的,只要“背背题库,敲敲版本”就没什么“迷雾”了。从这道ACL的题目上反映的问题来看,好像并不是那么简单的事情。


推荐阅读
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • 本文详细介绍了SQL日志收缩的方法,包括截断日志和删除不需要的旧日志记录。通过备份日志和使用DBCC SHRINKFILE命令可以实现日志的收缩。同时,还介绍了截断日志的原理和注意事项,包括不能截断事务日志的活动部分和MinLSN的确定方法。通过本文的方法,可以有效减小逻辑日志的大小,提高数据库的性能。 ... [详细]
  • 本文介绍了使用AJAX的POST请求实现数据修改功能的方法。通过ajax-post技术,可以实现在输入某个id后,通过ajax技术调用post.jsp修改具有该id记录的姓名的值。文章还提到了AJAX的概念和作用,以及使用async参数和open()方法的注意事项。同时强调了不推荐使用async=false的情况,并解释了JavaScript等待服务器响应的机制。 ... [详细]
  • PHP设置MySQL字符集的方法及使用mysqli_set_charset函数
    本文介绍了PHP设置MySQL字符集的方法,详细介绍了使用mysqli_set_charset函数来规定与数据库服务器进行数据传送时要使用的字符集。通过示例代码演示了如何设置默认客户端字符集。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • 本文介绍了如何找到并终止在8080端口上运行的进程的方法,通过使用终端命令lsof -i :8080可以获取在该端口上运行的所有进程的输出,并使用kill命令终止指定进程的运行。 ... [详细]
  • 禁止程序接收鼠标事件的工具_VNC Viewer for Mac(远程桌面工具)免费版
    VNCViewerforMac是一款运行在Mac平台上的远程桌面工具,vncviewermac版可以帮助您使用Mac的键盘和鼠标来控制远程计算机,操作简 ... [详细]
  • 本文详细介绍了云服务器API接口的概念和作用,以及如何使用API接口管理云上资源和开发应用程序。通过创建实例API、调整实例配置API、关闭实例API和退还实例API等功能,可以实现云服务器的创建、配置修改和销毁等操作。对于想要学习云服务器API接口的人来说,本文提供了详细的入门指南和使用方法。如果想进一步了解相关知识或阅读更多相关文章,请关注编程笔记行业资讯频道。 ... [详细]
  • 阿,里,云,物,联网,net,core,客户端,czgl,aliiotclient, ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 如何基于ggplot2构建相关系数矩阵热图以及一个友情故事
    本文介绍了如何在rstudio中安装ggplot2,并使用ggplot2构建相关系数矩阵热图。同时,通过一个友情故事,讲述了真爱难觅的故事背后的数据量化和皮尔逊相关系数的概念。故事中的小伙伴们在本科时参加各种考试,其中有些沉迷网络游戏,有些热爱体育,通过他们的故事,展示了不同兴趣和特长对学习和成绩的影响。 ... [详细]
  • 如何用UE4制作2D游戏文档——计算篇
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了如何用UE4制作2D游戏文档——计算篇相关的知识,希望对你有一定的参考价值。 ... [详细]
author-avatar
孝敏敏__216
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有