1. 程式人生 > >Linux下的策略路由

Linux下的策略路由

策略路由:

    Linux系統可以同時存在256(0-255)個路由表,而且每個路由表都各自獨立,互不相關。資料包在傳輸時是根據RPDB(路由策略資料庫)內的策略決定資料包應該用哪個路由表傳輸的。

/etc/iproute2/rt_tables  下定義了路由表

/etc/iproute2/rt_tables  下定義了路由表


格式 : 表 名稱

表255 本地路由表(Local table) 本地介面地址,廣播地址,已及NAT地址都放在這個表。該路由表由系統自動維護,管理員不能直接修改。
表254 主路由表(Main table) 如果沒有指明路由所屬的表,所有的路由都預設都放在這個表裡,一般來說,舊的路由工具(如route)所新增的路由都會加到這個表。一般是普通的路由。
表253 預設路由表 (Default table) 一般來說預設的路由都放在這張表,但是如果特別指明放的也可以是所有的閘道器路由。

RPDB中的路由表 :ip rule show

  ip rule show檢視的只是有哪些路由表,要檢視路由表裡面的具體路由,則可以使用ip route show/list table ID/name,預設的ip route show檢視的是main表的路由條目。


第一段:冒號之前的數字,表示該路由表被匹配的優先順序,數字越小,越早被匹配。這個優先級別範圍是0~4億多。預設0、32766、32767三個優先級別已被佔用。如果在新增規則時沒有定義優先級別,那麼預設的優先級別會從32766開始遞減,可以通過prio ID引數在設定路由表時新增優先順序。

第二段:from關鍵字,這裡顯示的是匹配規則,當前表示的是從哪裡來的資料包,除了from關鍵字外,還有to、tos、fwmark、dev等等。

第三段:loacl/main/default 這些都是路由表名稱,表示資料包要從那個路由表送出去。local表包含本機路由及廣播資訊,main表就是我們route -n看到的內容,default表,預設為空。

查看錶的路由  ip route show table


在不能做bond的機器上實現負載均衡可以採用策略路由的方法

gate=`route -n | head -n 3 | grep "eth1" | awk '{printf $2}'`
ip route add default via ${gate} dev eth2 table 200      ######建立一個路由表
eth2=`ifconfig eth2 | grep "inet" |head -n 1 | awk {'printf $2'}`
ip rule add from ${eth2} table 200    #####來自eth2的流量都走路由表200
ip route show table 200



相關推薦

Linux路由與交換-第1部分

gateway 如果 路由與交換 必須 rul ifdown 特定 包括 文件 在命令行模式下執行命令: 這是本主機的路由表,主機要訪問互聯網,必須設定合法的IP參數,包括:IP/NETmask/Gateway/Route/DNS IP以及主機名等 IP/NETmask用

linux 靜態路由和動態路由的配置方式

靜態路由的配置 1.命令列新增靜態路由 首先開啟裝置的路由轉發功能,如果不開啟路由轉發功能,我們配置好路由表,也是不能完成路由的功能 #cat  /proc/sys/net/ipv4/ip_forward通過上面的命令我們可以發現,檔案ip_forward中預設的值為0,我們

linux核心 策略路由之基本結構

四、LINUX策略規則 4.1 基本結構體 4.1.1策略規則結構體fib_rulestruct fib_rule { struct list_head list;//策 略 規 則 鏈

Linux策略路由

策略路由:     Linux系統可以同時存在256(0-255)個路由表,而且每個路由表都各自獨立,互不相關。資料包在傳輸時是根據RPDB(路由策略資料庫)內的策略決定資料包應該用哪個路由表傳輸的。 /etc/iproute2/rt_tables  下定義了路由表 /et

Linux路由配置梳理

梳理 冗余 work 系統啟動 local 網絡接口 分別是 自啟動 bsp 在日常運維作業中,經常會碰到路由表的操作。下面就linux運維中的路由操作做一梳理:--------------------------------------------------------

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

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

linux永久添加靜態路由

spec 需要 環境 發生 文件中 linu int 對比 static 在linux下永久添加靜態路由有兩種方法: 一、添加路由的命令 1、route add route add -net 192.56.76.0 netmask 255.255.255.0 dev eth

linux路由設置詳解

RoCE ive sys 路由route 寫入文件 路由表 ado per 數據 路由表信息解釋 ##名詞解釋:Active Routes:活動的路由Network destination :目的網段Netmask:子網掩碼Gateway:網關,又稱下一跳路由器。在發送

linux 添加,修改,刪除路由

pts 開始 轉發 網絡 scrip 防火墻 scripts ble iptables 在日常生活中,或者在服務器中,有多個網卡配置多個地址,訪問不同的網絡段,這種情況是非常常見的現象,這個時候我們就需要添加多個路由來實現多網絡段的通行。 一、設置當前終端路由(再開機就沒效

Linux基於mark的策略路由以及nf conntrack RELATED

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

Linux使用mtr做路由圖進行網路分析

首先安裝mtr # yum -y install mtr   一般在windows 來判斷網路連通性用ping 和tracert,ping的話可以來判斷丟包率,tracert可以用來跟蹤路由,在Linux中有一個更好的網路連通性判斷工具,它可以結合ping nslookup tra

Linux使用mtr做路由圖進行網絡分析

3.1 mtr 跟蹤 highlight name host 特性 連通性 版本信息 首先安裝mtr # yum -y install mtr 一般在windows 來判斷網絡連通性用ping 和tracert,ping的話可以來判斷丟包率,tracert可以用來

linux 給網絡卡新增ipv6、路由

  新增IPV6地址 ip -6 addr add <ipv6address>/<prefixlength> dev <interface> ip -6 addr add 2001:0db8:0:f101::1/64 dev eth0 ifconfig &

linux 給網卡添加ipv6、路由

網卡 inux 加ip pre window 默認 eth ref pan 添加IPV6地址 ip -6 addr add <ipv6address>/<prefixlength> dev <interface> ip -6 add

Linuxio磁碟排程策略及配置

http://www.linuxidc.com/Linux/2011-06/37674.htm I/O 排程演算法再各個程序競爭磁碟I/O的時候擔當了裁判的角色。他要求請求的次序和時機做最優化的處理,以求得儘可能最好的整體I/O效能。 在linux下面列出4種排程演算

Linux路由策略路由

1、 Linux路由的配置 IP Route    Linux最多可以支援255張路由表,其中有3張表是內建的:   表255 本地路由表(Local table)本地介面地址,廣播地址,已及NA

Linux 雙線策略路由的三種實現方式總結+埠對映

網路環境 伺服器(閘道器):    eth0 為LAN口,IP為 LAN_IP = 192.168.0.1    eth1 為第一個WAN口,接電信線路,IP為 CTC_IP,閘道器為 CTC_GW    eth2 為第二個WAN口,接網通線路,IP為 CNC_IP,閘道器為 CNC_GW 內網網站   

使用Linux 策略路由配置多網絡卡路由

【問題場景】        專案中遇到一個路由配置問題,一臺Linux使用多網絡卡,每個網絡卡配置在不同的網路平面,比如兩個網絡卡,網絡卡1連線內網閘道器,網絡卡2連線外網閘道器,系統的預設路由為網絡卡1連線的內網閘道器。現在上層應用想通過網絡卡2登入到一個外網系統。外網只

linuxppp0和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的IPv6地址、路由以及隧道配置

    如今,幾乎所有的主流作業系統、嵌入式操作提供系統都提供了對IPv6協議棧的支援,在windows XP下面,使用ipv6 install命令便可以啟動IPv6協議棧,在預設安裝的linux下,利用modprobe ipv6便可以以模組的方式載入IPv6協議棧。本篇僅介