网关/路由器

来源:互联网 发布:lv老花是pvc 知乎 编辑:程序博客网 时间:2024/05/16 19:06

    顾名思义,网关(Gateway)就是一个网络连接到另一个网络“关口”。

    在OSI中,网关有两种:一种是面向连接的网关,一种是无连接的网关。当两个子网之间有一定距离时,往往将一个网关分成两半,中间用一条链路连接起来,称之为半网关

    按照不同的分类标准,网关也有很多种。TCP/IP协议里的网关是最常用的,在这里我们所讲的“网关”均是指TCP/IP协议下的网关。

    那么网关到底是什么呢?网关实际上是一个网络通向其他网络的IP地址。比如有网络A和网络B,网络A 的IP地址范围为"192.168.1.1 ~ 192.168.1.254",子网掩码为255.255.255.0;网络B的IP地址范围为"192.168.2.1 ~ 192.168.2.254",子网掩码为255.255.25.0。在没有路由器的情况下,两个网络之间是不能进行TCP/IP通信的,即使两个网络连接在同一台交换机(或集线器)上,TCP/IP协议也会根据子网掩码(255.255.255.0)判定两个网络中的主机处在不同的网络里。而要实现这两个网络之间的通信,则必须通过网关如果网络A中的主机发现数据包的目的主机不在本网络中,就把数据包转发给它自己的网关,再由网关转发给网络B的网关,网络B的网关再转发给网络B的某个主机

 

 

    所以说,只有设置好网关的IP地址,TCP/IP协议才能实现不同网络之间的相互通信。那么这个IP地址是哪台机器的IP地址呢?网关的IP地址是具有路由功能的设备的IP地址,具有路由功能的设备有路由器、启用了路由协议的服务器(实质上相当于一台路由器)、代理服务器(也相当于一台路由器)。

 

默认网关

    如果搞清了什么是网关,默认网关也就好理解了。就好像一个房间可以有多扇门一样,一台主机可以有多个网关。默认网关的意思是,一台主机如果找不到可用的网关,就把数据包发给默认指定的网关,由这个网关来处理数据包。现在主机使用的网关,一般是指默认网关。

 

网关的作用及工作流程的通俗解释

    假设你的名字叫小不点,你住在一个大院子里,你的邻居有很多小伙伴,在门口传达室还有个看大门的李大爷,李大爷就是你的网关。当你想跟院子里某个小伙伴玩,只要你在院子里大喊一声他的名字,他听到了就会回应你,并且跑出来跟你玩。

    但是你不被允许走出大门,你想与外界发生的一切联系,都必须由门口李大爷(网关)用电话帮助你联系。假如你想找你的同学小明聊天,小明家住在很远的另外一个院子里,他家的院子里有一个看门的王大爷(小明的网关)。但是你不知道小明家的电话号码,不过你的班主任老师有一份你们班全体同学的名单和电话号码对照表,你的老师就是你的DNS服务器。于是你在家里拨通了门口李大爷的电话,有了下面的对话:

小不点:李大爷,我想找班主任查一下小明的电话号码行吗?

李大爷:好,你等着。(接着李大爷给你的班主任挂了一个电话,问清楚了小明的电话)问到了,他家的号码是211.99.99.99

小不点:太好了!李大爷,我想找小明,你再帮我联系一下小明吧。

李大爷:没问题。(接着李大爷向电话局发出了请求接通小明家电话的请求,最后一关当然是被转接到小明家那个院子的王大爷那里,然后王大爷把电话转到小明家)

这样你就和小明取得了联系。

 

    简单的说:网关只是一个逻辑概念,路由器是一个看得见摸得着的物理设备,但是路由器可以作为网关来使用。

    路由器是一个设备,可以做网关使用。它是一种连接多个网络或网段的网络设备,它能将不同网络或网段之间的数据信息进行“翻译”,以使它们能够相互“读”懂对方的数据,从而构成一个更大的网络。

 

    所谓“路由”,是指把数据从一个地方传送到另一个地方的行为和动作,而路由器,正式执行这种动作的机器,它的英文名称为Router,是一种连接多个网络或网段的网络设备,它能将不同网络或网段之间的数据信息进行“翻译”,以使它们能够相互“读懂”对方的数据,从而构成一个更大的网络。

    简单的讲,路由器主要有以下几种功能:

    第一,网络互连,路由器支持各种局域网和广域网接口,主要用于互联局域网和广域网,实现不同网络互相通信

    第二,数据处理,提供包括分组过滤、分组转发、优先级、复用、加密、压缩和防火墙等功能;

    第三,网络管理,路由器提供包括配置管理、性能管理、容错管理和流量控制等功能。

    为了完成“路由”的工作,在路由器中保存着各种传输路径相关数据——路由表(Router Table),供路由选择时使用路由表中保存着子网的标识信息、网络上路由器的个数和下一个路由器的名字等内容。路由表可以是由系统管理员固定设置好的,也可以由系统动态修改,可以由路由器自动调整,也可以由主机控制。在路由器中涉及到两个有关地址的名字概念,那就是:静态路由表和动态路由表。由系统管理员事先设置好固定的路由表称之为静态(Static)路由表,一般是在系统安装时就根据网络的配置情况预先设定的,它不会随未来网络结构的改变而改变。动态(Dynamic)路由表是路由器根据网络系统的运行情况而自动调整的路由表。路由器根据路由选择协议(Routing Protocol)提供的功能,自动学习和记忆网络运行情况,在需要时自动计算数据传输的最佳路径

    为了简单地说明路由器的工作原理,现在我们假设有这样一个简单的网络。如图所示,A、B、C、D四个网络通过路由器连接在一起。现在假设网络A中一个用户A1要想网络C中的C3用户发送一个请求信号时,信号的传递步骤如下:

    第一步:用户A1将目的用户C3的地址C3,连同数据信息以数据帧的形式通过集线器或交换机以广播的形式发送给同一网络中的所有节点当路由器A5端口侦听到这个地址后,分析得知所发目的节点不是本网段的,需要路由转发,所以就把数据帧接收下来

    第二步:路由器A5端口接收到用户A1的数据帧后,先从报头中取出目的用户C3的IP地址,并根据路由表计算出发往用户C3的最佳路径。因为从分析得知到C3的网络ID号与路由器的C5网络ID号相同,所以由路由器的A5端口直接发向路由器的C5端口应该是信号传递的最佳途径。

    第三步:路由器的C5端口再次取出目的用户C3的IP地址,找出C3的IP地址中的主机ID号,如果在网络中有交换机则可先发给交换机,由交换机根据MAC地址表找出具体的网络节点位置,如果没有交换机设备则根据其IP地址中的主机ID直接把数据帧发送给用户C3,这样一个完整的数据通信转发过程也完成了。

    从上面可以看出,不管网络有多么复杂,路由器其实所作的工作就是这么几步,所以整个路由器的工作原理基本都差不多。当然在实际的网络中还远比上图所示的要复杂许多,实际的步骤也不会像上述那么简单,但总的过程是这样的。

原创粉丝点击