什么是Linux中的路由和路由表?
路由的過程意味著IP包在網(wǎng)絡(luò)上從一點(diǎn)傳輸?shù)搅硪稽c(diǎn)。當(dāng)你向某人發(fā)送電子郵件時(shí),你實(shí)際上是在將一系列IP數(shù)據(jù)包或數(shù)據(jù)報(bào)從你的系統(tǒng)傳輸?shù)搅硪粋€(gè)人的計(jì)算機(jī)上。從計(jì)算機(jī)發(fā)送的數(shù)據(jù)包通過幾個(gè)網(wǎng)關(guān)或路由器到達(dá)目標(biāo)計(jì)算機(jī)系統(tǒng)。同樣的方法適用于所有internet協(xié)議,如HTTP、IRC和FTP等。
在所有Linux和UNIX系統(tǒng)中,有關(guān)如何轉(zhuǎn)發(fā)IP數(shù)據(jù)包的信息都存儲(chǔ)在內(nèi)核結(jié)構(gòu)中。這些結(jié)構(gòu)稱為路由表。當(dāng)您希望系統(tǒng)與其他計(jì)算機(jī)通信時(shí),可能需要配置這些路由表。首先,了解如何在Linux系統(tǒng)上查看這些路由表非常重要。
在本文中,我們將通過以下三個(gè)常用的命令來解釋如何在Ubuntu中查看路由表:
netstat命令
route命令
ip route命令
我們?cè)赨buntu 18.04 LTS系統(tǒng)上運(yùn)行了本文中提到的命令和過程。
我們使用Ubuntu命令行終端,以便運(yùn)行上述命令。您可以通過系統(tǒng)Dash或Ctrl Alt T快捷方式打開終端。
如何查看路由表?
方法1:通過netstat命令
netstat命令一直是Linux中打印路由表信息一種廣泛使用的方法。然而,它被ip route命令正式取代。無論如何,我們都需要它,因?yàn)樗匀皇菣z索所需信息的一種方法。
以下是使用此命令的方法:
$ netstat -rn
-r此標(biāo)志用于顯示內(nèi)核路由表
-n此標(biāo)志用于顯示數(shù)字地址
這是輸出的結(jié)果:
方法2:通過route命令
route命令也屬于曾經(jīng)廣泛使用但現(xiàn)在過時(shí)的命令來查看路由表。 此命令的手冊(cè)頁還提到該命令現(xiàn)在已被ip route命令替換。
通過此命令,您可以通過netstat命令查看完全相同的信息。 以下是如何使用它:
$ route -n
內(nèi)核 IP 路由表
目標(biāo) 網(wǎng)關(guān) 子網(wǎng)掩碼 標(biāo)志 躍點(diǎn) 引用 使用 接口
0.0.0.0 192.168.182.2 0.0.0.0 UG 20100 0 0 ens33
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 ens33
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0
192.168.182.0 0.0.0.0 255.255.255.0 U 100 0 0 ens33
-n此標(biāo)志僅用于顯示數(shù)字地址
方法3:通過ip route命令
最后但同樣重要的是,這是在Linux中打印路由表信息的最佳方法。 以下是使用此命令的方法:
$ ip route
雖然這些信息不像前面提到的命令那樣對(duì)讀者友好,但是它仍然足夠您配置路由器。
這是幾個(gè)在Ubuntu中查看路由表信息的命令。雖然ip route命令在外觀上不是很整潔,但它仍然是查找相關(guān)路由表信息的推薦方法。雖然其他命令被認(rèn)為是過時(shí)的,但它們有時(shí)確實(shí)有助于導(dǎo)出需要提取的內(nèi)容。
更多Ubuntu相關(guān)信息見Ubuntu專題頁面https://www.linuxidc.com/topicnews.aspx?tid=2
Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx
本文永久更新鏈接地址:https://www.linuxidc.com/Linux/2018-12/155726.htm
聯(lián)系客服