如何编译zebra?如何安装?如何配置运行?
路由软件是很强大的,目前项目中不要求路由功能,但是我为了在项目中引用这个漂亮而强大的CLI,所以初次尝试编译和安装Zebra,打算后期将其移植到ARM上。
一、在确保ubuntu已经安装编译工具的前提下,我们来初步尝试编译安装Zebra路由软件:
1、下载zebra源码
2、解压
3、进入解压目录
4、修改zebra头文件
增加:
#ifdef GNU_LINUX
#define __USE_GNU
#endif
5、配置
6、编译
7、安装
[*] 注:如果编译过程中,出现个别库文件没有安装,请先安装依赖库文件,在后面配置vtysh的时候,可能会要求安装quagga支持;
服务程序将被默认安装在/usr/local/sbin下,有:bgpd ospf6d ospfd ripd ripngd zebra六个服务程序。
二、配置zebra运行环境
1、配置zebra
1.1、生成zebra配置文件。因为系统中有简单的例子,就是用现有的配置文件
1.2、配置zebra主机名以及登录和访问密码
hostname -- (需要使用的主机名)
password -- (Telnet访问时使用的密码)
enable password -- (进入全局配置模式时使用的密码)
2、配置vtysh
2.1、生成vtysh配置文件
3、启动zebra demo程序
4、远程登录zebra
在新打开的shell中运行:
就可以进入该路由软件漂亮的运行环境了。
如果需要启动Zebra提供的其他服务,在/usr/local/etc/下生成特定服务的配置文件,然后执行:
2601是zebra服务例程监听的端口号,具体启用端口可查看:
当启动相应的例程,登录的时候,可以选择通过这些端口登录。
最后,你可以大肆修改这个工程,增加自己的实现,这工程里面也有好多漂亮的代码,如日志管理,内存管理等,是一款不可多得的学习代码。
路由软件是很强大的,目前项目中不要求路由功能,但是我为了在项目中引用这个漂亮而强大的CLI,所以初次尝试编译和安装Zebra,打算后期将其移植到ARM上。
一、在确保ubuntu已经安装编译工具的前提下,我们来初步尝试编译安装Zebra路由软件:
1、下载zebra源码
代码:
zebra-0.95a.tar.gz,该版本是目前使用最广泛的,相关资料也很多。
2、解压
代码:
tar -xvf zebra-0.95a.tar.gz
3、进入解压目录
代码:
cd zebra-0.95a.tar.gz/
4、修改zebra头文件
代码:
vi ./lib/zebra.h +103
增加:
代码:
#ifdef GNU_LINUX
#define __USE_GNU
#endif
5、配置
代码:
./configure
6、编译
代码:
make
7、安装
代码:
make install(如果需要权限,请sudo)
[*] 注:如果编译过程中,出现个别库文件没有安装,请先安装依赖库文件,在后面配置vtysh的时候,可能会要求安装quagga支持;
服务程序将被默认安装在/usr/local/sbin下,有:bgpd ospf6d ospfd ripd ripngd zebra六个服务程序。
二、配置zebra运行环境
1、配置zebra
代码:
cd /usr/local/etc/
1.1、生成zebra配置文件。因为系统中有简单的例子,就是用现有的配置文件
代码:
sudo cp zebra.conf.sample zebra.conf
1.2、配置zebra主机名以及登录和访问密码
代码:
hostname -- (需要使用的主机名)
password -- (Telnet访问时使用的密码)
enable password -- (进入全局配置模式时使用的密码)
2、配置vtysh
2.1、生成vtysh配置文件
代码:
sudo cp vtysh.conf.sample vtysh.conf
3、启动zebra demo程序
代码:
zebra -d
4、远程登录zebra
在新打开的shell中运行:
代码:
telnet 127.0.0.1 2601
就可以进入该路由软件漂亮的运行环境了。
如果需要启动Zebra提供的其他服务,在/usr/local/etc/下生成特定服务的配置文件,然后执行:
代码:
例如:ripd -d等
2601是zebra服务例程监听的端口号,具体启用端口可查看:
代码:
vi /etc/services +510
当启动相应的例程,登录的时候,可以选择通过这些端口登录。
最后,你可以大肆修改这个工程,增加自己的实现,这工程里面也有好多漂亮的代码,如日志管理,内存管理等,是一款不可多得的学习代码。