深入解析使用Linux+Zebra構(gòu)建軟路由系統(tǒng)
Zebra的基本設(shè)置
Zebra無后臺交互程序是實實在在的路由管理程序。它控制著其它的軟件模塊,同時還提供與客戶交互的主端口。Zebra RPM套件中包括一個完整的參考設(shè)置文件。但是,我們只需要建立一個包括以下內(nèi)容的/etc/zebra/zebra.conf文件就可以對Zebra進行設(shè)置了。
最簡單的Zebra設(shè)置文件:
以下是代碼片段:
- hostname speedmetal
 - password zebra
 - enable password zebra
 
無論何時,當(dāng)你進入交互式設(shè)置模式時,Hostname指令將指定路由器的名稱。該名稱可以任意設(shè)置,不一定和主機的名稱相符。Password指令則確定交互式Zebra終端的登陸密碼。/etc/zebra/zebra.conf建立后,我們可以執(zhí)行下列指令來啟動zebra無后臺交互程序:
以下是代碼片段:
- # service zebra start
 
現(xiàn)在我們可以通過連接機器的2601端口進入Zebra交互對話模式。Zebra對話模式實例:
以下是代碼片段:
- [root@speedmetal zebra]# telnet 127.0.0.1 2601
 - Trying 127.0.0.1...
 - Connected to 127.0.0.1.
 - Escape character is '^]'.
 - Hello, this is zebra (version 0.93b).
 - Copyright 1996-2002 Kunihiro Ishiguro.
 - User Access Verification
 - Password: zebra
 - speedmetal> enable
 - Password: zebra
 - speedmetal# ?
 - configure Configuration from vty interface
 - copy Copy configuration
 - debug Debugging functions (see also 'undebug')
 - disableTurn off privileged mode command
 - endEnd current mode and change to enable mode.
 - exit Exit current mode and down to previous mode
 - help Description of the interactive help system
 - list Print command list
 - no Negate a command or set its defaults
 - quit Exit current mode and down to previous mode
 - show Show running system information
 - terminal Set terminal line parameters
 - whoDisplay who is on vty
 - write Write running configuration to memory, network, or terminal
 - speedmetal#
 
我們很容易就能對此了如指掌,因為可以通過點擊屏幕上的?鍵隨時了解某一命令的含義。如果有過配置Cisco路由 器的經(jīng)驗,相信對這一設(shè)置過程并不陌生。到目前為止,我們只完成了Zebra自身的設(shè)置和運行,對各種協(xié)議的設(shè)置還沒有開始,如果你準備好了,就讓我們繼續(xù)吧。
#p#
2. 網(wǎng)絡(luò)規(guī)劃
路由器所在的Linux分別有兩個網(wǎng)卡,ethO:192.168.1.1和eth1:192.168.10.1??蛻舳薃 所在網(wǎng)段為192.168.1.0/24,IP為192.168.1.2??蛻舳薆所在網(wǎng)段為192.168.10.0/24,IP為192.168.10.2。
3. 配置路由器的網(wǎng)絡(luò)設(shè)置
因為路由器所在Linux必須虛擬出兩塊網(wǎng)卡, 分別做為兩個不同網(wǎng)段的網(wǎng)關(guān),所以在下面的目錄中會看到有兩個文件,分別是ifcfg-eth0和ifcfgethl。它們分別是兩個網(wǎng)卡的配置文件。首先編輯ifcfg-eth0,讓它的地址為192.168.1.1, 詳細內(nèi)容如下:
以下是代碼片段:
- [root@rhel5~]#vi /etc/sysconfig/network-scripts/ifcfg-eth0
 - DEVICE=eth0
 - ONBOOT=yes
 - BOOTPROTO=static
 - IPADDR=192.168.1.1
 - NETMASK=255.255.255.0
 
其次編輯ifcfg-eth1,讓它的地址為192.168.10.1,詳細內(nèi)容如下:
以下是代碼片段:
- DEVICE=eth1
 - ONBOOT=yes
 - BOOTPROTO=static
 - IPADDR=192.168.10.1
 - NETMASK=255.255.255.0
 
現(xiàn)在重新啟動一下網(wǎng)絡(luò)服務(wù),讓網(wǎng)絡(luò)配置生效。如果以上操作都正確的話,那么下面就來安裝和配置路由器。首先我們需要下載一個zebra-0.95b-1.i386.rpm,Linux下的路由器程序, 在RedHat的光盤里有這個RPM包。如果大家用的是別的版本Linux,可以到http://www.findrpm.com 里下載。到此為止,zebra成功安裝完畢。下面再檢查一下zebra是否真的安裝成功:
以下是代碼片段:
- [root@rhel5 my]#rpm -aq|grep zebra
 - zebra-0.95b-1
 
上面的結(jié)果說明已經(jīng)安裝成功了。現(xiàn)在啟動zebra:
以下是代碼片段:
- [rot@rhel5 my]#service zebra start
 - [rot@rhel5 my]#service ripd start
 
ripd進程主要是用來使用zebra配置支持RIP路由協(xié)議的,所以不但要啟動zebra, 還要同時啟動ripd。如果大家想在下次開機后自動運行路由器,那么執(zhí)行如下命令:
以下是代碼片段:
- [root@rhel5 my]chkconfig zebra on
 - [root@rhel5 my]chkconfig ripd on
 
下面來看一下zebra的配置文件:
以下是代碼片段:
- [root@rhel5 zebra]#ls
 - ripd.conf vtysh.conf zebra.conf
 
上面代碼中,vtysh.conf是配置zebra所用的Shell配置文件,zebra.conf是zebra的主配置文件。為了使192.168.1.0/24和192.168.10.0/24網(wǎng)段機器能夠互相通信,需要進行相關(guān)的配置。大家如果用過Cisco路由器的話就會很容易用zebra, 因為它們的命令幾乎都是一樣的。下面就開始配置客戶端。
#p#
4.配置客戶端的網(wǎng)絡(luò)設(shè)置
首先配制客戶端A 。修改ifcfg-eth0, 內(nèi)容如下:
以下是代碼片段:
- DEVICE=eth0
 - ONBOOT=yes
 - BOOTPROTO=static
 - IPADDR=192.168.1.2
 - netmask=255.255.255.0
 - GATWAY=192.168.1.1
 
需要注意的是, 一定要把網(wǎng)關(guān)設(shè)置成我們剛才路由器的192.168.1.1網(wǎng)關(guān)。
以下是代碼片段:
- [root@rhel5 my]#service network restart
 
重新啟動網(wǎng)絡(luò)服務(wù)后,客戶A 的配置就算完成了。其次配置客戶端B。配置B的方法其實和上面一樣,不過有兩個區(qū)別??蛻舳薆的IP設(shè)置成192.168.10.2,網(wǎng)關(guān)改成192.168.10.1。就這兩點有所不同。
【編輯推薦】















 
 
 



 
 
 
 