https://www.cnblogs.com/gaozhengwei/p/7098024.html Linux 基于策略的路由(Linux Policy Routing) Linux 有傳統(tǒng)的基于數(shù)據(jù)包目的地址的路由算法,和新的基于策略的路由算法 新算法優(yōu)點:支持多個路由表,支持按數(shù)據(jù)報屬性(源地址、目的地址、協(xié)議、端口、數(shù)據(jù)包大小、內(nèi)容等)選擇不同路由表 # 查看規(guī)則命令,后面可跟其它參數(shù),默認(rèn)為 show(list) 顯示全部 ip rule
系統(tǒng)默認(rèn)有3條記錄 0: from all lookup local 32766: from all lookup main 32767: from all lookup default 各部分解釋 xx: 第一列數(shù)字是優(yōu)先級,小的數(shù)字優(yōu)先級高 lookup [xxx] : 表示搜索xxx路由表,1-252之間的數(shù)字或名稱 中間部分內(nèi)容:如 from all, 這是規(guī)則 整行的意思就是,如果一個數(shù)據(jù)包符合規(guī)則(源地址、目的地址、協(xié)議、端口、數(shù)據(jù)包大小、內(nèi)容等),則使用指定路由表 # 系統(tǒng)最多支持255個路由表。文件 /etc/iproute2/rt_tables # 可以看到系統(tǒng)保留的表及對應(yīng)名稱,253:default 254:main 255:local # 可以自由添加自定義名稱 # 查看路由表命令,參數(shù)可用數(shù)字或名稱 ip route list table 101 ip route list table main ip route list cache
# 清除表或內(nèi)存緩存 ip route flush table 101 ip route flush cache # 示例
##清空一個路由表 ##添加一條路由 ##添加這個表的默認(rèn)路由 ##添加規(guī)則使用這個表,如果沒有指定優(yōu)先級,則使用比現(xiàn)在規(guī)則最小數(shù)字 ip route flush table 100 ip route add 192.168.1.0/24 dev eth0 src 192.168.1.240 table 100 ip route add default dev eth0 table 100 上面兩條命令可用一條替換: ip route add default via 192.168.1.0/24 dev eth0 src 192.168.1.240 table 100 ip rule add from 192.168.1.242 table 100 [pre 12345] # 示例2 (Linux 多個網(wǎng)卡使用相同網(wǎng)段的IP地址設(shè)置) ## Linux 系統(tǒng)帶4個網(wǎng)卡,連接同一交換機(jī),設(shè)置同一網(wǎng)段的IP, ## eth0-eth3 IP分別是 192.168.1.240-243 ## 默認(rèn)情況下 route -n 的結(jié)果是按 eth up 的順序決定的, ## IP 實際上都全部指向第一塊 UP 的網(wǎng)卡,可以在其它機(jī)器上 ping 這4個IP,使用 arp -a 查看到 ## 全部 IP 都關(guān)連到相同的 MAC 地址 ## 這樣的結(jié)果就是保留第一條網(wǎng)線,拔掉其它網(wǎng)線,其它機(jī)器還是能連通這4個IP ## 意味著4個網(wǎng)卡,設(shè)置了4個相同網(wǎng)段的IP,但是數(shù)據(jù)流全部通過第一個網(wǎng)卡傳輸
## 執(zhí)行以下命令 ip route flush table 100 ip route flush table 101 ip route flush table 102 ip route flush table 103 ip route add default dev eth0 table 100 ip route add default dev eth1 table 101 ip route add default dev eth2 table 102 ip route add default dev eth3 table 103 ip rule add from 192.168.1.240 table 100 ip rule add from 192.168.1.241 table 101 ip rule add from 192.168.1.242 table 102 ip rule add from 192.168.1.243 table 103 ip route flush cache ## 在其它機(jī)器上 ping 這4個IP ,使用 arp -a 查看到 ## IP 關(guān)連的 MAC 已經(jīng)不相同了。 ## 拔掉任意一條網(wǎng)線,其它機(jī)器就會連不上對應(yīng)的 IP ## 這就表示不同 IP 使用各自的網(wǎng)卡傳輸數(shù)據(jù)了。
|