您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關如何使用Quagga實現Linux動態路由的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
OSPF 的意思是最短路徑優先。OSPF 是一個內部網關協議(IGP);它可以用在局域網和跨因特網的局域網互聯中。在你的網絡中的每個 OSPF 路由器都包含整個網絡的拓撲,并計算通過網絡的最短路徑。OSPF 會通過多播的方式自動對外傳播它檢測到的網絡變化。你可以將你的網絡分割為區域,以保持路由表的可管理性;每個區域的路由器只需要知道離開它的區域的下一跳接口地址,而不用記錄你的網絡的整個路由表。
RIP,即路由信息協議,是一個很老的協議,RIP 路由器向網絡中周期性多播它的整個路由表,而不是像 OSPF 那樣只多播網絡的變化。RIP 通過跳數來測量路由,任何超過 15 跳的路由它均視為不可到達。RIP 設置很簡單,但是 OSPF 在速度、效率以及彈性方面更佳。
BGP-4 是邊界網關協議版本 4。這是用于因特網流量路由的外部網關協議(EGP)。你不會用到 BGP 協議的,除非你是因特網服務提供商。
在我們的小型 KVM 測試實驗室中,用兩臺虛擬機表示兩個不同的網絡,然后將另一臺虛擬機配置為路由器。創建兩個網絡:net1 是 192.168.110.0/24 ,而 net2 是 192.168.120.0/24。啟用 DHCP 是明智的,否則你要分別進入這三個虛擬機,去為它們設置靜態地址。Host 1 在 net1 中,Host 2 在 net2 中,而路由器同時與這兩個網絡連接。設置 Host 1 的網關地址為 192.168.110.126,Host 2 的網關地址為 192.168.120.136。
Host 1: 192.168.110.125
Host 2:192.168.120.135
Router:192.168.110.126 和 192.168.120.136
在路由器上安裝 Quagga。在大多數 Linux 中它是 quagga 軟件包。在 Debian 上還有一個單獨的文檔包 quagga-doc。取消 /etc/sysctl.conf
配置文件中如下這一行的注釋去啟用包轉發功能:
net.ipv4.ip_forward=1
然后,運行 sysctl -p
命令讓變化生效。
查看你的 Quagga 包中的示例配置文件,比如,/usr/share/doc/quagga/examples/ospfd.conf.sample
。除非你的 Linux 版本按你的喜好做了創新,否則,一般情況下配置文件應該在 /etc/quagga
目錄中。大多數 Linux 版本在這個目錄下有兩個文件,vtysh.conf
和 zebra.conf
。它們提供了守護程序運行所需要的最小配置。除非你的發行版做了一些特殊的配置,否則,zebra 總是首先運行,當你啟動 ospfd 的時候,它將自動啟動。Debian/Ubuntu 是一個特例,稍后我們將會說到它。
每個路由器守護程序將讀取它自己的配置文件,因此,我們必須創建 /etc/quagga/ospfd.conf
,并輸入如下內容:
!/etc/quagga/ospfd.confhostname router1log file /var/log/quagga/ospfd.logrouter ospf ospf router-id 192.168.110.15 network 192.168.110.0/0 area 0.0.0.0 network 192.168.120.0/0 area 0.0.0.0access-list localhost permit 127.0.0.1/32access-list localhost deny anyline vty access-class localhost
你可以使用感嘆號(!
)或者井號(#
)去注釋掉這些行。我們來快速瀏覽一下這些選項。
hostname
可以是你希望的任何內容。這里不是一般意義上的 Linux 主機名,但是,當你使用 vtysh
或者 telnet
登入時,你將看到它們。
log file
是你希望用于保存日志的任意文件。
router
指定路由協議。
ospf router-id
是任意的 32 位數字。使用路由器的一個 IP 地址就是很好的選擇。
network
定義你的路由器要通告的網絡。
access-list
限制 vtysh
登入,它是 Quagga 命令行 shell,它允許本地機器登入,并拒絕任何遠程管理。
在你啟動守護程序之前,Debian/Ubuntu 相對其它的 Debian 衍生版可能多需要一步到多步。編輯 /etc/quagga/daemons
,除了 zebra=yes
和 ospfd=yes
外,使其它所有的行的值為 no
。
然后,在 Debian 上運行 ospfd
去啟動 Quagga:
# systemctl start quagga
在大多數的其它 Linux 上,包括 Fedora 和 openSUSE,用如下命令啟動 ospfd
:
# systemctl start ospfd
現在,Host 1 和 Host 2 將可以互相 ping 通對方和路由器。
這里用了許多篇幅去描述非常簡單的設置。在現實中,路由器將連接兩個交換機,然后為連接到這個交換機上的所有電腦提供一個網關。你也可以在你的路由器上添加更多的網絡接口,這樣你的路由器就可以為更多的網絡提供路由服務,或者也可以直接連接到其它路由器上,或者連接到連接其它路由器的骨干網絡上。
你或許不愿意如此麻煩地手工配置網絡接口。最簡單的方法是使用你的 DHCP 服務器去宣告你的路由器。如果你使用了 Dnsmasq,那么你就有了一個 DHCP 和 DNS 的一體化解決方案。
感謝各位的閱讀!關于“如何使用Quagga實現Linux動態路由”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。