1. 程式人生 > >路由表linux routing table

路由表linux routing table

如果連路由器都ping不通,首先檢查自己的IP地址有沒有設定,再用如下命令設定閘道器:route add default gw 閘道器地址 eth0(根據自己的實際網絡卡名稱修改)。

路由

我們在網路基礎裡面談到過路由的相關概念, 他最大的功能就是在幫我們規劃網路封包的傳遞方式與方向。 至於路由的觀察則可以使用 route 或者是 netstat 來查閱與設定。 好了,那麼路由的形式有哪些?您又該如何確認路由是否正確呢?

路由表

如同前面網路基礎談到的,每一部主機都有自己的路由表, 也就是說,您必須要透過你自己的路由表來傳遞你主機的封包到下一個路由器上頭。 若傳送出去後,該封包就得要透過下一個路由器的路由表來傳送了,此時與你自己主機的路由表就沒有關係啦! 所以說,如果網路上面的某一部路由器設定錯誤,那.....封包的流向就會發生很大的問題。 我們就得要透過 

traceroute 來嘗試瞭解一下每個 router 的封包流向囉。

OK!那你自己主機的路由表到底有哪些部分呢?我們以底下這個路由表來說明:

[[email protected] ~]# route -n

Kernel IP routing table
Destination  Gateway     Genmask        Flags Metric Ref  Use Iface
192.168.1.0  0.0.0.0     255.255.255.0  U     0      0      0 eth0 <== 1
127.0.0.0    0.0.0.0     255.0.0.0      U     0      0      0 lo   <== 2
0.0.0.0 192.168.1.2 0.0.0.0 UG 0 0 0 eth1 <== 3
首先,我們得知道在 Linux 系統下的路由表是由小網域排列到大網域, 例如上面的路由表當中,路由是由『 192.168.1.0/24 --> 127.0.0.0/8 --> 0.0.0.0/0 (預設路由) 』來排列的。 而當主機的網路封包需要傳送時,就會查閱上述的三個路由規則來瞭解如何將該封包傳送出去。

你會不會覺得奇怪,為什麼會有這幾個路由呢?其實路由表主要有這幾種情況來設計的:
依據介面而存在的路由
例如 192.168.1.0/24 這個路由的存在是由於鳥哥的這部主機上面擁有 192.168.1.11 這個 IP 的關係! 也就是說,你主機上面有幾個網路介面的存在時,該網路介面就會存在一個路由才對。 所以說,萬一你的主機有兩個網路介面時,例如 192.168.1.11, 192.168.2.11 時,那路由至少就會有:
  • [[email protected] ~]# route -n
    Kernel IP routing table
    Destination  Gateway     Genmask        Flags Metric Ref  Use Iface
    192.168.1.0  0.0.0.0     255.255.255.0  U     0      0      0 eth0 
    192.168.2.0  0.0.0.0     255.255.255.0  U     0      0      0 eth1
    .....以下省略.....
    
    手動或預設路由(default route)
    你可以使用 route 這個指令手動的給予額外的路由設定,例如那個預設路由 (0.0.0.0/0) 就是額外的路由。 使用 route 這個指令時,最重要的一個概念是:『你所規劃的路由必須要是你的裝置 (如 eth0) 或 IP 可以直接溝通 (broadcast) 的情況』才行。舉例來說,以上述的環境來看, 我的環境裡面僅有 192.168.1.11 及 192.168.2.11 ,那我如果想要連線到 192.168.100.254 這個路由器時, 下達:
    [[email protected] ~]# route add -net 192.168.100.0  /
    > netmask 255.255.255.0 gw 192.168.100.254
    SIOCADDRT: Network is unreachable
    
    看吧!系統就會回應沒有辦法連線到該網域,因為我們的網路介面與 192.168.100.0/24 根本就沒有關係嘛! 那如果 192.168.100.254 真的是在我們的實體網路連線上,那其實你應該是這樣做:
    [[email protected] ~]# route add -net 192.168.100.0  /
    > netmask 255.255.255.0 dev eth0
    [[email protected] ~]# route -n
    Kernel IP routing table
    Destination    Gateway      Genmask        Flags Metric Ref Use Iface
    192.168.100.0  0.0.0.0      255.255.255.0  U     0      0     0 eth0
    192.168.1.0    0.0.0.0      255.255.255.0  U     0      0     0 eth0
    0.0.0.0        192.168.1.2  0.0.0.0        UG    0      0     0 eth1
    
    這樣你的主機就會直接用 eth0 這個裝置去嘗試連線 192.168.100.254 了! 另外,上面路由輸出的重點其實是那個『Flags 的 G 』了!因為那個 G 代表使用外部的裝置作為 Gateway 的意思!而那個 Gateway (192.168.1.2) 必須要在我們的已存在的路由環境中。 這可是很重要的概念喔! ^_^

相關推薦

路由linux routing table

如果連路由器都ping不通,首先檢查自己的IP地址有沒有設定,再用如下命令設定閘道器:route add default gw 閘道器地址 eth0(根據自己的實際網絡卡名稱修改)。 路由 我們在網路基礎裡面談到過路由的相關概念, 他最大的功能就是在幫我們規劃網路封包的傳遞

linux路由策略rule和路由table

1.linux系統中路由表tablelinux最多可以支援255張路由表,每張路由表有一個table id和table name。其中有4張表是linux系統內建的:(1)table id = 0系統保留。(2)table id = 255稱為本地路由表,表名為local。像

Linux路由信息-route命令

當前 表示 nat dev 通過 網絡接口 targe 直接 pre 使用命令 :route route 命令 顯示和設置Linux路由表 -A:設置地址類型; -C:打印將Linux核心的路由緩存; -v:詳細信息模式; -n:不執行DNS反向查找,直接顯示數

linux 多網卡多路由實現策略路由

文件名 多網卡 路由規則 策略 關機 name show scripts ip地址 linux kernel 2.2 開始支持多個路由表。routing policy database (RPDB)。 傳統路由表,基於目標地址做路由選擇。通過多個路由表,kernel支持實施

實例:linux查看和操作IP路由方法

add inux .com -s media AS 不同 pan 安裝 實例:linux查看和操作IP路由表方法 聽語音 | 瀏覽:2933 | 更新:2015-10-17 10:07 | 標簽:linux 1 2 3 4 5 6

交換機,linux主機及windwos主機上路由查看

broadcast 不可 例如 能力 建立 多個 rbo 即將 ipv6地址 有時候,網絡故障,網絡不通,有部分原因是路由信息不正確導致的。為了排查路由信息的錯誤導致網絡不通,我們就需要學會查看路由表上的信息。在華為交換機,linux服務器和windows服務器上,路由表的

linux命令解析--理解ip路由和操作linux路由

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

linux 路由設定 之 route 指令詳解

使用下面的 route 命令可以檢視 Linux 核心路由表。 [cpp] view plain copy # route   Destination     

ZigBee Routing Tables 路由

以下內容摘自ZigBee 2015 Pro文件《docs-05-3474-21-0csg-zigbee-specification》 3.6.3.2 Routing Tables A ZigBee router or ZigBee coordinator may maintain

linux下ppp0和eth0同時工作時的路由配置

mac地址唯一 ifconfig eth0 hw ether 00:11:22:33:44:55 原配置為 route add default gw 192.168.9.254 現改為 route add -net 192.168.2.0 netmask 255.255.2

linux 路由設定(雙網絡卡)

新增到主機的路由 # route add -host 192.168.1.2 dev eth0 # route add -host 10.20.30.148 gw 10.20.30.40 #新增到10.20.30.148的網管 新增到網路的路由 # route add -net 10.20.3

linux路由的檢視和含義

1.關於路由表的一個例子解析 檢視命令:netstat -rn     先執行帶-r選項的netstat命令,列出路由表,然後以-n選項再次執行該命令,以數字格式打印出 ip地址(我們這樣做是因為路由表中的一些表項是網路地址,而不是主機地址。如果沒有- n選項, netst

Linux 預設路由 0.0.0.0

netstat -nr命令會顯示路由表的內容。閘道器為0.0.0.0的網路通常是直連到網路裝置上的。因為到自己的直連裝置上是不需要閘道器的,所以0.0.0.0的閘道器地址是正常的。目的地址是0.0.0.0的路由是你的預設閘道器。 在這個例子裡,有兩個閘道器,預設的並且是到

Linux 網路協議棧開發番外篇(六)—— Windows路由詳解

一、檢視Windows路由表  路由表是Windows的TCP/IP協議棧的一個重要的部分。但是,路由表不是Windows作業系統向普通使用者顯示的東西。如果你要看到這個路由表,你必須要開啟一個命令提示符對話方塊,然後輸入“ROUTE PRINT”命令。結果如下: 路由

linux 路由路由定址過程

1 概述 每一個linux系統中都具有IP路由表,它儲存了本地計算機可以到達的網路目的地址範圍和如何到達的路由資訊。路由表是TCP/IP通訊的基礎,本地計算機上的任何TCP/IP通訊都受到路由表的控制。 2 Linux 核心的路由表 通過 route

Linux作業系統中的路由配置

本文主要介紹在Linux作業系統中的IP設定及常見問題。1. 新增路由1. 使用route命令新增預設路由下面的例子是在 Centos 7 中進行的。1. 通過以下命令新增預設路由(臨時):route add default gw 192.168.117.2注意:上面的命令中

linux 路由 配置

新增到主機的路由 # route add -host 192.168.1.2 dev eth0:0 # route add -host 10.20.30.148 gw 10.20.30.40 新增到網路的路由 # route add -net 10.20.30.40 netmask 255.255.25

操作系統 之 哈希 Linux 內核 應用淺析

after try 定位 意義 csdn 而是 ini move ons 1.基本概念 散列表(Hash table。也叫哈希表)。是依據關鍵碼值(Key value)而直接進行訪問的數據結構。也就是說,它通過把關鍵碼值映射到表中一個位置來訪問記錄

嘗試在LwIP中實現靜態路由

number containe 1.2 etc add def tool span defined 在lwIP中實現路由表或轉發表,讓SNMP讀取 IP中的路由表或轉發表MIB經歷了一些變化,如下: 最早的MIB是RFC1156,1990年,叫ipRoutingTabl

centos7 雙網卡雙網關的路由配置

網絡雙網卡雙網關的路由表配置。搞過網絡通信的人都知道:一臺計算機不能有兩個網關。如果一臺計算機兩個網卡同時配置了不同的網關,那麽會導致計算機只有一個網卡能用。網絡結構如下圖:路由表解決的問題主要有兩個:雙網卡雙網關的同時使用,一臺電腦可以使用兩個網卡訪問兩個不同的網關。電腦可以通過20.41.200.203所