欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

在 Linux 上構(gòu)建網(wǎng)絡(luò)路由器

系統(tǒng) 2661 0

動(dòng)態(tài)、健壯的路由對(duì)于 Internet 網(wǎng)絡(luò)來(lái)說(shuō)極其重要,因此任何一個(gè)初涉此領(lǐng)域的網(wǎng)絡(luò)工程師不僅需要理解路由的概念,而且要有能力在真正的環(huán)境下駕馭它。但是,路由領(lǐng)域由高端網(wǎng)絡(luò)設(shè)備供應(yīng)商(比如 Cisco)提供的產(chǎn)品一統(tǒng)天下,這就意味著對(duì)于大多數(shù)人來(lái)說(shuō),只能在學(xué)校或者實(shí)驗(yàn)室環(huán)境中才能學(xué)習(xí)路由,而且還要一直受到實(shí)踐時(shí)間和實(shí)踐條件的困擾。

我們?cè)诮M織一門關(guān)于 TCP/IP 路由的課程時(shí)就遇到了這樣的困難。在一個(gè)小型的測(cè)試環(huán)境下,我們想演示在使用路由信息協(xié)議(RIP)和開(kāi)放式最短路徑優(yōu)先協(xié)議(OSPF)時(shí)各種不同的負(fù)載平衡情形。但是,我們手頭上的 Cisco 路由器數(shù)量有限。不過(guò)我們有一些 PC 機(jī)可以使用,于是我們開(kāi)始想辦法用 Linux 來(lái)仿真 Cisco 路由器以解決這個(gè)問(wèn)題。

開(kāi)始時(shí)我們嘗試使用傳統(tǒng)的路由和網(wǎng)關(guān)守護(hù)進(jìn)程來(lái)構(gòu)建我們的測(cè)試網(wǎng)絡(luò),但我們很快就發(fā)現(xiàn)對(duì)它們進(jìn)行配置比較困難,而且它們的能力有限,我們的工作得不償失。于是我們決定嘗試使用更先進(jìn)的方法來(lái)完成我們的測(cè)試網(wǎng)絡(luò),很幸運(yùn),我們找到了 Zebra。

什么是 Zebra?

Zebra 是一個(gè) TPC/IP 路由軟件,支持 BGP-4、BGP-4+、OSPFv2、OSPFv3、RIPv1、RIPv2 和 RIPng。它的發(fā)行遵循 GNU 通用公共許可協(xié)議,可以運(yùn)行于 Linux 以及其他一些 Unix 變體操作系統(tǒng)上。Zebra 是那些系統(tǒng)最新的發(fā)行版本中的路由軟件。最新版本的 Zebra 以及文檔可以從 GNU Zebra 網(wǎng)站上下載(參閱 參考資料 中的鏈接)。

最初的 Zebra 軟件包由 Kunihiro Ishiguro 和 Yoshinari Yoshikawa 于1996年完成。現(xiàn)在,這個(gè)軟件包主要由 IP Infusion――CTO 是 Ishiguro 先生――在多名網(wǎng)絡(luò)工程師以及開(kāi)源志愿者的幫助下來(lái)維持。

Zebra 的設(shè)計(jì)獨(dú)特,采用模塊的方法來(lái)管理協(xié)議。可以根據(jù)網(wǎng)絡(luò)需要啟用或者禁用協(xié)議。

Zebra 最為實(shí)用的一點(diǎn)是它的配置形式同 Cisco IOS 極其類似。盡管它的配置與 IOS 相比還是有一些不同,但是這對(duì)于那些已經(jīng)熟悉 IOS 的網(wǎng)絡(luò)工程師來(lái)說(shuō)在這種環(huán)境下工作將相當(dāng)自如。

雖然 Zebra 的版本還沒(méi)有到 1.0――作者完成本文時(shí)版本到了 0.93b――但這個(gè)產(chǎn)品對(duì)于需要核心路由器的小型網(wǎng)絡(luò)來(lái)說(shuō)已經(jīng)足夠了。 [請(qǐng)注意本文中所用到的是版本 0.93b,新的版本的安裝與配置可能會(huì)有所差異。-編輯注]






安裝 Zebra

我們的 Zebra 測(cè)試平臺(tái)是一臺(tái)舊的但是依然很好用的 ThinkPad X20,其運(yùn)行的是 Red Hat Linux 9。ThinkPad 有一個(gè)內(nèi)置的以太網(wǎng)接口,我們又給它加了一塊 PCMCIA 以太網(wǎng)卡,使之可以完成路由器的功能。在安裝 Zebra 之前,我們確認(rèn)兩塊網(wǎng)卡都已經(jīng)被 Linux 認(rèn)出并且正常工作。

在 Red Hat 9 中已經(jīng)附帶了 Zebra-0.93b 的 RPM 安裝包。這個(gè)版本與 Zebra 網(wǎng)站上提供的版本相同,因此我們決定直接使用它,而不再去從網(wǎng)上下載并自己編譯。Zebra RPM 將安裝二進(jìn)制文件、腳本和配置文件,以及必需的手冊(cè)、例子和文檔文件。

Zebra 基本配置

zebra 守護(hù)進(jìn)程是實(shí)際的路由管理者,控制著其他模塊;而且用戶主要通過(guò)它進(jìn)行交互。我們最先需要配置 Zebra 守護(hù)進(jìn)程,對(duì)應(yīng)的配置文件是 /etc/zebra/zebra.conf。

Zebra RPM 包中有一個(gè)完整的配置文件樣例。不過(guò),就最簡(jiǎn)化的情形來(lái)說(shuō),我們實(shí)際上只需要?jiǎng)?chuàng)建一個(gè)包含以下幾行的 /etc/zebra/zebra.conf 文件:


清單 1.一個(gè)最簡(jiǎn)的 Zebra 配置文件
            
              
hostname speedmetal
password zebra
enable password zebra

            
          

hostname 指定了當(dāng)您進(jìn)入交互式配置方式時(shí)的路由器名。它可以是任何一個(gè)標(biāo)識(shí),不一定要和機(jī)器的主機(jī)名相同。

password 指定了登錄進(jìn)入交互式 Zebra 終端時(shí)需要的密碼。

enable password 指定了當(dāng)您想要改變配置時(shí)以較高級(jí)別身份訪問(wèn) Zebra 所需要的密碼。

創(chuàng)建了 /etc/zebra/zebra.conf 文件以后,我們現(xiàn)在可以執(zhí)行下面的命令來(lái)啟動(dòng) zebra 守護(hù)進(jìn)程:

# service zebra start

現(xiàn)在通過(guò) telnet 到我們的機(jī)器的 2601 端口就可以進(jìn)入 Zebra 交互式會(huì)話。


清單 2. 一個(gè) Zebra 會(huì)話樣例
            
              
[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')
  disable    Turn off privileged mode command
  end        End 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
  who        Display who is on vty
  write      Write running configuration to memory, network, or terminal
speedmetal#

            
          

在交互式終端中操作很簡(jiǎn)單。要獲得可用命令的提示,您可以在任何時(shí)刻按 ?鍵,然后命令的選項(xiàng)就會(huì)出現(xiàn)在屏幕上。如果您正在構(gòu)建您自己的 Zebra 路由器,而且您有配置 Cisco 路由器的經(jīng)驗(yàn)的話,您會(huì)覺(jué)得這個(gè)配置過(guò)程非常熟悉。

到現(xiàn)在為止,還只有 Zebra 被配置好并且運(yùn)行起來(lái)了,但是還沒(méi)有任何其他的協(xié)議。接下來(lái)將開(kāi)始配置的實(shí)質(zhì)內(nèi)容,我們將向您介紹我們的這一過(guò)程。

MRLG 的配置和使用

Multi-Router Looking Glass,簡(jiǎn)稱 MRLG,由 EnterZone 的 John Frazier 開(kāi)發(fā),是一個(gè)基于 Web 的工具,可以用來(lái)顯示 Zebra 識(shí)別出來(lái)的接口和路由。MRLG 其實(shí)僅僅是 Zebra shell 的一個(gè) Web 界面,只能使用有限的命令集,但是在我們的測(cè)試過(guò)程中,我們發(fā)現(xiàn)使用它是顯示路由的一個(gè)快速而有效的途徑。所以,在開(kāi)始配置 Zebra 協(xié)議之前,我們先向您介紹如何安裝 MRLG。

MRLG 需要 Net::Telnet Perl 軟件包的支持才能與 Zebra shell 通信。不過(guò),這個(gè)軟件包沒(méi)有包含在常規(guī)的 Red Hat 9 發(fā)行版本中,所以我們只好自己去下載它(參閱 參考資料 中的鏈接)。

由于 MRLG 是作為一個(gè) CGI 應(yīng)用程序來(lái)運(yùn)行,因此我們還需要安裝一個(gè) Web 服務(wù)器。如果您是自己在嘗試這些事情,您可以直接使用 Red Hat 9 自帶的 httpd RPM。

我們將 /usr/share/doc/zebra-0.93b/tools 目錄中的 mrlg.cgi 文件拷貝到 /var/www/cgi-gin 目錄下。然后,我們修改 mrlg.cgi 文件的第36行,將

$url="http://www.sample.com/mrlg.cgi";

修改為:

$url="http://127.0.0.1/cgi-bin/mrlg.cgi";

我們還修改了第168行到第174行的部分內(nèi)容,如下所示:

if ($Form{'router'} eq 'router1') { $server = '127.0.0.1'; $login_pass = 'zebra'; $bgpd = "2605"; $zebra = "2601"; $full_tables=1;

為了訪問(wèn) MRLG,將瀏覽器定向到 http://127.0.0.1/cgi-bin/mrlg.cgi。


圖 1. Multi-Router Looking Glass






基本的實(shí)驗(yàn)室配置

我們的實(shí)驗(yàn)室配置包括兩個(gè) Cisco 3620 路由器和一個(gè) ThinkPad X20(有一個(gè)內(nèi)置的以太網(wǎng)接口和一個(gè) Home-and-Away PCMCIA 以太網(wǎng)卡)。兩個(gè)路由器通過(guò)串行線聯(lián)接起來(lái),并且每個(gè)路由器通過(guò)以太網(wǎng)連接到 ThinkPad。見(jiàn)我們的連接圖:


圖 2. 實(shí)驗(yàn)室連接圖

使用 Zebra 配置接口

我們首先從 RIP 協(xié)議開(kāi)始講述使用 Zebra 來(lái)管理路由。如前所述,我們已經(jīng)在 ThinkPad 上安裝了 Zebra。由于我們?cè)?ThinkPad 上還需要另一個(gè)網(wǎng)絡(luò)接口,我們安裝了一個(gè)虛擬的網(wǎng)絡(luò)設(shè)備,如下:

            
              
# modprobe dummy
          
              
# ifconfig dummy0

我們 telnet 到 Zebra 端口來(lái)開(kāi)始配置。我們按照以下順序與 Zebra 會(huì)話:


清單 3. 配置 IP 接口
            
              
User Access Verification

Password: zebra
speedmetal> enable
Password: zebra
speedmetal# configure terminal
speedmetal(config)# interface eth0
speedmetal(config-if)# ip address 192.168.2.1/30
speedmetal(config-if)# quit
speedmetal(config)# interface eth1
speedmetal(config-if)# ip address 192.168.1.1/30
speedmetal(config-if)# quit
speedmetal(config)# interface dummy0
speedmetal(config-if)# ip address 10.0.2.1/24
speedmetal(config-if)# write
Configuration saved to /etc/zebra/zebra.conf
speedmetal(config-if)# end
speedmetal# show run
 
Current configuration:
!
hostname speedmetal
password zebra
enable password zebra
!
interface lo
!
interface eth0
 ip address 192.168.2.1/30
!
interface dummy0
 ip address 10.0.2.1/24
!
interface eth1
 ip address 192.168.1.1/30
!
!
line vty
!
end

            
          

要注意的是我們沒(méi)有用常規(guī)的方法設(shè)置 ThinkPad 的 IP 地址;而是通過(guò) Zebra 來(lái)設(shè)置它們。這些設(shè)置保存在 /etc/zebra/zebra.conf 配置文件中,因此每次當(dāng) Zebra 服務(wù)啟動(dòng)時(shí),這些設(shè)置就會(huì)生效。

Zebra.conf 文件中由 Zebra 修改的部分如下:


清單 4. 由 Zebra 修改過(guò)的 /etc/zebra/zebra.conf 文件
            
              
!
! Zebra configuration saved from vty
!   2003/08/20 00:07:51
!
hostname speedmetal
password zebra
enable password zebra
!
interface lo
!
interface eth0
 ip address 192.168.2.1/30
!
interface dummy0
 ip address 10.0.2.1/24
!
interface eth1
 ip address 192.168.1.1/30
!
!
line vty
!

            
          

我們還可以用 MRLG 來(lái)檢查接口的狀態(tài),方法是:選擇默認(rèn)值,"router1",選中單選按鈕 "show interface",然后點(diǎn)擊 "Execute"。





使用 Zebra 安裝配置 RIP 路由

我們已經(jīng)在 ThinkPad/router 上安裝配置了網(wǎng)絡(luò)接口,接下來(lái)我們?cè)賹?duì)它進(jìn)行配置,使之可以與 RIP 更新協(xié)同工作。正如我們已經(jīng)提到過(guò)的,Zebra 使用單獨(dú)的守護(hù)進(jìn)程來(lái)實(shí)現(xiàn)路由協(xié)議,所以我們必須首先為 RIP 守護(hù)進(jìn)程在/etc/zebra 目錄下創(chuàng)建一個(gè)簡(jiǎn)單的配置文件ripd.conf。

清單 5. 一個(gè)基本的 /etc/zebra/ripd.conf 文件

            
              
hostname speedmetal-rip
password zebra
enable password zebra

            
          

然后我們啟動(dòng) ripd 守護(hù)進(jìn)程

# service ripd start

完成后,我們可以 telnet 到我們的 Zebra 路由器的 2602 端口來(lái)配置 RIP 守護(hù)進(jìn)程。

清單 6. 配置 RIP

            
              
User Access Verification

Password: zebra
speedmetal-rip> enable
Password: zebra
speedmetal-rip# configure terminal
speedmetal-rip(config)# router rip
speedmetal-rip(config-router)# network 10.0.0.0/8
speedmetal-rip(config-router)# network 192.168.0.0/16
speedmetal-rip(config-router)# end
speedmetal-rip# show run

Current configuration:
!
hostname speedmetal-rip
password zebra
enable password zebra
!
interface lo
!
interface eth0
!
interface dummy0
!
router rip
 network 0.0.0.0/0
 network 192.168.0.0/16
!
line vty
!
end
speedmetal-rip# write
Configuration saved to /etc/zebra/ripd.conf
speedmetal-rip#

            
          

生成的 ripd.conf 配置文件如下所示:


清單 7. 生成的 /etc/zebra/ripd.conf 文件
            
              
!
! Zebra configuration saved from vty
!   2003/08/19 13:50:30
!
hostname speedmetal-rip
password zebra
enable password zebra
!
interface lo
!
interface eth0
!
interface eth1
!
interface dummy0
!
router rip
 network 10.0.0.0/8
 network 192.168.0.0/16
!
line vty
!

            
          

在 Cisco 路由器上安裝配置 RIP 路由

我們將兩個(gè) Cisco 路由器稱為 "A" 和 "B",為了簡(jiǎn)化這兩個(gè)路由器的配置,我們只配置了一些讓路由器能正常運(yùn)行的基本設(shè)置,包括設(shè)置接口的 IP 地址、環(huán)回地址,以及用于串口通信的串口時(shí)鐘頻率。


清單 8. 配置路由器 A
            
              
Router#config terminal
Router(config)#hostname RouterA
RouterA(config)#int s0/0
RouterA(config-if)#ip address 192.168.0.1 255.255.255.252
RouterA(config-if)#no shut
RouterA(config-if)# interface fastEthernet 0/0
RouterA(config-if)#ip address 192.168.2.2 255.255.255.252
RouterA(config-if)#no shut
RouterA(config-if)#int loopback 0
RouterA(config-if)#ip address 10.0.0.1 255.255.255.0
RouterA(config-if)#end
RouterA#write

            
          

類似地,我們配置好路由器 "B"。


清單 9. 配置路由器 B
            
              
Router#configure terminal
Router(config)#hostname RouterB
RouterB(config)#int s0/0
RouterB(config-if)#ip address 192.168.0.2 255.255.255.252
RouterB(config-if)#no shut
RouterB(config-if)#int fastEthernet0/0
RouterB(config-if)#ip address 192.168.1.2 255.255.255.252
RouterB(config-if)#no shut
RouterB(config-if)#int loopback 0
RouterB(config-if)#ip address 10.0.1.1 255.255.255.0
RouterB(config-router)#end
RouterB#write

            
          

在 3620 路由器上配置 RIP 與 Zebra 中的命令極其類似。我們通過(guò)控制臺(tái)線纜訪問(wèn)兩臺(tái)3620,執(zhí)行如下命令:


清單 10. 在路由器 A 上完成 RIP 所需的配置
            
              
RouterA#conf t
Enter configuration commands, one per line. End with CNTL/Z.
RouterA(config)#router rip
RouterA(config-router)#network 10.0.0.0
RouterA(config-router)#network 192.168.0.0
RouterA(config-router)#network 192.168.2.0
RouterA(config-router)#version 2
RouterA(config-router)#end
RouterA#write

            
          

然后是路由器 B:


清單 11. 在路由器 B 上完成 RIP 所需的配置
            
              
RouterB#conf t
Enter configuration commands, one per line. End with CNTL/Z.
RouterB(config)#router rip
RouterB(config-router)#network 10.0.1.0
RouterB(config-router)#network 192.168.0.0
RouterB(config-router)#network 192.168.1.0
RouterB(config-router)#version 2
RouterB(config-router)#end
RouterB#write

            
          

router rip 命令啟動(dòng)配置 RIP 的過(guò)程。network 命令告訴路由器哪些是 RIP 要傳播的網(wǎng)段。

RIP 傳播路由

現(xiàn)在 Cisco 路由器和 Zebra 都已經(jīng)配置好,我們接下來(lái)檢驗(yàn)傳播的路由。在 MRLG 中,我們選擇 "show ip route" 然后點(diǎn)擊 "Execute"。生成如下報(bào)告:


清單 12. Zebra 反映的 RIP 路由
            
              
Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF,
       B - BGP, > - selected route, * - FIB route

R>* 10.0.0.0/24 [120/2] via 192.168.2.2, eth0, 00:11:05
R>* 10.0.1.0/24 [120/2] via 192.168.1.2, eth1, 00:02:08
C>* 10.0.2.0/24 is directly connected, dummy0
K * 127.0.0.0/8 is directly connected, lo
C>* 127.0.0.0/8 is directly connected, lo
R>* 192.168.0.0/30 [120/2] via 192.168.2.2, eth0, 00:11:05
C>* 192.168.1.0/30 is directly connected, eth1
C>* 192.168.2.0/30 is directly connected, eth0

            
          

通過(guò) RIP 得到的路由用一個(gè) R 來(lái)標(biāo)記。

要注意的是,通過(guò)路由器 A 和路由器 B 的廣播,Zebra 現(xiàn)在知道了 10.0.0.0/24 和 10.0.1.0/24 兩個(gè)網(wǎng)段。測(cè)試時(shí),我們從 ThinkPad Zebra 路由器上 ping 10.0.0.1 和 10.0.1.1,并從兩個(gè)路由器上 ping 10.0.2.1(ThinkPad 的虛擬網(wǎng)絡(luò)接口)。

為了測(cè)試路由的 failover,我們把連接網(wǎng)段 10.0.0.0/24 的路由器 A 上的網(wǎng)絡(luò)連接斷開(kāi)。經(jīng)過(guò)總計(jì)約兩分鐘的過(guò)期時(shí)間以后,Zebra 得到了另一個(gè)可達(dá) 10.0.0.0/24 的路由,這個(gè)新的路由是通過(guò)路由器 B 得到的。注意在下面的清單中,Zebra 通過(guò) 192.168.1.2 到達(dá) 10.0.0.0/24,而不是先前的路徑。


清單 13. Zebra 反映的 RIP 路由
            
              
Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF,
       B - BGP, > - selected route, * - FIB route

R>* 10.0.0.0/24 [120/3] via 192.168.1.2, eth0, 00:00:26
R>* 10.0.1.0/24 [120/2] via 192.168.1.2, eth1, 00:06:02
C>* 10.0.2.0/24 is directly connected, dummy0
K * 127.0.0.0/8 is directly connected, lo
C>* 127.0.0.0/8 is directly connected, lo
R>* 192.168.0.0/30 [120/2] via 192.168.1.2, eth1, 00:00:26
C>* 192.168.1.0/30 is directly connected, eth1
C>* 192.168.2.0/30 is directly connected, eth0

            
          

為什么總的過(guò)期時(shí)間大于兩分鐘?RIP 默認(rèn)的過(guò)期時(shí)間是 30 秒,但是 RIP 協(xié)議指定了在確認(rèn)一個(gè)路由已經(jīng)失效之前要進(jìn)行 3 次重試(共 90 秒),并且還要有一段時(shí)間來(lái)清空無(wú)效的路由(還需要 240 秒)。眾所周知,RIP 協(xié)議對(duì)連接失敗反應(yīng)遲鈍,這一點(diǎn)在這里得到了明確的論證。

這里是在 failover 發(fā)生之前路由器 A 的路由表的輸出。


清單 14. Failover 之前路由器 A 的路由表
            
              
RouterA#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
       i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
       * - candidate default, U - per-user static route, o - ODR
       P - periodic downloaded static route

Gateway of last resort is not set

     10.0.0.0/24 is subnetted, 3 subnets
R       10.0.2.0 [120/1] via 192.168.2.1, 00:00:11, FastEthernet0/0
C       10.0.0.0 is directly connected, Loopback0
R       10.0.1.0 [120/1] via 192.168.0.2, 00:00:18, Serial0/0
     192.168.0.0/30 is subnetted, 1 subnets
C       192.168.0.0 is directly connected, Serial0/0
     192.168.1.0/30 is subnetted, 1 subnets
R       192.168.1.0 [120/1] via 192.168.0.2, 00:00:18, Serial0/0
                    [120/1] via 192.168.2.1, 00:00:11, FastEthernet0/0
     192.168.2.0/30 is subnetted, 1 subnets
C       192.168.2.0 is directly connected, FastEthernet0/0


            
          

failover 之后:


清單 15. Failover 之后路由器 A 的路由表
            
              
RouterA#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
       i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
       * - candidate default, U - per-user static route, o - ODR
       P - periodic downloaded static route

Gateway of last resort is not set

     10.0.0.0/24 is subnetted, 3 subnets
R       10.0.2.0 [120/2] via 192.168.0.2, 00:00:09, Serial0/0
C       10.0.0.0 is directly connected, Loopback0
R       10.0.1.0 [120/1] via 192.168.0.2, 00:00:09, Serial0/0
     192.168.0.0/30 is subnetted, 1 subnets
C       192.168.0.0 is directly connected, Serial0/0
     192.168.1.0/30 is subnetted, 1 subnets
R       192.168.1.0 [120/1] via 192.168.0.2, 00:00:09, Serial0/0
     192.168.2.0/30 is subnetted, 1 subnets
R       192.168.2.0 [120/2] via 192.168.0.2, 00:00:10, Serial0/0

            
          






使用 Zebra 配置 OSPF 路由

完成 RIP 的配置后,我們開(kāi)始配置 OSPF 路由。盡管 OSPF 和 RIP 可以同時(shí)使用,不過(guò)為了配置的簡(jiǎn)化,我們現(xiàn)在只使用 OSPF。我們只需要把 ripd 服務(wù)停掉,就可以在 Zebra 中將 RIP 禁用。

# service ripd stop

和前面一樣,我們從 OSPF 的一個(gè)基本的配置文件開(kāi)始,這次是 ospfd.conf,文件所在目錄仍是 /etc/zebra。


清單 16. 一個(gè)基本的 /etc/zebra/ospfd.conf 文件
            
              
hostname speedmetal-ospf
password zebra
enable password zebra

            
          

然后,我們啟動(dòng) OSPF 服務(wù):

# service ospfd start

對(duì) OSPF 的配置比 RIP 簡(jiǎn)單:基本上我們僅僅需要告訴 OSPF 去廣播所有它知道的路由。

配置 OSPF 的端口是 2604。

下面是我們配置 OSPF 的會(huì)話。


清單 17. OSPF 配置會(huì)話
            
              
[root@speedmetal zebra]# telnet 127.0.0.1 2604
User Access Verification

Password: zebra
speedmetal-ospf> enable
Password: zebra
speedmetal-ospf# configure terminal
speedmetal-ospf(config)# router ospf
speedmetal-ospf(config-router)# network 0.0.0.0/0 area 0
speedmetal-ospf(config-router)# end
speedmetal-ospf# write
Configuration saved to /etc/zebra/ospfd.conf
speedmetal-ospf# show run
 
Current configuration:
!
hostname speedmetal-ospf
password zebra
enable password zebra
!
!
router ospf
 network 0.0.0.0/0 area 0
!
line vty
!
end
speedmetal-ospf#

            
          

ospfd.conf 配置文件的修改結(jié)果如下:


清單 18. Zebra 修改后的 /etc/zebra/ospfd.conf 文件
            
              
!
! Zebra configuration saved from vty
!   2003/08/19 14:22:17
!
hostname speedmetal-ospf
password zebra
enable password zebra
!
!
!
interface lo
!
interface eth0
!
interface eth1
!
interface dummy0
!
router ospf
 network 0.0.0.0/0 area 0
!
line vty
!

            
          

在 Cisco 路由器上配置 OSPF

我們用以下命令來(lái)移除 RIP 協(xié)議并添加 OSPF 協(xié)議:


清單 19. 移除 RIP 協(xié)議,添加 OSPF 協(xié)議
            
              
RouterA#conf term
RouterA(config)no router rip
RouterA(config)#router ospf 100
RouterA(config-router)#network 0.0.0.0 255.255.255.255 area 0
RouterA(config-router)end

            
          

我們?cè)诼酚善?A 和路由器 B 上執(zhí)行同樣的步驟。

使用 OSPF 傳播路由

我們的 MRLG 報(bào)告是這樣的:


清單 20. Zebra 反映的 OSPF 路由
            
              
Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF,
       B - BGP, > - selected route, * - FIB route

O>* 10.0.0.0/32 [110/11] via 192.168.2.2, eth0, 00:00:01
O>* 10.0.1.1/32 [110/11] via 192.168.1.2, eth1, 00:02:53
O   10.0.2.0/24 [110/10] is directly connected, dummy0, 00:03:31
C>* 10.0.2.0/24 is directly connected, dummy0
K * 127.0.0.0/8 is directly connected, lo
C>* 127.0.0.0/8 is directly connected, lo
O>* 192.168.0.0/30 [110/58] via 192.168.2.2, eth0, 00:00:01
                            via 192.168.1.2, eth1, 00:00:01
O   192.168.1.0/30 [110/10] is directly connected, eth1, 00:03:21
C>* 192.168.1.0/30 is directly connected, eth1
O   192.168.2.0/30 [110/10] is directly connected, eth0, 00:03:31
C>* 192.168.2.0/30 is directly connected, eth0

            
          

請(qǐng)注意 10.0.0.1/32 和到 10.0.1.1/32 的路由被標(biāo)記為 O,說(shuō)明這些路由是通過(guò) OSPF 得到的。

當(dāng)我們把從 Zebra 路由器到路由器 A 的連接斷開(kāi)時(shí),路由自動(dòng)更新。MRLG 生成的報(bào)告如下:


清單 21. Failover 之后 Zebra 反映的 OSPF 路由
            
              
Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF,
       B - BGP, > - selected route, * - FIB route

O>* 10.0.0.1/32 [110/59] via 192.168.2.2, eth0, 00:01:10
O>* 10.0.1.1/32 [110/11] via 192.168.1.2, eth1, 00:09:46
O   10.0.2.0/24 [110/10] is directly connected, dummy0, 00:10:24
C>* 10.0.2.0/24 is directly connected, dummy0
K * 127.0.0.0/8 is directly connected, lo
C>* 127.0.0.0/8 is directly connected, lo
O>* 192.168.0.0/30 [110/58] via 192.168.1.2, eth1, 00:01:10
O   192.168.1.0/30 [110/10[ is directly connected, eth1, 00:10:14
C>* 192.168.1.0/30 is directly connected, eth1
O   192.168.2.0/30 [110/10] is directly connected, eth0, 00:10:24
C>* 192.168.2.0/30 is directly connected, eth0

            
          

由于 OSPF 是基于鏈路狀態(tài)的,所以 failover 速度快得多:新的路由在 30 秒內(nèi)就可以傳播完成。





結(jié)束語(yǔ)

我們的出發(fā)點(diǎn)是一個(gè)簡(jiǎn)單的需求,那就是我們的網(wǎng)絡(luò)課程受設(shè)備條件所限,需要尋找一個(gè) Cisco 路由器的替代品。Zebra 是一個(gè)明智的選擇,它在網(wǎng)絡(luò)上得到了諸多的好評(píng)。正如前面我們的實(shí)驗(yàn)所示,Zebra 在簡(jiǎn)單網(wǎng)絡(luò)環(huán)境中完全可以取代 Cisco 路由器,可能也能用于一些更復(fù)雜的情形。

無(wú)可否認(rèn),要轉(zhuǎn)而使用 Zebra 需要一定程度的學(xué)習(xí)。使用單獨(dú)的守護(hù)進(jìn)程及單獨(dú)的配置文件在剛開(kāi)始時(shí)令人費(fèi)解,但是當(dāng)我們把這些理順了以后,感覺(jué)它幾乎和 Cisco IOS 沒(méi)什么區(qū)別。

總的來(lái)說(shuō),Zebra 使得在 Linux 上實(shí)現(xiàn)動(dòng)態(tài)路由成為一項(xiàng)簡(jiǎn)單的任務(wù)。如果您需要盡快構(gòu)建一個(gè)路由器,而您的預(yù)算卻有限,不妨試試 Zebra。

在 Linux 上構(gòu)建網(wǎng)絡(luò)路由器


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 奇米第四狠狠777高清秒播 | 国产真人做爰视频免费 | 欧美国产一区二区三区 | 精品一区二区三区免费看 | 亚洲日本高清成人aⅴ片 | 九九线精品视频 | a高清免费毛片久久 | 九九精品在线 | 色综合久久精品中文字幕首页 | 一级特色黄大片 | 又爽又黄又无遮挡的激情视频免费 | 日本wwxx | 看黄色毛片 | 欧美成人影院在线观看三级 | 天堂资源av | 国产h视频在线观看高清 | 亚洲欧美激情视频 | 嫩草影院在线入口 | 国产剧情一区二区三区 | 国产精品视频二区不卡 | 男进女内免费视频无遮挡 | 午夜亚洲| 丝袜诱惑中文字幕 | 九九re6精品视频在线观看 | 国产日韩欧美 | 久久天堂av | 国产综合一区二区 | 国产免费一级高清淫日本片 | 美女视频黄在线观看 | 国产欧美一区二区成人影院 | 国产精品成人在线观看 | 成人免费观看视频 | 奇米777me| 亚洲黄色高清视频 | 国产亚洲欧美另类第一页 | 久久精品视频18 | 在线成人免费观看视频 | 国产人人澡 | 十八勿入| 婷婷精品国产一区二区三区日韩 | 精品国产91亚洲一区二区三区www |