Linux route新增靜態路由

2021-08-14 23:30:36 字數 2835 閱讀 6809

一:使用 route 命令新增 

使用route 命令新增的路由,機器重啟或者網絡卡重啟後路由就失效了,方法: 

//新增到主機的路由

# route add –host 192.168.1.11 dev eth0

# route add –host 192.168.1.12 gw 192.168.1.1

//新增到網路的路由

# route add –net 192.168.1.11  netmask 255.255.255.0 eth0

# route add –net 192.168.1.11 netmask 255.255.255.0 gw 192.168.1.1

# route add –net 192.168.1.0/24 eth1

//新增預設閘道器

# route add default gw 192.168.2.1
//刪除路由

# route del –host 192.168.1.11 dev eth0
二:在linux下設定永久路由的方法: 

1.在/etc/rc.local裡新增 

方法: 

route add -net 192.168.3.0/24 dev eth0 

route add -net 192.168.2.0/24 gw 192.168.2.254

2.在/etc/sysconfig/network裡新增到末尾 

方法:gateway=gw-ip 或者 gateway=gw-dev

3./etc/sysconfig/static-routes : (沒有static-routes的話就手動建立乙個這樣的檔案) 

any net 192.168.3.0/24 gw 192.168.3.254 

any net 10.250.228.128 netmask 255.255.255.192 gw 10.250.228.129

4.開啟 ip **:

# echo "1" >/proc/sys/net/ipv4/ip_forward (臨時)

# vi /etc/sysctl.conf --> net.ipv4.ip_forward=1 (永久開啟)

這裡並沒有錯誤的地方,只不過之前沒有接觸對這些引數沒什麼想法,這次正好研究了下,大概了解了下沒個引數的意思。 

首先從最簡單的是route add方法: 

route add這個是新增路由的命令,這個沒什麼好說的,然後是後面的-host和net引數,根據緊跟引數後面的資訊可以發現host指的是新增乙個主機到路由中,net是新增乙個網段到路由中。在後面的引數是dev和gw,字面理解加上後面緊跟的值判斷,dev表示這個host或者這段net走的是那個網口,gw是gateway,自然是通過哪個閘道器了。對這裡為何指定網口或者指定閘道器都行呢,我的認識是這樣的,網口上配置有閘道器的資訊,指定的網口其實最終還是去讀取這個網口對應的閘道器資訊,等效於指定gw引數。不過指定網口一般是由於有多個網路環境的情況,如果網口沒有指定閘道器,會去讀取預設的閘道器,所以這裡一般要求把網口的閘道器資訊配置上去,在linux下很多時候閘道器資訊並不是配置在網口的配置檔案,比如:/etc/sysconfig/network-scripts/ifcfg-eth0 檔案裡面,而是在/etc/sysconfig/network這裡面,所以在用dev引數的時候需要小心這點,盡可能通過指定gw的方式。 

為什麼會介紹到route add方法,因為後面會有用到。現在回到主題,關於static-routes的設定。網上一般的都是寫著: 

any net 192.168.3.0/24 gw 192.168.3.254 

設定的都是整個網段的,但如果是單個主機怎麼設定呢?同時從廠家那邊給了乙個指令碼是: 

eth0 x.x.x.x netmask 255.255.255.192 gw x.x.x.x 

看上去也很對的樣子,但是執行發現netstat -an裡面看不到新增的資訊,完全不行。 

然後我們在看下static-routes這個檔案的作用,根據網上的說法,static-routes其實在被network這個指令碼呼叫的,開啟這個指令碼: 

/etc/rc.d/init.d/network 

裡面有寫到:

# add non inte***ce-specific static-routes.
if [ -f /etc/sysconfig/static-routes ]; then 

grep 「^any」 /etc/sysconfig/static-routes | while read ignore args ; do 

/sbin/route add -ar

gsdo

nefi

netw

ork在

執行的時

候到st

atic

−rou

tes裡

面尋找a

ny開頭

的行,然

後執行/

sbin

/rou

tead

d−args 相當於手動執行了route add指令碼,那後面事情就簡單了,回到了手動執行的方式,根據前面的說明,正確的指令碼就是: 

any host 10.0.0.10 gw 192.168.1.1 

network執行的時候把any去掉,獲取後面的引數:host 10.0.0.10 gw 192.168.1.1 

然後執行route add -host 10.0.0.10 gw 192.168.1.1 

注意這裡host前面的-是network自帶的,不需要配置到static-routes檔案中。

windows下如何新增 刪除和修改靜態路由

route add 192.168.100.0 mask 255.255.255.248 192.168.1.1 metric 3 if 2新增一條路由記錄,所有到192.168.100.0 24網段的資料報,都通過2號 網絡卡 介面走192.168.1.1的閘道器,優先順序為3。route add...

ant mobile TabBar 元件新增路由

感覺 ant mobile 和 vant 相比要很不方便,很多功能需要我們自己去實現,團隊的重心應該都在 ant design 上,比如 tabbar 並沒有設定路由功能,本文闡述了如何在乙個使用了 react router 的 react 專案中合理的使用 antd mobile tabbar 功...

靜態路由新增

1.windows下新增靜態路由 route add 192.168.4.0 mask 255.255.255.0 192.168.4.2 以上是臨時的,如果新增永久的如下 route p add 10.10.0.0 mask 255.255.0.0 192.168.4.222 永久的會新增到登錄檔...