扣丁学堂Linux培训之使用Quagga实现Linux动态路由

2018-06-11 10:50:46 730浏览

今天扣丁学堂Linux视频教程老师使用Quagga如何去管理动态路由?首先这是一个安装完后就不用理它的的软件。Quagga是一个支持OSPFv2、OSPFv3、RIPv1和v2、RIPng、以及BGP-4的路由协议套件,并全部由zebra守护程序管理。

OSPF的意思是最短路径优先OpenShortestPathFirst。OSPF是一个内部网关协议(IGP);它可以用在局域网和跨因特网的局域网互联中。在你的网络中的每个OSPF路由器都包含整个网络的拓扑,并计算通过网络的最短路径。OSPF会通过多播的方式自动对外传播它检测到的网络变化。你可以将你的网络分割为区域,以保持路由表的可管理性;每个区域的路由器只需要知道离开它的区域的下一跳接口地址,而不用记录你的网络的整个路由表。



RIP,即路由信息协议,是一个很老的协议,RIP路由器向网络中周期性多播它的整个路由表,而不是像OSPF那样只多播网络的变化。RIP通过跳数来测量路由,任何超过15跳的路由它均视为不可到达。RIP设置很简单,但是OSPF在速度、效率以及弹性方面更佳。

BGP-4是边界网关协议版本4。这是用于因特网流量路由的外部网关协议(EGP)。你不会用到BGP协议的,除非你是因特网服务提供商。

准备使用OSPF

在我们的小型KVM测试实验室中,用两台虚拟机表示两个不同的网络,然后将另一台虚拟机配置为路由器。创建两个网络:net1是192.168.110.0/24,而net2是192.168.120.0/24。启用DHCP是明智的,否则你要分别进入这三个虚拟机,去为它们设置静态地址。Host1在net1中,Host2在net2中,而路由器同时与这两个网络连接。设置Host1的网关地址为192.168.110.126,Host2的网关地址为192.168.120.136。

Host1:192.168.110.125

Host2:192.168.120.135

Router:192.168.110.126和192.168.120.136

在路由器上安装Quagga。在大多数Linux中它是quagga软件包。在Debian上还有一个单独的文档包quagga-doc。取消/etc/sysctl.conf配置文件中如下这一行的注释去启用包转发功能:

net.ipv4.ip_forward=1

然后,运行sysctl-p命令让变化生效。

配置Quagga

查看你的Quagga包中的示例配置文件,比如,/usr/share/doc/quagga/examples/ospfd.conf.sample。除非你的Linux版本按你的喜好做了创新,否则,一般情况下配置文件应该在/etc/quagga目录中。大多数Linux版本在这个目录下有两个文件,vtysh.conf和zebra.conf。它们提供了守护程序运行所需要的最小配置。除非你的发行版做了一些特殊的配置,否则,zebra总是首先运行,当你启动ospfd的时候,它将自动启动。Debian/Ubuntu是一个特例,稍后我们将会说到它。

每个路由器守护程序将读取它自己的配置文件,因此,我们必须创建/etc/quagga/ospfd.conf,并输入如下内容:

!/etc/quagga/ospfd.conf

hostnamerouter1

logfile/var/log/quagga/ospfd.log

routerospf

ospfrouter-id192.168.110.15

network192.168.110.0/0area0.0.0.0

network192.168.120.0/0area0.0.0.0

access-listlocalhostpermit127.0.0.1/32

access-listlocalhostdenyany

linevty

access-classlocalhost

你可以使用感叹号(!)或者井号(#)去注释掉这些行。我们来快速浏览一下这些选项。

hostname可以是你希望的任何内容。这里不是一般意义上的Linux主机名,但是,当你使用vtysh或者telnet登入时,你将看到它们。

logfile是你希望用于保存日志的任意文件。

router指定路由协议。

ospfrouter-id是任意的32位数字。使用路由器的一个IP地址就是很好的选择。

network定义你的路由器要通告的网络。

access-list限制vtysh登入,它是Quagga命令行shell,它允许本地机器登入,并拒绝任何远程管理。

Debian/Ubuntu

在你启动守护程序之前,Debian/Ubuntu相对其它的Debian衍生版可能多需要一步到多步。编辑/etc/quagga/daemons,除了zebra=yes和ospfd=yes外,使其它所有的行的值为no。

然后,在Debian上运行ospfd去启动Quagga:

#systemctlstartquagga

在大多数的其它Linux上,包括Fedora和openSUSE,用如下命令启动ospfd:

#systemctlstartospfd

现在,Host1和Host2将可以互相ping通对方和路由器。

这里用了许多篇幅去描述非常简单的设置。在现实中,路由器将连接两个交换机,然后为连接到这个交换机上的所有电脑提供一个网关。你也可以在你的路由器上添加更多的网络接口,这样你的路由器就可以为更多的网络提供路由服务,或者也可以直接连接到其它路由器上,或者连接到连接其它路由器的骨干网络上。

你或许不愿意如此麻烦地手工配置网络接口。最简单的方法是使用你的DHCP服务器去宣告你的路由器。如果你使用了Dnsmasq,那么你就有了一个DHCP和DNS的一体化解决方案。

以上就是关于扣丁学堂Linux培训之使用Quagga实现Linux动态路的详细介绍,最后想要了解更多关于Linux就业班或行业前景,请关注扣丁学堂官网、微信等平台,扣丁学堂IT职业在线学习教育平台为您提供权威的Linux视频教程系统,通过千锋扣丁学堂金牌讲师在线录制的Linux视频教程课程,让你快速掌握Linux从入门到精通开发实战技能。扣丁学堂Linux技术交流群:422345477


扣丁学堂微信公众号



关注微信公众号获取更多的学习资料



查看更多关于“Linux培训资讯的相关文章>>

标签: Linux命令 Linux视频教程 Linux培训 Linux在线学习 Linux在线视频

热门专区

暂无热门资讯

课程推荐

微信
微博
15311698296

全国免费咨询热线

邮箱:codingke@1000phone.com

官方群:148715490

北京千锋互联科技有限公司版权所有   北京市海淀区宝盛北里西区28号中关村智诚科创大厦4层
京ICP备12003911号-6   Copyright © 2013 - 2019

京公网安备 11010802030908号