1. 程式人生 > >開源路由軟體Quagga安裝及使用

開源路由軟體Quagga安裝及使用

QUAGGA是一款開源的路由軟體,也是zebra(已經停止更新)的升級維護版本。

作用:將linux裝置變成一個功能完整的路由器。支援的協議:rip,ospf,bgp等。

各種簡單的介紹使用方法啊等等什麼的可以去官網搜刮一下!

最新版本是2017.2.8日的1.2.0,但是在編譯的時候原始碼出現了重定義錯誤(沒研究原始碼等內容),所以在這裡我選擇的是quagga-1.1.1。

一、安裝流程

使用虛擬機器vmware9 ubuntu12.04LTSquagga-1.1.1.tar.gz

安裝過程:

(在相應的存放tar包的目錄)

1、tar -xzvf quagga-1.1.1.tar.gz

2、cd quagga-1.1.1

3、./configure --enable-vtysh --enable-user=root --enable-group=root --enable-vty-group=root

上述命令為開啟vty功能(CLI功能)並給予相應使用者許可權

出現錯誤(視機器而定,如果機器已經安裝好這些軟體,就不會出現錯誤):

error: GNU awk is required for lib/memtype.h made by memtypes.awk.
BSD awk complains: awk: gensub doesn't support backreferences (subst "\1")

解決辦法:sudo apt-get insatll gawk

安裝後重新編譯,通過。

出現錯誤:error: vtysh needs libreadline but was not found and usable on your system.


解決辦法:sudo apt-get install libreadline-dev

重新編譯,通過。

檢查整個環境配置過程,如果沒有新的錯誤出現,接下來就進行編譯。

4、make

編譯過程也不是那麼順利的,錯誤又來了。

出現錯誤

解決辦法:sudo apt-get install texinfo

make clean

make

直到所有錯誤都不在出現。

5、sudo make install

整個安裝流程到此就全部完成。

二、簡單的配置使用

首先   vim /etc/service,可以看到各種協議所對應的介面


科普學習:/etc/services檔案是記錄網路服務名和它們對應使用的埠號及協議。檔案中的每一行對應一種服務,它由4個欄位組成,中間用TAB或空格分隔,分別表示“服務名稱”、“使用埠”、“協議名稱”以及“別名”。
/etc/services檔案包含了服務名和埠號之間的對映,很多的系統程式要使用這個檔案。一般情況下,不要修改該檔案的內容,因為這些設定都是Internet標準的設定。一旦修改,可能會造成系統衝突,使使用者無法正常訪問資源。Linux系統的埠號的範圍為0–65535,不同範圍有不同的意義。
0 不使用
1--1023 系統保留,只能由root使用者使用
1024---4999 由客戶端程式自由分配

5000---65535 由伺服器端程式自由分配

關於各種協議的配置文字所在的目錄為/usr/local/etc下面(很重要的一點)

對Quagga進行配置,實際上就是對各程序進行配置,並且路由器的配置和路由協議的配置是分開不同程序的。 可以通俗點這麼理解,Quagga裡的zebra程序,相當於一個路由器,對zebra進行配置,就相當於對路由器進行基本配置(注意,這裡是說基本配置,路由協議不是在zebra裡配置的)。而Quagga裡的ripd、ospfd、bgpd等程序,相當於不同的路由協議,要啟動哪一種協議,就對協議相應的程序進行配置。(摘於網路)

配置zebra和rip(這裡我選擇rip協議,這些配置檔案選擇你選用的哪種協議)

1.cd /usr/local/etc//存放.conf檔案的目錄

2.sudo cp zebra.conf.sample zebra.conf//.sample為自帶的配置檔案

3.sudo cp ripd.conf.sample rip.conf

4.sudo zebra -d //啟動

出現錯誤:zebra: error while loading shared libraries: libzebra.so.1: cannot open shared object file: No such file or directory

解決辦法:sudo cp /usr/local/lib/libzebra.so.1 /lib

然後重新執行sudo zebra -d

ps -e | grep zebra //檢視程序是否啟動成功,成功會出現對應的程序號,否則不會有輸出

配置已經成功了,電腦已經成為一個路由器了,但是我們還未對其中的設定進行配置。

5.telnet localhost 2601


出現>說明已經進入路由器使用者模式

6.特權模式


在特權模式就可以配置一些路由器的屬性。

先到這,後面設定的一些技能還需要在摸索摸索。。。。。。。。

========================================================================