袁来如此的工作笔记
袁来如此的工作笔记
竹杖芒鞋轻胜马,谁怕? 一蓑烟雨任平生。

网络原理

浏览量:709

很不错的一篇文章,形象的介绍了网络原理,必看厚厚的课本容易理解多了,记录下来:


在外面,多次听过有些老师讲过计算机网络的相关课程,也看过很多这方面的书籍。然而,由于网络技术太过抽象,再加上本人的基础实在太差,大多数课程都是听的云天雾地,不知所云。如是再三。回家苦思,发现计算机网络的技术原理其实很简单,在不追究技术细节的情况下,可以用很简单的日常生活事务来比喻网络中的工作过程,从而形象生动地讲明计算机网络的工作原理。下面就结合自己的理解和抄袭一些网络教程,谈谈自己对计算机网络的体会。

 

一、网络的产生

最早的计算机都是单机系统,也就是每一台计算机都是独立的,自己做自己的事。但是,单机的计算机系统对资源是一种巨大的浪费。比如说,有台计算机上存放着很多重要的资料,这些资料在别的部门和单位是很紧缺的。由于是单机系统,别人就用不了这些资料。另外,一个部门和单位的计算机,在计算任务完成后,就只有停下来,没活可干了。而其他的部门和单位,却苦等着自己单位的计算机添置计划批复或者本单位计算机处理任务的完成。随着计算机技术发展和信息处理量的爆炸性增长,出现了计算机网络。计算机网络出现后,计算机和硬件和软件资源就能互相共享(共享资料和共享计算任务),这样就大大提高了计算机的效率。这就好比我们人类社会的分工协作带来了生产力的巨大进步一样。

 

二、用一个小型公司的办公流程来比喻网络的工作原理

这里有一家小型的公司。最早公司只有一个员工,这个员工处理公司的所有事务。在这个阶段,不存在共享和分工协作的问题。就好比是最早的计算机单机系统。

随着公司业务的发展,这个公司员工增加到了三个人。为了让公司的事务处理更具效率,有必要让这三个人进行资源共享,分工协作。这样就产生了员工的网络系统。这个网络系统里有如下的问题要解决:

1、  员工的姓名和员工代号(计算机的网卡mac地址和IP地址)

这三个员工,他们都是有名字的(MAC地址)。他们的名字只遵循自己国家的命名习惯。一个中国人,用的是中文名字。一个是洋鬼子,是英文名字,还一个是小日本,是日文名字。为了让大家在工作和生活中更有效率,没必要让老板和每个员工都要懂中文,英文和日文。就是要学会叫懂这三个员工的名字也是很烦的。如果是家大的国际公司,那还不把老板烦死:老子好不容易请了些外国员工,还得跟他学鬼话,学懂他们每个人的名字?我神经有问题啊我?反正我是老板,我说了算,估计本公司将来也就最多请个几千员工了,我用阿拉伯数字按他们的办公室给他们编上号不就得了(IP)?喂喂,那个谁?对,就是黄皮肤黑头发的中国人,你给我到0001室,以后就你叫0001。另一个黄毛的家伙,你到0002办公室,以后就你0002,还有一个又矮又矬的小日本,你给我滚到0003,以后叫0003得了。从今天起,大家都用办公室代号来称呼和使唤他们。秘书,给我打张表出来,这个表上面就是这三个家伙的姓名和代号的对应关系,贴到我和每个员工的办公桌上去(ARP表)。

网卡的MAC地址又称为设备的物理地址或者硬件地址,是网卡的生产厂家在为其分配的一个独一无二的永久性物理地址。这个地址包括厂商代码(姓)和唯一流水码(名)。这两个部分共同构成了网卡的MAC地址。

MAC地址是Ethernet网卡上带的地址,长度为48位。每个Ethernet网卡生产厂家都会向IEEE组织申请一组MAC地址,在生产网卡时在网卡的串行EEPROM中写入一个唯一的MAC地址。任何两个Ethernet网卡的MAC地址,不管是哪一个厂家生产的都不相同。MAC地址存在于每一个Ethernet包中,是Ethernet包头的组成部分,Ethernet交换机根据Ethernet包头中的MAC源地址和MAC目的地址实现包的交换和传递。

当一个网络中使用了相同或者不同厂家网卡后,为了管理方便,把它们统一成网络内部的IP地址。Internet 上的每台主机(Host)都有一个唯一的IP地址。IP协议就是使用这个地址在主机之间传递信息,这是Internet 能够运行的基础。IP地址的长度为32位,分为4段,每段8位,用十进制数字表示,每段数字范围为0~255,段与段之间用句点隔开。例如159.226.1.1。IP地址有两部分组成,一部分为网络地址,另一部分为主机地址。

MAC地址和IP地址之间没有必然的联系。它们之间的对应关系经常会发生变化。这种对应关系就是ARP表。当一个员工被辞退或者更换了工作部门后,这个表就会被更新。

2、  员工姓名和代号之间的对应关系(ARP表,ARP广播和ARP欺骗)

当这家公司的员工姓名和代号被决定了后,就产生了一个姓名和员工代号的对应表。这个表被分发到每个员工的桌上。这个表是经常变动的。最开始时这张对应表是空的。当小日本要给洋鬼子发消息的时候,就吼一嗓子:洋鬼子,我在0003室,要给你发文件过去了。你在哪?这就是ARP广播。这声鬼叫大家都能听到。中国人一听,嗯,这不是叫我,我不用理他。小日本在0003,我把他记到我的姓名和代号对应表里去就行了。洋鬼子听到后,就有反应了:这是找我呢。嗯。他在0003,我先把他记到我的姓名和代号对应表里去,再给他回一声:小日本,别鬼叫了,我在0002,记着。这样,大家的ARP表上就都有了小日本和洋鬼子的姓名和代号对应关系了。当那个中国人也需要给别人发送文件的时候,也这样吼一嗓子,广播一下自己的代号就行了。当哪个员工更换了办公室后,别人给他发文件就都发不了。这个时候,这个员工就会在换到新办公室后马上会通知别人自己的代号发生了变化:我现在换到0004办公室了,你们再发东西就给我送到0004来,赶快把你们的ARP表更新一下。这就是ARP协议,ARP表,ARP表的动态更新。

假如那个小日本在0003室。有一天他突然想偷公司的机密了,想看看洋鬼子收到了哪些东西,就吼一声:大家听着,洋鬼子现在在0003室(其实是小日本在0003,而洋鬼子在0002),你们把ARP表给我换过来。如果这个时候洋鬼子刚好没注意到,那大家就把发给洋鬼子的东西都发到0003室小日本那里去了。小日本收到了复印一份,原件再偷偷转到洋鬼子那里。这就是ARP欺骗。这就是传奇木马的工作原理。对付这种ARP欺骗有几种办法:第一是大家每隔一断时间就广播一下自己的代号和姓名的对应关系,但这样会在大型网络里产生网络广播风暴,加重网络的负担。第二就是由老板出面叫秘书发一份打印好的有内容的姓名和代号对应表(静态ARP表),并告诫员工:这个表你们自己不要再变了。如果有变动,我再来一个个通知。这是解决ARP欺骗的最好办法。但代价就是,如果有一个员工更换了工作位置,而秘书陪老板旅游去了的话,大家就没办法联系上更换了位置的员工了。

现在大家都知道ARP病毒和传奇木马,QQ盗号木马的工作原理,也就知道怎么去偷别人的东西了?很简单的,你吼一嗓子:现在老板在0003室。你们都把资料送到0003室来(实际是小日本假冒的老板)。你收到所有员工的资料后,把它们复印一份。这样就偷到你要的东西了。如果聪明的话,你再把收到的所有资料再送到老板那里。这个时候网络由于增加了环节,会变慢。而如果良心不好,或者你太笨的话,收到的东西你不转发给本来要收到的人,这个时候,网络就到你这儿停下来了,整个网络除了你的,其他人的传输就无法完成。当你不再进行ARP欺骗的时候,网络才恢复正常。所以中了ARP病毒的典型特征是:A:网络无故变慢;B:网络时通(中病毒的主机关了机)时断(中病毒的主机没有启动企业路由服务,数据都传到它那儿就停下来了。它没有接着往下传);C:某台主机上网正常,其他主机上网变慢或者完全不能上网(这台就是中毒的主机)。

3、  秘书小姐加入办公(交换机的应用)

随着公司业务量的增加,以前员工之间传送资料,都是吼一嗓子后,找到目标位置,再自己送过去。当这个员工的网络稍大一些后,每个员工都要在完成自己的资料后,还要担负把资料送到目的地的任务。这样办公的效率比较低。老板一看不行,这样大家每天都忙不过来。他叫来秘书:嗯,现在大家每天都太忙了,每个员工除了整理资料,还要负责送到相应的其他人手上。从现在开始,你不能每天只陪我玩,只做些表面工作了,你要接手资料的传送任务。这样,你坐到这三个办公室的门口,桌子上贴一张ARP表,哪个员工要送资料,只需要在资料袋上写上自己是哪个办公室(源IP地址),送到哪个办公室(目标IP地址),然后从座位上丢给你,你收到资料后,查出发资料的人真实姓名(源MAC地址),要收到人的资料的真实姓名(目标MAC),然后丢给收件人就行了。收件人回复的时候你也这样处理。这样,由于秘书小姐加入了公司网络之中专门负责传送资料的任务,其他普通员工就不需要再吼一嗓子,然后站起来,把资料送到目的地,再坐回来了。他只要在资料袋上写上自己的号码和目的地号码,丢出去,秘书小姐会自动送达。这样整个公司的效率会提高很多。这就是交换机的作用。在这个环节中,秘书小姐的桌上也有一张ARP表,它是整个网络传输效率的关键。秘书小姐的工作,包括维护这张中心ARP表(过一段时间查一下,看是不是有员工换了办公室,原来的对应关系出错),记住每个员工和代号之间的对应关系,然后把资料按这张表送到。这里需要注意的是,秘书小姐维护这张ARP表也是她的本职工作之一。这张表是定时维护的(老化),到时间后就会失效,然后重新对应。当一个员工换了办公室后,如果他万一忘了告诉别人自己的位置,或者中了ARP病毒,大家一开始会找不到他,但过一会后(老化时间),秘书小姐会主动维护这张表,这样,大家就又能联系上他了。所以当网络内部中了ARP病毒,往往不是关了中毒主机就立即恢复正常,而是要等到交换机中的arp表到了老化时间,重新更新后(往往几分钟到十几分钟)才会恢复正常。这种情况下,最好是关了中毒主机后就重启下交换机,交换机在重启后会重新维护ARP表,才能马上恢复网络正常。

4、  公司建起传达室(路由器)

公司的业务规模扩大后,有些资料不再限于公司内部传输,需要在全国各地收集和传输资料了。这个时候,就需要建立起一个传达室或者叫资料收发室(路由器),专门负责对外的资料收发。这个传达室的作用就是:员工在资料袋上写上自己的号码和目的地,然后把资料发到秘书小姐那里。秘书小姐一看地址,是公司内部的,就直接发到内部员工手上了。不是公司内部的,就转到了收发室。收发室一看,是外部地址,就扔到邮局(上一级路由器)的邮筒里了。收发室的另外一个任务就是,把邮局发过来的资料收到手上,然后再通过秘书小姐发到各人手上。

怎么收发室的任务这简单?不是说路由器是很复杂的设备的呢?我晕。那是指企业级的路由器啦。作为家庭用路由器,它就只起到这个作用,把内部员工要发到外面的资料丢到邮局(上一级路由器),再把邮局发来的资料通过秘书小姐发到各个员工手上。在我的家用路由器里,拨号成功后会自动建立这样一条静态路由:

IP地址:0.0.0.0 子网掩码:0.0.0.0 网络接口2 网关:59.174.89.132 这条静态路由表的含义是:内网所有IP,所有掩码(就是所有内网主机啦)凡是不是本网的数据包(IP包头里地址不是内网IP192.168.X.X的),都通过网络接口2(我的内网所有机器通过过交换机接在了路由器的第二个网络接口上,一般路由器都是外网一个WAN接口,内网四个LAN接口)转发到网关(电信PPPOE服务器临时在我拨号成功后分配的一个公网IP)59.174.89.132,通过网关59.174.89.132到达电信路由器。后面的事就由电信的路由器来处理了。怎么样?很简单吧?就是网吧里用的所谓高档网吧级路由器(千元到几千元级),其实静态路由表里也就这一条路由指令,也就是只处理这一条路由。怎么,受骗了?几千元就买这一弱智的路由器啊?哪个要你有钱的呢?其实网吧的路由器,硬件跟我们家用的差不多(基本一样),只是路由器软件里多了些管理功能。

对于企业级路由器来说,它还有一个任务,就是路径选择。比如,本地邮局收到公司的资料后,要传到目的地,它可能会把你的资料从本地邮局(区级)转到上一级邮局(市级)(下一跳),再通过上一级邮局转到目标地址本地邮局(区级),然后通过目标地区邮局转到目标地址手上。当大雪封路的时候,没办法从上一级邮局通过公路运输到目标邮局,它可能就跳过上一级邮局直接空运到目标地址邮局,然后发到目标地址手上。这就是路由器的路径选择。

5、  家用路由器的主要功能

相对于企业级和电信级路由器来说,家用路由器的功能和作用要简单得多。它不需要考虑复杂的网络环境,不需要科学的路径算法。而且,由于是家用,一般内网机器台数不会超过50台,网络数据传输压力也不会很大,所以,它的功能也就比较简单了。一般有下面这几个作用:

A.  内外网数据包转发。家用路由器的一个作用就是把内外网数据区分开内,内网数据通过交换机直接发给目标主机,外网数据则发给ISP(网络服务商)的路由器。这个作用在所有路由器中都是一样的。

B.  网络地址转换。这是家用路由器的一个非常重要的功能。在国内,由于互联网发展速度远远落后于国外,国内的公网合法IP资源也非常少,因此,一个内网往往只有一个合法的公网IP。另外,几家或者一家的几台电脑合用一根宽带线路上网的时候,ISP也只分配给这条线路一个合法IP。而内网的每台主机上使用的保留IP地址(私有地址)是不能正常在互联网上通讯的。这种情况下,家用路由器担任了一个非常重要的角色:网络地址转换(NAT)。它的原理是把内网的每台主机的通讯映射为这条线路上的公网IP地址的一个端口。这样内网的数据经过路由器出去到互联网上去后,就成了一个公网IP地址的一个访问端口。用这种方法来同互联网正常通讯。


这是我两年前针对ARP病毒写的一篇普及性文章。里面涉及到家用的交换机和路由器的工作原理。贴在这里给家里经常出现网络故障的朋友看看吧。如果你家里是用的路由器上网,又经常无故掉网,网速变得非常慢,排除了线路原因,应该就是有机器中了arp病毒了


打赏