Linux route命令詳解:查看和操作IP路由表

2020-12-27 51CTO

Linux系統的route命令用於顯示和操作IP路由表(show / manipulate the IP routing table)。要實現兩個不同的子網之間的通信,需要一臺連接兩個網絡的路由器,或者同時位於兩個網絡的網關來實現。

在Linux系統中,設置路由通常是為了解決以下問題:該Linux系統在一個區域網中,區域網中有一個網關,能夠讓機器訪問Internet,那麼就需要將這臺機器的IP位址設置為Linux機器的默認路由。要注意的是,直接在命令行下執行route命令來添加路由,不會***保存,當網卡重啟或者機器重啟之後,該路由就失效了;可以在/etc/rc.local中添加route命令來保證該路由設置***有效。

1.命令格式:

route [-f] [-p] [Command [Destination] [mask Netmask] [Gateway] [metric Metric]] [if Interface]]

2.命令功能:

route命令是用於操作基於內核ip路由表,它的主要作用是創建一個靜態路由讓指定一個主機或者一個網絡通過一個網絡接口,如eth0。當使用"add"或者"del"參數時,路由表被修改,如果沒有參數,則顯示路由表當前的內容。

3.命令參數:

-c 顯示更多信息

-n 不解析名字

-v 顯示詳細的處理信息

-F 顯示發送信息

-C 顯示路由緩存

-f 清除所有網關入口的路由表。

-p 與 add 命令一起使用時使路由具有***性。

add:添加一條新路由。 del:刪除一條路由。 -net:目標地址是一個網絡。 -host:目標地址是一個主機。 netmask:當添加一個網絡路由時,需要使用網絡掩碼。 gw:路由數據包通過網關。注意,你指定的網關必須能夠達到。 metric:設置路由跳數。

Command 指定您想運行的命令 (Add/Change/Delete/Print)。 Destination 指定該路由的網絡目標。 mask Netmask 指定與網絡目標相關的網絡掩碼(也被稱作子網掩碼)。

Gateway 指定網絡目標定義的地址集和子網掩碼可以到達的前進或下一躍點 IP 地址。

metric Metric 為路由指定一個整數成本值標(從 1 至 9999),當在路由表(與轉發的數據包目標地址最匹配)的多個路由中進行選擇時可以使用。

if Interface 為可以訪問目標的接口指定接口索引。若要獲得一個接口列表和它們相應的接口索引,使用 route print 命令的顯示功能。可以使用十進位或十六進位值進行接口索引。

4.使用實例:

實例1:顯示當前路由

route 或者 route -n

1 root@ubuntu:~# route -n
2 Kernel IP routing table
3 Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
4 0.0.0.0         59.188.252.1    0.0.0.0         UG    100    0        0 br0
5 10.22.0.0       0.0.0.0         255.255.255.0   U     0      0        0 br0
6 59.188.252.0    0.0.0.0         255.255.255.0   U     0      0        0 br0
7 172.22.0.0      0.0.0.0         255.255.255.0   U     0      0        0 br1
8 192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0

說明:

***行表示主機所在網絡的地址為192.168.120.0,若數據傳送目標是在本區域網內通信,則可直接通過eth0轉發數據包;

第四行表示數據傳送目的是訪問Internet,則由接口eth0,將數據包發送到網關192.168.120.240

其中Flags為路由標誌,標記當前網絡節點的狀態。

Flags標誌說明:

U Up表示此路由當前為啟動狀態     H Host,表示此網關為一主機

G Gateway,表示此網關為一路由器 R Reinstate Route,使用動態路由重新初始化的路由

D Dynamically,此路由是動態性地寫入M Modified,此路由是由路由守護程序或導向器動態修改

! 表示此路由當前為關閉狀態

備註:

route -n (-n 表示不解析名字,列出速度會比route 快)

實例2:添加網關/設置網關

命令:

route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0

實例3:屏蔽一條路由

命令:

route add -net 224.0.0.0 netmask 240.0.0.0 reject

[root@localhost ~]# route add -net 224.0.0.0 netmask 240.0.0.0 reject

[root@localhost ~]# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.120.0 * 255.255.255.0 U 0 0 0 eth0
192.168.0.0 192.168.120.1 255.255.0.0 UG 0 0 0 eth0
10.0.0.0 192.168.120.1 255.0.0.0 UG 0 0 0 eth0
224.0.0.0 - 240.0.0.0 ! 0 - 0 -
224.0.0.0 * 240.0.0.0 U 0 0 0 eth0
default 192.168.120.240 0.0.0.0 UG 0 0 0 eth0

說明:

增加一條屏蔽的路由,目的地址為 224.x.x.x 將被拒絕

實例4:刪除路由記錄

命令:

route del -net 224.0.0.0 netmask 240.0.0.0route del -net 224.0.0.0 netmask 240.0.0.0 reject

實例5:刪除和添加設置默認網關

命令:

route del default gw 192.168.120.240route add default gw 192.168.120.240[root@localhost ~]# route del default gw 192.168.120.240[root@localhost ~]# routeKernel IP routing tableDestination Gateway Genmask Flags Metric Ref Use Iface192.168.120.0 * 255.255.255.0 U 0 0 0 eth0192.168.0.0 192.168.120.1 255.255.0.0 UG 0 0 0 eth010.0.0.0 192.168.120.1 255.0.0.0 UG 0 0 0 eth0[root@localhost ~]# route add default gw 192.168.120.240[root@localhost ~]# routeKernel IP routing tableDestination Gateway Genmask Flags Metric Ref Use Iface192.168.120.0 * 255.255.255.0 U 0 0 0 eth0192.168.0.0 192.168.120.1 255.255.0.0 UG 0 0 0 eth010.0.0.0 192.168.120.1 255.0.0.0 UG 0 0 0 eth0default 192.168.120.240 0.0.0.0 UG 0 0 0 eth0

【編輯推薦】

【責任編輯:

藍雨淚

TEL:(010)68476606】

點讚 0

相關焦點

  • 實例:linux查看和操作IP路由表方法
    Linux系統的route命令用於顯示和操作IP路由表(show / manipulate the IP routing table)。要實現兩個不同的子網之間的通信,需要一臺連接兩個網絡的路由器,或者同時位於兩個網絡的網關來實現。
  • Linux 中如何使用 IP 命令
    老版本的 Linux 中都是使用 ifconfig 命令檢查和配置網絡接口,但是該命令目前已經沒有維護了,取而代之的是 ip 命令ip 命令和 ifconfig 命令很相似,但是 相比起來,ip命令的功能更強大,它能執行多種 ifconfig 命令無法執行的任務本文將介紹 ip 命令常用的一些操作顯示所有網絡接口信息
  • Linux文件的常用操作命令
    linux文件操作常用指令1、系統命令runlevel # 查看當前的運行級別systemctl status firewalld # 開啟網絡服務功能stop # 關閉restart # 重啟rootchmod 777 /aaa # 給文件夾文件/aaa設置權限為777linux查看系統基本參數常用命令1、查看磁碟df -hl # 查看磁碟使用情況
  • Windows命令:route命令使用實例詳解(多網關配置)
    我們可以使用route的命令來處理此類的問題。一般使用route delete、route add、route print這三條命令基本可以解決大部分的問題。1.以管理員的身份運行CMD,打開CMD運行界面。首先分析路由情況,列印路由表。
  • 實用的6個網絡命令,網絡故障不求人
    簡單來說,ipconfig這個命令讓我們可以快速的獲得計算機當前的IP位址、子網掩碼和預設網關等信息,這些信息都是進行測試和故障分析的必要項目。同時,此命令也可以清空DNS緩存(DNS cache)。1. ipconfig 命令參數
  • Linux掛載命令mount用法及參數詳解
    對linux系統而言,USB接口的移動硬碟是當作SCSI設備對待的。插入移動硬碟之前,應先用fdisk –l或more /proc/partitions查看系統的硬碟和硬碟分區情況。[root at pldyrouter /]# fdisk -l接好移動硬碟後,再用fdisk –l或more。
  • 9 個非常實用的網絡調試命令,你會用幾個呢?
    掌握使用 traceroute 命令測量路由情況的技能,即用來顯示數據包到達目的主機所經過的路徑。traceroute 命令的基本用法是,在命令提示符後鍵入 「tracert host_name」 或 「tracert ip_address」,其中,tracert 是 traceroute 在 Windows 作業系統上的稱呼。
  • H3C設備實驗-IP路由基礎
    l 掌握路由轉發的基本原理l 掌握靜態路由、預設路由的配置方法l 掌握查看路由表的基本命令實驗任務一:查看路由表本實驗主要是通過在路由器上通過查看路由表,觀察路由表中路由項。首先,在路由器上查看路由表,如下所示:[rta]display ip routing-tableRouting Tables: PublicDestinations : 2 Routes : 2Destination
  • 面試官問我Linux下常見網絡命令
    ping 命令包含12 個參數,所有參數都可以通過執行ping來查看(2)實例ping www.baidu.com註:Linux下的ping命令和Windows下的ping命令不同5、routeroute命令用來顯示並設置Linux內核中的網絡路由表,route命令設置的路由主要是靜態路由。
  • 網絡工程師必備的一些常用網絡命令
    traceroute命令的基本用法是,在命令提示符後鍵入「tracert host_name」或「tracert ip_address」,其中,tracert是traceroute在Windows作業系統上的稱呼。
  • 那些又當爹又當媽時攢下來的linux常用命令
    2. copy 文件夾,正如linux的拷貝命令cp一樣,加上 -r就可以了,即: scp -r 文件夾 遠程目錄。上傳 put /path/filename(本地主機) /path/filename(遠端主機) 下載 get /path/filename(遠端主機) /path/filename(本地主機) 本地和遠端操作命令區別 在sftp的環境下的操作就和一般ftp的操作類似了,ls,rm,mkdir,dir,pwd,等指令都是對遠端進行操作,如果要對本地操作,只需在上述的指令上加
  • 乾貨|九個常用的網絡命令,網絡通信人必須懂得
    traceroute命令的基本用法是,在命令提示符後鍵入「tracert host_name」或「tracert ip_address」,其中,tracert是traceroute在Windows作業系統上的稱呼。
  • 初學者運維必知的Linux命令大全「完整版」
    addr、ifup、ifdown、nmcli、route、nslookup、traceroute、dig、tcpdump、nmap、brctl、ethtool、setup、arp、ab、iperf;Linux系統開關機:Init、reboot、shutdown、halt、poweroff、runlevel、login、logout、exit;cd命令詳解cd
  • Linux 命令匯總
    命令功能說明線上查詢及幫助命令 (2 個)man查看命令幫助,命令的詞典,更複雜的還有 info,但不常用。help查看 Linux 內置命令的幫助,比如 cd 命令。文件和目錄操作命令 (18 個)ls全拼 list,功能是列出目錄的內容及其內容屬性信息。
  • linux基礎命令(文件操作/文件權限)
    文件操作常用命令Linux是一個一切皆文件的作業系統,不管是普通的文件、目錄、套接字等,在Linux中都是以文件的方式對待,雖然他們的類型不同,但linux對其提供的是同一套操作界面。切換工作目錄cd 目標工作路徑註:目標工作路徑可為絕對路徑也可為相對路徑切換工作目錄eg.
  • 網絡工程師人手必備的常用網絡命令合集,吐血整理!
    2、ipconfig /all 當使用all選項時,ipconfig能為DNS和WINS伺服器顯示它已配置且所有使用的附加信息,並且能夠顯示內置於本地網卡中的物理地址(MAC)。如果IP位址是從DHCP伺服器租用的,ipconfig將顯示DHCP伺服器分配的IP位址和租用地址預計失效的日期。
  • HCNA認證考試實驗指南-熟悉華為路由器常用的IP相關命令
    但作為一名網絡工程師,必須熟悉使用命令行的方式進行設備管理。在工作中,對路由器和交換機最常用的操作命令就是IP相關的命令,如配置主機名、IP位址、測試IP數據包連通性等。這些命令是基本的配置和測試命令。
  • Linux tcpdump命令詳解
    tcpdump ip host ace and not helios如果想要獲取主機210.27.48.1除了和主機210.27.48.2之外所有主機通信的ip包,使用命令:tcpdump ip host 210.27.48.1 and !
  • Linux企業運維人員最常用150個命令匯總
    命令功能說明線上查詢及幫助命令(2個)man查看命令幫助,命令的詞典,更複雜的還有info,但不常用。help查看Linux內置命令的幫助,比如cd命令。文件和目錄操作命令(18個)ls全拼list,功能是列出目錄的內容及其內容屬性信息。