quagga安装和使用

部署运行你感兴趣的模型镜像
分类:  命令行编程


quagga安装和使用
测试环境-Fedora7.0
1.       下载源码
quagga-0.99.10.tar.gz
2.       解压缩
tar xzvf quagga-0.99.10.tar.gz
3.       配置
cd quagga-0.99.10
    ./configure --prefix =/usr
                --sysconfdir=/etc/quagga
                --localstatedir=/var/run/quagga
                --enable-vtysh
                --enable-user='test'
                --enable-group='test'
                 --enable-vty-group='test'
配置输出:
 

Quagga configuration

--------------------

quagga version          : 0.99.10

host operationg 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   -lcap  -ltermcap -lreadline -lm

state file directory    : /var/run/quagga

config file directory   : /etc/quagga

example directory       : /etc/quagga

user to run as          : test

group to run as         : test

group for vty sockets   : test

config file mask        : 0600

log file mask           : 0600

 

The above user and group must have read/write access

to the state file directory and

to the config files in the config file directory.

4.       编译和安装
make ;make install
5.       添加test组和用户
groupadd test;
    useradd test -g test
6.       改变权限 //最好写入启动脚本

chown test:test /var/run/quagga

chmod 777 /var/run/quagga   
chown test:test /etc/quagga //需要将配置写入操作系统
chmod 777 /etc/quagga/*                    
7.       增加log权限//最好写入启动脚本

Mkdir  /var/log/quagga/

Vi /var/log/quagga/zebra.log
Chmod 777 /var/log/quagga/zebra.log
 
8.       修改 /etc/services  //just for telnet

                zebrasrv    2600/tcp     # zebra service

                zebra         2601/tcp    # zebra vty
                ripd           2602/tcp    # RIPd vty
                ripngd       2603/tcp    # RIPngd vty
                ospfd        2604/tcp    # OSPFd vty
                bgpd         2605/tcp    # BGPd vty
                ospf6d      2606/tcp    # OSPF6d vty

                ospfapi     2607/tcp    # ospfapi

                isid           2608/tcp    # ISISd vty
 
 
9.       编辑配置文件

copy /etc/quagga/zebra.conf.example   /etc/quagga/zebra.conf

! -*- zebra -*-
!

! zebra sample configuration file

!
hostname Router
password zebra

enable password zebra

log file  /var/log/quagga/zebra.log//注意zebra.conf启用log,这样便于查找错误
 
 
10.     启动
zebra –d
如果启动不成功,察看/var/log/quagga/zebra.log
一般由于权限设置会出现以下错误:

2008/10/22 16:59:22 ZEBRA: Could not lock pid_file /var/run/quagga/zebra.pid, exiting

 
11.    登陆
telnet localhost zebra(0r 2601)
[root@localhost quagga-0.99.10]# telnet localhost 2601

Trying 127.0.0.1...

Connected to localhost.

Escape character is '^]'.

 

Hello, this is Quagga (version 0.99.10).

Copyright 1996-2005 Kunihiro Ishiguro, et al.

 
 
User Access Verification
 
Password:
Router> enable
Password:
Router# help

Quagga VTY provides advanced help feature.  When you need help,

anytime at the command line please press '?'.

 

If nothing matches, the help list will be empty and you must backup

 until entering a '?' shows the available options.

Two styles of help are provided:

1. Full help is available when you are ready to enter a

command argument (e.g. 'show ?') and describes each possible

argument.

2. Partial help is provided when an abbreviated argument is entered

   and you want to know what arguments match the input

   (e.g. 'show me?'.)
 
Router#
 
12.    使用
 
 
 
 
 

Network Topology Overview


Configure R1
configure zebra.conf

! -*- zebra -*-
!
! zebra sample configuration file
!
! $Id: zebra.conf.sample,v 1.1.1.1 2002/12/13 20:15:30 paul Exp $
!
hostname Router
password zebra
enable password zebra

! list Interfaces
interface eth0
ip address 192.168.1.2/24

interface eth2
ip address 192.168.10.2/24

interface lo

!
! Static default route sample.
! null route to consolidate all subnets in this /24
!ip route 192.168.10.0/24 Null0 255
ip route 172.16.71.0/24 eth0

!log file
log file /var/log/quagga/zebra.log

line vty
 

configure ripd.conf

! -*- rip -*-
!
! RIPd sample configuration file
!
! $Id: ripd.conf.sample,v 1.1.1.1 2002/12/13 20:15:30 paul Exp $
!
hostname ripd
password zebra
enable password zebra

!
debug rip events
debug rip packet

!
router rip
network 192.168.1.0/24
network 192.168.10.0/24

!
!log file ripd.log
log file /var/log/quagga/ripd.log
 

Configure R2
configure zebra.conf

! -*- zebra -*-
!
! zebra sample configuration file
!
! $Id: zebra.conf.sample,v 1.1.1.1 2002/12/13 20:15:30 paul Exp $
!
hostname Router
password xxx
enable password xxx

! list Interfaces
interface eth0
ip address 172.16.71.121/24

interface eth2
ip address 192.168.1.5/24

interface lo
! Static default route sample
ip route 0.0.0.0/0 192.168.1.2

!log file zebra.log
log file /var/log/zebra/zebra.log

!
line vty
 

configure ripd.conf

! -*- rip -*-
!
! RIPd sample configuration file
!
! $Id: ripd.conf.sample,v 1.1.1.1 2002/12/13 20:15:30 paul Exp $
!
hostname ripd
password zebra
enable password zebra

!
debug rip events
debug rip packet

!
router rip
network 172.16.71.0/24
network 192.168.1.0/24
network 192.168.2.0/24
!
!log file ripd.log
log file /var/log/ripd.log

!
line vty

Hint :
 '!'  for comment
config file is put in 'PREFIX'/etc directory
if you want start ripd daemon, you must start zebra daemon at first
Testing Connectivity
start zebra/ripd daemon
login zebra vty

 $ telnet localhost zebra
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.

Hello, this is Quagga (version 0.98.5).
Copyright 1996-2005 Kunihiro Ishiguro, et al

User Access Verification

Password:
Router> show ip route
Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF,
I - ISIS, B - BGP, > - selected route, * - FIB route

K>* 0.0.0.0/0 via 140.114.71.254, eth1
C>* 10.0.0.0/8 is directly connected, eth1
C>* 127.0.0.0/8 is directly connected, lo
C>* 140.114.71.0/24 is directly connected, eth1
R 172.16.71.0/24 [120/2] via 192.168.1.5, eth0, 1d04h26m
S>* 172.16.71.0/24 [1/0] is directly connected, eth0
C>* 192.168.1.0/24 is directly connected, eth0
R>* 192.168.2.0/24 [120/2] via 192.168.1.5, eth0, 1d04h26m
C>* 192.168.10.0/24 is directly connected, eth2
Router>

login ripd vty

[]$ telnet localhost ripd
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.

Hello, this is Quagga (version 0.98.5).
Copyright 1996-2005 Kunihiro Ishiguro, et al.


User Access Verification

Password:
ripd> show ip rip
Codes: R - RIP, C - connected, S - Static, O - OSPF, B - BGP
Sub-codes:
(n) - normal, (s) - static, (d) - default, (r) - redistribute,
(i) - interface

Network Next Hop Metric From Tag Time
R(n) 172.16.71.0/24 192.168.1.5 2 192.168.1.5 0 02:40
C(i) 192.168.1.0/24 0.0.0.0 1 self 0
R(n) 192.168.2.0/24 192.168.1.5 2 192.168.1.5 0 02:40
C(i) 192.168.10.0/24 0.0.0.0 1 self 0
ripd>

您可能感兴趣的与本文相关的镜像

Qwen-Image

Qwen-Image

图片生成
Qwen

Qwen-Image是阿里云通义千问团队于2025年8月发布的亿参数图像生成基础模型,其最大亮点是强大的复杂文本渲染和精确图像编辑能力,能够生成包含多行、段落级中英文文本的高保真图像

Quagga软件原名是Zebra是由一个日本开发团队编写的一个以GNU版权方式发布的软件。Quagga项目开始与1996年,当前版本是0.98.4版 可以使用Quagga将linux机器打造成一台功能完备的路由器。 Quagga支持的路由协议 Quagga能够同时支持RIPv1、RIPv2、RIPng、OSPFv2、OSPFv3、BGP-4 BGP-4+等诸多TCP/IP协议。其中: RIPv1、RIPv2、OSPFv2适用于Ipv4的自治域系统内部网络路由协议。 BGP-4是用于Ipv4的自治域系统之间的外部网络路由协议。 RIPng、OSPFv3、BGP-4+主要扩展对Ipv6的支持。 Quagga的特性 模块化设计:Quagga基于模块化方案的设计,即对每一个路由协议使用单独的守护进程。 运行速度快:因为使用了模块化的设计,使得Quagga的运行速度比一般的路由选择程序要快。 可靠性高:在所有软件模块都失败的情况下,路由器可以继续保持连接并且daemons也会继续运行。故障诊断不必离线的状态下被诊断更正 支持Ipv6:Quagga不仅支持Ipv4,还支持Ipv6。 Quagga的运行机制 由于Quagga采用模块化的设计,因此Quagga运行时要运行多个守护进程,包括ripd ripngd ospfd ospf6d bgpd Zebra。 其中,Zebra守护进程用来更新内核的路由表,而其他的守护进程负责进行相应路由选择协议的路由更新。 Quagga的好处 就路由器而论,虽然有各种硬件可用,但是费用较高。所以想到用一个运行Linux系统构件的功能丰富的路由器作为代替。Quagga路由守护程序已经使这一切变为现实。因为Quagga支持Ipv4、Ipv6其他各式各样的协议,所以能够满足通常所有的路由需要。
Quagga软件原名是Zebra是由一个日本开发团队编写的一个以GNU版权方式发布的软件。Quagga项目开始与1996年,当前版本是0.98.4版 可以使用Quagga将linux机器打造成一台功能完备的路由器。 Quagga支持的路由协议 Quagga能够同时支持RIPv1、RIPv2、RIPng、OSPFv2、OSPFv3、BGP-4 BGP-4+等诸多TCP/IP协议。其中: RIPv1、RIPv2、OSPFv2适用于Ipv4的自治域系统内部网络路由协议。 BGP-4是用于Ipv4的自治域系统之间 的外部网络路由协议。 RIPng、OSPFv3、BGP-4+主要扩展对Ipv6的支持。 Quagga的特性 模块化设计:Quagga基于模块化方案的设计,即对每一个路由协议使用单独的守护进程。 运行速度快:因为使用了模块化的设计,使得Quagga的运行速度比一般的路由选择程序要快。 可靠性高:在所有软件模块都失败的情况下,路由器可以继续保持连接并且daemons也会继续运行。故障诊断不必离线的状态下被诊断更正 支持Ipv6:Quagga不仅支持Ipv4,还支持Ipv6。 Quagga的运行机制 由于Quagga采用模块化的设计,因此Quagga运行时要运行多个守护进程,包括ripd ripngd ospfd ospf6d bgpd Zebra。 其中,Zebra守护进程用来更新内核的路由表,而其他的守护进程负责进行相应路由选择协议的路由更新。 Quagga的好处 就路由器而论,虽然有各种硬件可用,但是费用较高。所以想到用一个运行Linux系统构件的功能丰富的路由器作为代替。Quagga路由守护程序已经使这一切变为现实。因为Quagga支持Ipv4、Ipv6其他各式各样的协议,所以能够满足通常所有的路由需要。
<think>首先,用户的问题是:“我想在Linux系统上安装Quagga路由软件 请问如何在Linux系统上安装配置Quagga路由软件”。这涉及到安装配置Quagga路由软件。 根据系统级指令,我需要: - 所有行内数学表达式使用$...$格式。 - 独立公式使用$$...$$并单独成段。 - LaTeX语法正确。 - 使用中文回答。 - 生成相关问题。 - 回答中引用的段落末尾自然地添加引用标识。 - 回答结构清晰,帮助用户逐步解决问题,保证真实可靠。 用户提供了几个引用,我需要参考这些引用: - 引用[1]: 关于配置Quagga,配置文件在/usr/local/etc/quagga/目录下,编辑如zebra.conf、bgpd.conf等。 - 引用[2]: Quagga软件简介,支持多种路由协议如RIP、OSPF、BGP等。 - 引用[3]: 配置Quagga使用vtysh命令行,类似于思科Juniper。 - 引用[4]: Quagga是一个路由软件套件,支持IPv4IPv6路由协议。 - 引用[5]: 安装Quagga的configure命令示例:./configure --enable-vtysh --localstatedir=/var/run/quagga --sysconfdir=/etc/quagga --enable-vtysh-group=root。 这些引用提供了安装配置的细节。我应该基于这些信息构建回答。 回答结构: 1. 介绍Quagga。 2. 安装步骤。 3. 配置步骤。 4. 验证安装。 5. 生成相关问题。 安装步骤: - 引用[5]给出了一个configure命令:./configure --enable-vtysh --localstatedir=/var/run/quagga --sysconfdir=/etc/quagga --enable-vtysh-group=root。这适用于从源代码安装。 - 但用户可能使用包管理器更简单。在Linux上,Quagga通常可以通过包管理器安装,如apt或yum。 - 例如,在Ubuntu上:sudo apt-get install quagga。 - 在CentOS上:可能需要启用EPEL仓库,然后yum install quagga。 配置步骤: - 引用[1]:配置文件在/usr/local/etc/quagga/或/etc/quagga/下。 - 需要编辑配置文件如zebra.conf、ospfd.conf等。 - 引用[3]:使用vtysh命令行界面来配置。 步骤分解: 1. 安装Quagga: - 对于Debian/Ubuntu:sudo apt update && sudo apt install quagga - 对于CentOS/RHEL:sudo yum install epel-release && sudo yum install quagga(或使用dnf) 2. 配置Quagga: - 配置文件通常位于/etc/quagga/。 - 需要为每个协议创建配置文件,如zebra.conf、bgpd.conf等。 - 启动服务:sudo systemctl start quagga(或zebra、ospfd等)。 - 使用vtysh进行动态配置。 3. 基本配置示例: - 配置zebra(核心守护进程)。 - 配置OSPF或BGP。 4. 验证: - 检查服务状态。 - 使用vtysh查看路由表。 生成相关问题: - 基于主题,如优化、常见问题、高级配置。 引用标识: - 当引用特定段落时,在末尾添加[^n]。例如,提到配置文件位置时引用[1]。 数学表达式:用户问题中没有明显的数学内容,但如果涉及,如网络计算,我会使用$...$。这里可能不涉及,但我会注意。 回答语言:中文。 最终回答结构: - 开头:介绍Quagga。 - 安装部分。 - 配置部分。 - 结束:总结。 - 相关问题。</think>### 在Linux系统上安装配置Quagga路由软件 Quagga是一个开源的、功能完备的路由软件套件,支持多种TCP/IP路由协议,包括RIPv1、RIPv2、RIPng、OSPFv2、OSPFv3、BGP-4BGP-4+等。它可以将Linux系统转换为专业路由器,支持IPv4IPv6路由协议[^2][^4]。下面我将一步步指导您完成安装基本配置,确保过程清晰可靠。安装配置基于主流Linux发行版(如Ubuntu或CentOS),实际步骤可能因系统版本略有差异。 #### 1. **安装Quagga** 在大多数Linux发行版中,Quagga可通过包管理器安装。以下是常见系统的命令: - **对于Debian/Ubuntu系统**: ```bash sudo apt update # 更新软件源 sudo apt install quagga # 安装Quagga套件 ``` 安装后,Quagga的核心守护进程(如zebra、ospfd等)会自动创建。 - **对于CentOS/RHEL系统**: 首先启用EPEL仓库(提供额外软件包): ```bash sudo yum install epel-release # 安装EPEL仓库 sudo yum install quagga # 安装Quagga ``` 或使用dnf(CentOS 8及以上): ```bash sudo dnf install epel-release sudo dnf install quagga ``` - **从源代码安装(可选)**: 如果包管理器不可用或需自定义选项,可编译安装。下载源码后,运行: ```bash ./configure --enable-vtysh --localstatedir=/var/run/quagga --sysconfdir=/etc/quagga --enable-vtysh-group=root make sudo make install ``` 此命令启用vtysh命令行工具,并设置配置目录[^5]。 安装完成后,Quagga服务会自动启动。检查状态: ```bash sudo systemctl status quagga # 或指定守护进程如zebra、ospfd ``` #### 2. **配置Quagga** Quagga的配置文件位于`/etc/quagga/`目录(包管理器安装)或`/usr/local/etc/quagga/`(源码安装)[^1]。每个协议对应一个配置文件(如`zebra.conf`、`ospfd.conf`、`bgpd.conf`)。配置分两步:静态文件编辑动态命令行配置。 - **步骤1: 编辑静态配置文件** - 首先配置核心守护进程zebra(负责接口路由管理): ```bash sudo nano /etc/quagga/zebra.conf # 编辑zebra配置文件 ``` 添加基础内容(示例): ``` ! Zebra configuration hostname Router1 # 路由器名称 password quagga # 设置密码(用于vtysh登录) enable password quagga interface eth0 # 配置网络接口 ip address 192.168.1.1/24 ``` - 配置路由协议,如启用OSPF: ```bash sudo nano /etc/quagga/ospfd.conf # 创建或编辑OSPF配置文件 ``` 添加内容(示例): ``` ! OSPF configuration router ospf network 192.168.1.0/24 area 0 # 宣告网络区域 log-adjacency-changes detail # 记录邻居变化 ``` 配置文件需设置正确权限: ```bash sudo chown quagga:quagga /etc/quagga/*.conf # 确保Quagga用户有权访问 sudo chmod 640 /etc/quagga/*.conf ``` - **步骤2: 使用vtysh动态配置** Quagga提供`vtysh`命令行工具(类似思科/Juniper路由器),支持实时配置[^3]: ```bash sudo vtysh # 进入交互式命令行 ``` 在vtysh中配置示例(配置OSPF并保存): ``` configure terminal router ospf network 192.168.1.0/24 area 0 exit write # 保存配置到静态文件 exit ``` - **启动服务**: ```bash sudo systemctl start zebra # 启动核心守护进程 sudo systemctl start ospfd # 启动OSPF守护进程 sudo systemctl enable quagga # 设置开机自启 ``` #### 3. **验证安装配置** - 检查服务状态: ```bash sudo systemctl status ospfd # 确保协议守护进程运行正常 ``` - 使用vtysh查看路由信息: ```bash sudo vtysh show ip ospf neighbor # 查看OSPF邻居 show ip route # 查看路由表 ``` - 测试网络连通性(如ping其他路由器)。 #### 常见问题与注意事项 - **权限问题**:如果vtysh无法启动,检查用户组权限(确保`--enable-vtysh-group=root`选项正确设置)[^5]。 - **配置文件错误**:编辑文件后重启服务:`sudo systemctl restart quagga`。 - **防火墙**:确保防火墙允许路由协议端口(如OSPF使用端口89)。 - **日志查看**:日志通常位于`/var/log/quagga/`,用于调试。 通过以上步骤,您已成功安装配置QuaggaQuagga的灵活性协议支持使其适用于企业网络、数据中心或实验环境[^2][^4]。如需高级配置(如BGP或IPv6),参考官方文档或协议手册。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值