【Linux】一步一步学Linux——route命令(169)
生活随笔
收集整理的這篇文章主要介紹了
【Linux】一步一步学Linux——route命令(169)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
00. 目錄
文章目錄
- 00. 目錄
- 01. 命令概述
- 02. 命令格式
- 03. 常用選項
- 04. 參考示例
- 05. 附錄
01. 命令概述
route命令用來顯示并設置linux內核中的網絡路由表,route命令設置的路由主要是靜態路由。要實現兩個不同的子網之間的通信,需要一臺連接兩個網絡的路由器,或者同時位于兩個網絡的網關來實現。
在linux系統中設置路由通常是為了解決以下問題:該linux系統在一個局域網中,局域網中有一個網關,能夠讓主機訪問Internet,那么就需要將這臺機器的ip地址設置為linux機器的默認路由。
要注意的是:直接在命令行下執行route命令來添加路由,不會永久保存。當網卡重啟或者機器重啟之后,該路由就失效了。可以在/etc/rc.local中添加route命令來保證該路由設置永久有效。
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. 常用選項
-v選用細節操作模式 -A family用指定的地址族(如`inet',`inet6')。 -n以數字形式代替解釋主機名形式來顯示地址。此項對試圖檢測對域名服務器進行路由發生故障的原因非常有用。 -e用netstat(8)的格式來顯示選路表。-ee將產生包括選路表所有參數在內的大量信息。 -net路由目標為網絡。 -host路由目標為主機。 -F顯示內核的FIB選路表。其格式可以用-e 和 -ee選項改變。 -C顯示內核的路由緩存。 del刪除一條路由。 add添加一條路由。 target指定目標網絡或主機。可以用點分十進制形式的IP地址或主機/網絡名。 netmask Nm為添加的路由指定網絡掩碼。 gw Gw為發往目標網絡/主機的任何分組指定網關。注意:指定的網關首先必須是可達的。也就是說必須為該網關預先指定一條靜態路由。如果你為本地接口之一指定這個網關地址的話,那么此網關地址將用于決定此接口上的分組將如何進行路由。這是BSD風格所兼容的。 metric M把選路表中的路由值字段(由選路進程使用)設為M。 mss M把基于此路由之上的連接的TCP最大報文段長度設為M字節。這通常只用于優化選路設置。默認值為536。 window W把基于此路由之上的連接的TCP窗口長度設為W字節。這通常只用于AX.25網絡和不能處理背對背形式的幀的設備。 irtt I把基于此路由之上的TCP連接的初始往返時間設為I毫秒(1-12000)。這通常也只用于AX.25網絡。如果省略此選項,則使用RFC1122的缺省值300ms。 reject設置一條阻塞路由以使一條路由查找失敗。這用于在使用缺省路由前先屏蔽掉一些網絡。但這并不起到防火墻的作用。 mod, dyn, reinstate設置一條動態的或更改過的路由。這些標志通常只由選路進程來設置。這只用于診斷目的, dev If強制使路由與指定的設備關聯,因為否則內核會自己來試圖檢測相應的設備(通常檢查已存在的路由和加入路由的設備的規格)。在多數正常的網絡上無需使用。如果dev If是命令行上最后一個指定的選項,那么可以省略關鍵字dev,因為它是缺省值。否則路由修改對象(metric - netmask- gw - dev)無關緊要。04. 參考示例
4.1 顯示當前路由表
[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為路由標志,標記當前網絡節點的狀態,Flags標志說明:
- U Up表示此路由當前為啟動狀態。
- H Host,表示此網關為一主機。
- G Gateway,表示此網關為一路由器。
- R Reinstate Route,使用動態路由重新初始化的路由。
- D Dynamically,此路由是動態性地寫入。
- M Modified,此路由是由路由守護程序或導向器動態修改。
- ! 表示此路由當前為關閉狀態。
4.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.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 添加默認網關
[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 刪除默認網關
[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主機的數據包發往網關地址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 刪除指定主機的數據包發往默認網關
[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】一步一步學Linux系列教程匯總
總結
以上是生活随笔為你收集整理的【Linux】一步一步学Linux——route命令(169)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Linux】一步一步学Linux——t
- 下一篇: 【Linux】一步一步学Linux——s