Owenliu
作者Owenliu·2021-06-24 16:25
售前工程师·浪潮商用机器有限公司

基于powerlinux的Quagga编译和安装

字数 2159阅读 2656评论 0赞 1

基于powerlinux的Quagga编译和安装

Quagga 软件原名是 Zebra 是由一个日本开发团队编写的一个以 GNU 版权方式发布的软件。可以使用 Quagga 将 Powerlinux 机器打造成一台功能完备的路由器。

Quagga 的运行机制

由于 Quagga 采用模块化的设计,因此 Quagga 运行时要运行多个守护进程,包括 ripd ripngd ospfd ospf6d bgpd 和 Zebra 。

其中, Zebra 守护进程用来更新内核的路由表,而其他的守护进程负责进行相应路由选择协议的路由更新 .

就是 ripd , bgpd,ospfd 三个路由协议守护进程,把通过动态路由协议学习到路由信息都要交给 zebra 守护进程,然后 zebra 进程与 kernel routed 交互,把路由信息给 kernel 内核根据路由协议守护进程学习到路由内容更新自己路由表。

每个守护程序都有自己的路由表。 zebra 守护程序维护内核路由表,并且还负责在各种路由协议守护程序之间重新分配信息。

关系如图:

编译安装 quagga-1.2.4

[root@lw04 home]# cat /etc/yum.repos.d/os.repo

[AppStream]

name=AppStream

baseurl=file:///mnt/AppStream

enable=1

gpgcheck=0

[BaseOS]

name=BaseOS

baseurl=file:///mnt/BaseOS

enable=1

gpgcheck=0

[PowerTools]

name=PowerTools

baseurl=http://mirror.centos.org/centos/8/PowerTools/ppc64le/os/

enable=1

gpgcheck=0

[EPEL8]

name=EPEL8

baseurl=http://rpmfind.net/linux/epel/8/Everything/ppc64le/

enable=1

gpgcheck=0

yum groupinstall "Development Tools" yum install texinfo readline-devel autoconf automake

编译 quagga需要 先编译 cares 编译 cares wget -c https://github.com/c-ares/c-ares/archive/refs/tags/cares-1_17_1.tar.gz tar -zxvf cares-1_17_1.tar.gz cd c-ares-cares-1_17_1 autoreconf -fi ./configure make & make install

wget -c https://github.com/Quagga/quagga/archive/refs/tags/quagga-1.2.4.tar.gz

tar -zxvf quagga-1.2.4.tar.gz

cd quagga-quagga-1.2.4

autoconf --install

./configure --enable-vtysh --enable-user=root --enable-group=root --localstatedir=/var/run/quagga --sysconfdir=/etc/quagga

vi ~/.bashrc

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH

source ~/.bashrc

make & make install

安装好后,可执行文件在目录 /usr/local/sbin/ ,配置文件在 /etc/quagga/ 。

创建 Quagga 相关目录

运行时的 PID 文件位置

mkdir /var/run/quagga

chmod 777 /var/run/quagga

注意: Centos 7 的 /var/run/ 目录存放在 tmpfs 中,也就是内存里,重启后 run 目录会清空。所以每次启动后需要重新创建 quagga 目录。

配置文件目录

mkdir /etc/quagga

chmod 777 /etc/quagga

log 目录

mkdir /var/log/quagga/

chmod 777 /var/log/quagga/

编辑配置文件

以 zebra 为例

cp /etc/quagga/zebra.conf.sample /etc/quagga/zebra.conf

如果要运行 ripd\bgpd \ospfd 的守护进程(启动 rip bgp ospf 协议)也要配置编辑配置文件

cp /etc/quagga/.conf.sample /etc/quagga/.conf

vim /etc/quagga/zebra.conf 进行修改

(添加红框中的部分)

这个操作就是把 zebra 守护进程运行内容写到 zerbra.log 中。

ripd\bgpd \ospfd 守护进程也要添加,意思一样。

至此, Quagga 安装成功。

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

1

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

相关文章

相关问题

相关资料

X社区推广