【Linux】一步一步学Linux——route命令(169)
00. 目錄
文章目錄
- 00. 目錄
- 01. 命令概述
- 02. 命令格式
- 03. 常用選項(xiàng)
- 04. 參考示例
- 05. 附錄
01. 命令概述
route命令用來顯示并設(shè)置linux內(nèi)核中的網(wǎng)絡(luò)路由表,route命令設(shè)置的路由主要是靜態(tài)路由。要實(shí)現(xiàn)兩個(gè)不同的子網(wǎng)之間的通信,需要一臺(tái)連接兩個(gè)網(wǎng)絡(luò)的路由器,或者同時(shí)位于兩個(gè)網(wǎng)絡(luò)的網(wǎng)關(guān)來實(shí)現(xiàn)。
在linux系統(tǒng)中設(shè)置路由通常是為了解決以下問題:該linux系統(tǒng)在一個(gè)局域網(wǎng)中,局域網(wǎng)中有一個(gè)網(wǎng)關(guān),能夠讓主機(jī)訪問Internet,那么就需要將這臺(tái)機(jī)器的ip地址設(shè)置為linux機(jī)器的默認(rèn)路由。
要注意的是:直接在命令行下執(zhí)行route命令來添加路由,不會(huì)永久保存。當(dāng)網(wǎng)卡重啟或者機(jī)器重啟之后,該路由就失效了。可以在/etc/rc.local中添加route命令來保證該路由設(shè)置永久有效。
02. 命令格式
route [-nNvee] [-FC] [<AF>] List kernel routing tables route [-v] [-FC] {add|del|flush} ... Modify routing table for AF. route {-h|--help} [<AF>] Detailed usage syntax for specified AF. route {-V|--version} Display version/author and exit.03. 常用選項(xiàng)
-v選用細(xì)節(jié)操作模式 -A family用指定的地址族(如`inet',`inet6')。 -n以數(shù)字形式代替解釋主機(jī)名形式來顯示地址。此項(xiàng)對試圖檢測對域名服務(wù)器進(jìn)行路由發(fā)生故障的原因非常有用。 -e用netstat(8)的格式來顯示選路表。-ee將產(chǎn)生包括選路表所有參數(shù)在內(nèi)的大量信息。 -net路由目標(biāo)為網(wǎng)絡(luò)。 -host路由目標(biāo)為主機(jī)。 -F顯示內(nèi)核的FIB選路表。其格式可以用-e 和 -ee選項(xiàng)改變。 -C顯示內(nèi)核的路由緩存。 del刪除一條路由。 add添加一條路由。 target指定目標(biāo)網(wǎng)絡(luò)或主機(jī)。可以用點(diǎn)分十進(jìn)制形式的IP地址或主機(jī)/網(wǎng)絡(luò)名。 netmask Nm為添加的路由指定網(wǎng)絡(luò)掩碼。 gw Gw為發(fā)往目標(biāo)網(wǎng)絡(luò)/主機(jī)的任何分組指定網(wǎng)關(guān)。注意:指定的網(wǎng)關(guān)首先必須是可達(dá)的。也就是說必須為該網(wǎng)關(guān)預(yù)先指定一條靜態(tài)路由。如果你為本地接口之一指定這個(gè)網(wǎng)關(guān)地址的話,那么此網(wǎng)關(guān)地址將用于決定此接口上的分組將如何進(jìn)行路由。這是BSD風(fēng)格所兼容的。 metric M把選路表中的路由值字段(由選路進(jìn)程使用)設(shè)為M。 mss M把基于此路由之上的連接的TCP最大報(bào)文段長度設(shè)為M字節(jié)。這通常只用于優(yōu)化選路設(shè)置。默認(rèn)值為536。 window W把基于此路由之上的連接的TCP窗口長度設(shè)為W字節(jié)。這通常只用于AX.25網(wǎng)絡(luò)和不能處理背對背形式的幀的設(shè)備。 irtt I把基于此路由之上的TCP連接的初始往返時(shí)間設(shè)為I毫秒(1-12000)。這通常也只用于AX.25網(wǎng)絡(luò)。如果省略此選項(xiàng),則使用RFC1122的缺省值300ms。 reject設(shè)置一條阻塞路由以使一條路由查找失敗。這用于在使用缺省路由前先屏蔽掉一些網(wǎng)絡(luò)。但這并不起到防火墻的作用。 mod, dyn, reinstate設(shè)置一條動(dòng)態(tài)的或更改過的路由。這些標(biāo)志通常只由選路進(jìn)程來設(shè)置。這只用于診斷目的, dev If強(qiáng)制使路由與指定的設(shè)備關(guān)聯(lián),因?yàn)榉駝t內(nèi)核會(huì)自己來試圖檢測相應(yīng)的設(shè)備(通常檢查已存在的路由和加入路由的設(shè)備的規(guī)格)。在多數(shù)正常的網(wǎng)絡(luò)上無需使用。如果dev If是命令行上最后一個(gè)指定的選項(xiàng),那么可以省略關(guān)鍵字dev,因?yàn)樗侨笔≈怠7駝t路由修改對象(metric - netmask- gw - dev)無關(guān)緊要。04. 參考示例
4.1 顯示當(dāng)前路由表
[root@localhost ~]# route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface default gateway 0.0.0.0 UG 100 0 0 ens33 172.16.0.0 0.0.0.0 255.255.254.0 U 100 0 0 ens33 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0 [root@localhost ~]#其中Flags為路由標(biāo)志,標(biāo)記當(dāng)前網(wǎng)絡(luò)節(jié)點(diǎn)的狀態(tài),Flags標(biāo)志說明:
- U Up表示此路由當(dāng)前為啟動(dòng)狀態(tài)。
- H Host,表示此網(wǎng)關(guān)為一主機(jī)。
- G Gateway,表示此網(wǎng)關(guān)為一路由器。
- R Reinstate Route,使用動(dòng)態(tài)路由重新初始化的路由。
- D Dynamically,此路由是動(dòng)態(tài)性地寫入。
- M Modified,此路由是由路由守護(hù)程序或?qū)蚱鲃?dòng)態(tài)修改。
- ! 表示此路由當(dāng)前為關(guān)閉狀態(tài)。
4.2 以數(shù)字形式代替解釋主機(jī)名形式來顯示地址
[root@localhost ~]# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 172.16.0.1 0.0.0.0 UG 100 0 0 ens33 172.16.0.0 0.0.0.0 255.255.254.0 U 100 0 0 ens33 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0 [root@localhost ~]#4.3 添加一條路由
[root@localhost ~]# route add -net 192.168.1.0 netmask 255.255.255.0 dev ens33 [root@localhost ~]# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 172.16.0.1 0.0.0.0 UG 100 0 0 ens33 172.16.0.0 0.0.0.0 255.255.254.0 U 100 0 0 ens33 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 ens33 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0 [root@localhost ~]#4.4 刪除路由記錄
[root@localhost ~]# route del -net 192.168.1.0 netmask 255.255.255.0 dev ens33 [root@localhost ~]# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 172.16.0.1 0.0.0.0 UG 100 0 0 ens33 172.16.0.0 0.0.0.0 255.255.254.0 U 100 0 0 ens33 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0 [root@localhost ~]#4.5 添加默認(rèn)網(wǎng)關(guān)
[root@localhost ~]# route add default gw 172.16.0.2 [root@localhost ~]# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 172.16.0.2 0.0.0.0 UG 0 0 0 ens33 0.0.0.0 172.16.0.1 0.0.0.0 UG 100 0 0 ens33 172.16.0.0 0.0.0.0 255.255.254.0 U 100 0 0 ens33 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0 [root@localhost ~]#4.6 刪除默認(rèn)網(wǎng)關(guān)
[root@localhost ~]# route del default gw 172.16.0.2 [root@localhost ~]# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 172.16.0.1 0.0.0.0 UG 100 0 0 ens33 172.16.0.0 0.0.0.0 255.255.254.0 U 100 0 0 ens33 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0 [root@localhost ~]#4.7 屏蔽一條路由
[root@localhost ~]# route add -net 224.0.0.0 netmask 240.0.0.0 reject [root@localhost ~]# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 172.16.0.1 0.0.0.0 UG 100 0 0 ens33 172.16.0.0 0.0.0.0 255.255.254.0 U 100 0 0 ens33 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0 224.0.0.0 - 240.0.0.0 ! 0 - 0 - [root@localhost ~]#4.8 清除屏幕路由
[root@localhost ~]# route del -net 224.0.0.0 netmask 240.0.0.0 reject [root@localhost ~]# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 172.16.0.1 0.0.0.0 UG 100 0 0 ens33 172.16.0.0 0.0.0.0 255.255.254.0 U 100 0 0 ens33 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0 [root@localhost ~]#4.9 所有去往172.16.0.8主機(jī)的數(shù)據(jù)包發(fā)往網(wǎng)關(guān)地址172.16.0.2
[root@localhost ~]# route add -host 172.16.0.8 gw 172.16.0.2 [root@localhost ~]# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 172.16.0.1 0.0.0.0 UG 100 0 0 ens33 172.16.0.0 0.0.0.0 255.255.254.0 U 100 0 0 ens33 172.16.0.8 172.16.0.2 255.255.255.255 UGH 0 0 0 ens33 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0 [root@localhost ~]#4.10 刪除指定主機(jī)的數(shù)據(jù)包發(fā)往默認(rèn)網(wǎng)關(guān)
[root@localhost ~]# route del -host 172.16.0.8 gw 172.16.0.2 [root@localhost ~]# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 172.16.0.1 0.0.0.0 UG 100 0 0 ens33 172.16.0.0 0.0.0.0 255.255.254.0 U 100 0 0 ens33 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0 [root@localhost ~]#05. 附錄
參考:【Linux】一步一步學(xué)Linux系列教程匯總
總結(jié)
以上是生活随笔為你收集整理的【Linux】一步一步学Linux——route命令(169)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Linux】一步一步学Linux——t
- 下一篇: 【Linux】一步一步学Linux——s