Centos 7安装Quagga

安装依赖软件包
yum install readline-devel   (--enable-vtysh需要) 
解压tar包
tar -zxf quagga-0.99.22.4.tar.gz
cd quagga-0.99.22.4
配置,生成Makefile文件
./configure --enable-vtysh --enable-user=root --enable-group=root --localstatedir=/var/run/quagga --sysconfdir=/etc/quagga

--enable-vtysh 生成vtysh,vtysh是一个可以直接配置其他Quagga进程的shell。不使用vtysh的话,需要telnet到每个进程中去配置,比较麻烦。
--enable-user=root --enable-group=root 默认运行用户为quagga,这里修改为root,可以不用改变文件夹的属性,也不用单独增加用户。
--localstatedir=/var/run/quagga 运行时的PID文件位置
--sysconfdir=/etc/quagga 运行时的配置文件目录,默认位置在/usr/local/etc中
执行./configure后会显示所有的配置清单,可以核对一下。

Quagga configuration
--------------------
quagga version          : 0.99.22.4
host operating system   : linux-gnu
source code location    : .
compiler                : gcc
compiler flags          : -Os -fno-omit-frame-pointer -g -std=gnu99 -Wall -Wsign-compare -Wpointer-arith -Wbad-function-cast -Wwrite-strings -Wmissing-prototypes -Wmissing-declarations -Wchar-subscripts -Wcast-qual
make                    : make
includes                : 
linker flags            :  -lcrypt   -lrt   -lm
state file directory    : /var/run/quagga
config file directory   : /etc/quagga
example directory       : /etc/quagga
user to run as          : root
group to run as         : root
group for vty sockets   : 
config file mask        : 0600
log file mask           : 0600

默认的优化选项为-Os,如果需要使用gdb调试的,可以使用参数--with-cflags设置编译优化选项为-O0。

./configure --enable-vtysh --enable-user=root --enable-group=root --localstatedir=/var/run/quagga --sysconfdir=/etc/quagga --with-cflags="-O0 -fno-omit-frame-pointer -g -std=gnu99 -Wall -Wsign-compare -Wpointer-arith -Wbad-function-cast -Wwrite-strings -Wmissing-prototypes -Wmissing-declarations -Wchar-subscripts -Wcast-qual"
编译、安装
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

vim /etc/quagga/zebra.conf 进行修改
(添加红框中的部分)
这里写图片描述
至此,Quagga安装成功。下面仍然以zebra为例简单介绍Quagga单个模块的运行。

运行zebra
/usr/local/sbin/zebra -h        // 查看命令行选项
/usr/local/sbin/zebra -d        // 启动zebra后台程序
登录zebra的TTY
telnet 127.1 2601        // 默认密码:zebra

登录zebra后就可以使用zebra的命令进行操作。
也可以直接执行 vtysh 进行配置。

问题解决
  • 如果不能使用telnet,则安装
    yum install telnet
  • selinux会影响zebra运行,关闭掉
    /etc/selinux/config文件中,设置为:disabled
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
#SELINUX=enforcing
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted
  • 如果路由不能转发
    修改/etc/sysctl.conf文件, 启用IPv4转发功能。
    net.ipv4.ip_forward = 1
  • 如果发生了源路由验证的路由问题
    修改/etc/sysctl.conf文件, 禁用源路由验证功能。
    net.ipv4.conf.default.rp_filter = 1
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值