用 Linux 打造路由器

2016-01-29 19:45 7 1 收藏

用 Linux 打造路由器,用 Linux 打造路由器

【 tulaoshi.com - Linux 】

  Linux 作为一种新近崛起的操作系统,由于其性能稳定,源码开放及价格方面的优势而逐渐被广大用户所接受。现在Linux的主要用武之地在于服务器领域,但是,经过适当的配置之后,它还可以担当互联网的物理基石--路由器这一重要角色。

路由器是通信子网中的通信节点,每个路由器都计算并维护一张路由表,并据此指导数据报前往最佳路径中的下一站,这便是所谓的路由。这样,经过互联网上所有路由器的通力合作,数据报就能够沿着一条"最佳"路径到达目的地。在 GNU 软件 Zebra 的协助下,我们可以将 Linux 机器打造成一台功能完备的路由器,它能够同时支持 RIPv1、 RIPv2、RIPng、OSPFv2、OSPFv3、BGP - 4 和 BGP - 4+ 等诸多 TCP/IP 协议。现在我们首先了解一下 OSPF 和 BGP 协议的运行模式和基本原理,然后介绍 Zebra 的安装配置方法,让你的 Linux 机器变成支持 OSPF 与 BGP 的路由器。

BGP/OSPF 概述

如今,许多公司都建有多个网络,如果这些网络的类型不尽相同,则需要用路由器进行互联。路由器是与两个或两个以上的网络连接的计算机,它根据路由协议生成并维护一个路由表,并按照该路由表中的信息转发包。这些路由器对公司内部的网络结构了如指掌,知道将分组送到目的地的全部细节,但对于其他公司的网络结构并不了解。像这样"在同一机构下管理的一系列路由器和网络"被称为自治系统(AS)。由不同机构掌管的自治系统,可以采用不同的路由选择算法;但同一自治系统内的所有路由器都使用同一路由协议,以便于自治系统内部各个路由器互换路由信息来维持相互的连通性。每一个自治系统都有一个16位的"自治系统(AS)编号"作为标志,就像 IP 地址一样,它是由专门机构来分配的。

自治系统内的路由器称为"内部网关",所用的协议称为"内部网关协议"。内部网关协议大体上分为两类,一类是距离向量协议,如 RIP,EIGRP 协议;另一类是链路状态协议如 OSPF 协议。链路状态路由协议与距离向量协议的不同之处在于,采用链路状态路由协议的路由器不是交换到达目的地的距离,而是维护一张网络拓扑结构图。然后用数据库表示该图,其中的表项对应网络的一条链路。路由器根据数据库的信息计算出"最佳路由",由此指导包的转发。当网络拓扑结构发生变化时,只需将相应纪录而非整个数据库通知其他节点。各路由器做出相应修改并重新计算路由后,就可以继续正常工作。

因为"开放式最短路径优先协议"的文档必须公开发表,所以它是"开放式的"(Open);又因为它采用"最短路径优先"(SPF)算法来计算一个节点到所有其它节点间的最短路径,故名为 OSPF。OSPF 具有支持多重度量制式和多重路径等诸多优点,因此成为因特网上推荐使用的内部网关协议,RIP 却由于自身的局限性而被打入冷宫。现在,在性能上唯一能够与 OSPF 相匹敌的内部网关协议便是 EIGRP--Cisco 的一个专有协议,但 OSPF 的"开放"本身就是一个响亮的招牌,因为谁也不想受制于某家供应商。

前面提到,自治系统内的路由器不必知道其他自治系统的内部结构细节,从而有效地节约了路由器的内存和 CPU 时间,并提高了网络带宽的利用率。但是,如果想与其他公司(自治系统)通信时该怎么办呢?很简单,我们可以在自治系统内指定一个与其他自治系统相连的路由器为"外部网关",通过它进入其他自治系统。该路由器使用的协议叫做"外部网关协议",如边界网关协议(BGP)。相邻的两个网关必须首先互换"邻机探测"报文,协商是否愿意成为"邻机"。成为邻机则意味着两个自治系统同意中转双方的通信流。同意后,两个邻机互换"邻机可达性报文",来监督他们之间的链路的工作情况。接下来便是最重要的工作,用"网络可达性报文"来交换通过各邻机所能到达的网络的信息,从而实现自治系统之间的连通性。在外部网关的眼里只由外部网关和连接他们的链路,如此以来,自治系统内的通信由内部网关处理,自治系统之间的通信交由外部网关处理--一个分级路由的景象已经展现在我们面前,实际上,因特网正是由大量自治系统组成的。

建立一个高级路由器

许多人对路由器感到比较陌生,事实上作为一个防火墙使用的 Linux 系统已经是一个路由器了,只不过还有点"简陋"而已。然而,我们的目标是用 Linux 打造一个"高级"路由器,它必须能够利用动态路由协议(上文提到的协议皆为动态路由协议)工作。这些协议能够使路由器互换相关信息,从而共享穿越网络时所用的那些路径--路由。这一点对于大型网络(比如 Internet)而言是"异常"重要的,因为此时再用静态路由(也就是人工计算设置路由)是根本不现实的。

举例来说,即使在比较理想--即不考虑路由的变化的情况下

来源:http://www.tulaoshi.com/n/20160129/1510036.html

延伸阅读
路由器怎么重启   方法一:按路由器上的复位键重启 一般路由器接口附近都有一个Rest复位重启键,如果需要重启路由器,可以按一下这个按键。 需要注意的是,路由器复位键不要长按住,长按复位键会导致路由器恢复出厂设置 方法二:在路由器设置中重启路由 方法一尽管也可以重启路由器,但操作并不方便,因为...
打开控制面板 打开开始菜单,找到控制面板,点击进去。 找到本地连接 然后点击打开网络和共享中心,并在更改适配器设置中找到本地连接,点击右键打开属性窗口。 选择Internet协议版本4TCP/IPv4 在此链接使用下列项目的选项中找到"Internet协议版本4TCP/IPv4"并双击进入。 获取地址 在常规选...
连接电源接口 首先要给路由器连接电源就是上面的图片中标注的那个电源接口,把电源适配器插到家用电插口给路由器通电,通电后路由器通常就会启动然后路由器的前端指示灯就会亮起来。 对应接口 首先不要急着插上外部网络,路由器要对系统进行相应的设置才可以使用的。 下面县介绍一下如何用网线进行设置,找一根两边都有水晶插头的网...
路由器简介   路由器有简单的局域网路由器和无线路由器两个比较重要的大类。无线路由器一般都会带有一个天线,比较容易区别,不过价格基本相同所以一般家用都会选择无线路由器。   路由器是把一根网线分给多个设备共用的网络设备,外来的网线要插到路由器的WAN口 就是路由器后面的几个网线插口的其中一个 标注着WAN其余的都是标...
1.打开浏览器,在电脑上方地址栏输入192.168.1.1回车。在登入框里填入admin密码也是这个。   2.出现一个设置路由器的页面,在左边找到网络参数,再找到WAN口设置。在WAN口连接类型选择PPPOE,然后输入帐号和密码。保存。   3.然后在左边找到DHCP服务器,选择DHCP服务。选择启用。...