linux route命令的使用詳解 添加永久靜態路由 tracert traceroute

linux route命令的使用詳解 添加永久靜態路由  tracert  traceroute

 

route -n    Linux
route  print  Windows

traceroute  -n Linux
tracert  -d  Windowshtml

 

--http://www.cnblogs.com/snake-hand/p/3143041.htmllinux

天天一個linux命令(53):route命令windows

--http://www.cnblogs.com/peida/archive/2013/03/05/2943698.htmlcentos

--加路由範例

--Linux
# route add -net 192.168.0.0 netmask 255.255.255.0  gw 192.168.0.1 
或者
# route add -net 192.168.0.0/24 gw 192.168.0.1 

 

 

 

 

route命令用於顯示和操做IP路由表。要實現兩個不一樣的子網之間的通訊,須要一臺鏈接兩個網絡的路由器,或者同時位於兩個網絡的網關來實現。在Linux系統中,設置路由一般是 爲了解決如下問題:該Linux系統在一個局域網中,局域網中有一個網關,可以讓機器訪問Internet,那麼就須要將這臺機器的IP地址設置爲 Linux機器的默認路由。要注意的是,直接在命令行下執行route命令來添加路由,不會永久保存,當網卡重啓或者機器重啓以後,該路由就失效了;要想永久保存,有以下方法:緩存

 

1.在/etc/rc.local裏添加
2.在/etc/sysconfig/network裏添加到末尾
3./etc/sysconfig/static-router :
any net x.x.x.x/24 gw y.y.y.y服務器


格式:route 
格式:/sbin/route 
用於打印路由表(display the current routing table)。網絡

在非root用戶使用時須要使用完整路徑執行route命令。運維

 

命令參數

[root@linux ~]# route [-nee]
[root@linux ~]# route add [-net|-host] [網域或主機] netmask [mask] [gw|dev]
[root@linux ~]# route del [-net|-host] [網域或主機] netmask [mask] [gw|dev]
觀察的參數:
   -n  :不要使用通信協定或主機名稱,直接使用 IP 或 port number;
   -ee :使用更詳細的資訊來顯示
增長 (add) 與刪除 (del) 路由的相關參數:
   -net    :表示後面接的路由爲一個網域;
   -host   :表示後面接的爲鏈接到單部主機的路由;
   netmask :與網域有關,能夠設定 netmask 決定網域的大小;
   gw      :gateway 的簡寫,後續接的是 IP 的數值喔,與 dev 不一樣;
   dev     :若是隻是要指定由那一塊網路卡連線出去,則使用這個設定,後面接 eth0 等ssh

 

格式:route -n
格式:/sbin/route -n
用於打印路由表,加上-n參數就是在輸出的信息中不打印主機名而直接打印ip地址。

格式:route add default gw {IP-ADDRESS} {INTERFACE-NAME}
用於設置默認路由,其中,
參數{IP-ADDRESS): 用於指定路由器(網關)的IP地址;
參數{INTERFACE-NAME}: 用於指定接口名稱,如eth0。使用/sbin/ifconfig -a能夠顯示全部接口信息。

例:route add default gw mango

格式:route add -net {NETWORK-ADDRESS} netmask {NETMASK} dev {INTERFACE-NAME}
添加到指定網絡的路由規則,其中
參數{NETWORK-ADDRESS}: 用於指定網絡地址
參數{NETMASK}: 用於指定子網掩碼
參數{INTERFACE-NAME}: 用於指定接口名稱,如eth0。

例1:route add -net 192.56.76.0 netmask 255.255.255.0 dev eth0
例2:route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0

格式:route add -net {NETWORK-ADDRESS} netmask {NETMASK} reject
設置到指定網絡爲不可達,避免在鏈接到這個網絡的地址時程序過長時間的等待,直接就知道該網絡不可達。

例:route add -net 10.0.0.0 netmask 255.0.0.0 reject

格式:route del -net {NETWORK-ADDRESS} netmask {NETMASK} dev {INTERFACE-NAME}
格式:route del -net {NETWORK-ADDRESS} netmask {NETMASK} reject
用於刪除路由設置。參數指定的方式與route add類似。測試

 

 

 

 

範例一

單純的觀察路由狀態


[root@linux ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.10.0    0.0.0.0         255.255.255.0   U     0      0        0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U     0      0        0 eth0
0.0.0.0         192.168.10.30   0.0.0.0         UG    0      0        0 eth0
[root@linux ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.10.0    *               255.255.255.0   U     0      0        0 eth0
169.254.0.0     *               255.255.0.0     U     0      0        0 eth0
default         server.cluster     0.0.0.0         UG    0      0        0 eth0

 

此外,觀察一下上面的路由排列順序喔,依序是由小網域(192.168.10.0/24 是 Class C),逐漸到大網域(169.254.0.0/16 Class B) 最後則是預設路由 (0.0.0.0/0.0.0.0)。而後當咱們要判斷某個網路封包應該如何傳送的時候,該封包會經由這個路由的過程來判斷喔!舉例來講,我上頭僅有三個路由,若我有一個傳往 192.168.10.20 的封包要傳遞,那首先會找 192.168.10.0/24 這個網域的路由,找到了!因此直接由 eth0 傳送出去;若是是傳送到 Yahoo 的主機呢? Yahoo 的主機 IP 是 202.43.195.52,我經過判斷 

1)不是 192.168.10.0/24,
      2)不是 169.254.0.0/16 結果到達 

3)0/0  時, OK !傳出去了,透過  eth0  將封包傳給  192.168.10.30 那部  gateway  主機啊!因此說,路由是有順序的。所以當你重複設定多個一樣的路由時,例如在你的主機上的兩張網路卡設定爲相同網域的  IP  時,會出現什麼狀況?會出現以下的狀況: 
Kernel  IP  routing  table 
Destination          Gateway                  Genmask                  Flags  Metric  Ref        Use  Iface 
192.168.10.0        0.0.0.0                  255.255.255.0      U          0            0                0  eth0 
192.168.10.0        0.0.0.0                  255.255.255.0      U          0            0                0  eth1 
也就是說,因爲路由是依照順序來排列與傳送的,因此不論封包是由那個介面  (eth0, eth1)  所接收,都會由上述的  eth0  傳送出去,因此,在一部主機上面設定兩個相同網域的  IP  自己沒有什麼意義!有點畫蛇添足就是了。除非是相似虛擬主機 (Xen, VMware  等軟體 )  所架設的多主機時,纔會有這個必要~

 

範例二

[root@linux ~]# route del -net 169.254.0.0 netmask 255.255.0.0 dev eth0
# 上面這個動做能夠刪除掉 169.254.0.0/16 這個網域!
# 請注意,在刪除的時候,須要將路由表上面出現的資訊都寫入
# 包括  netmask , dev 等等參數喔!注意注意
[root@linux ~]# route add -net 192.168.100.0 netmask 255.255.255.0 dev eth0
# 透過 route add 來增長一個路由!請注意,這個路由必需要可以與你互通。


# 舉例來講,若是我下達底下的指令就會顯示錯誤:
 route add -net 192.168.200.0 netmask 255.255.255.0 gw 192.168.200.254
# 由於個人環境內僅有 192.168.10.100 這個 IP ,因此不能與 192.168.200.254這個網段直接使用 MAC 互通!這樣說,能夠理解喔!?
[root@linux ~]# route add default gw 192.168.10.30
# 增長預設路由的方法!請注意,只要有一個預設路由就夠了喔!
# 在這個地方若是您隨便設定後,記得使用底下的指令從新設定你的網路
  /etc/init.d/network restart
     若是是要進行路由的刪除與增長,那就得要參考上面的例子了,其實,使用 man route 裏面的資料就很豐富了!仔細查閱一下囉!你只要記得,當出現『SIOCADDRT: Network is unreachable』這個錯誤時,確定是因爲 gw 後面接的 IP 沒法直接與您的網域溝通 (Gateway 並不在你的網域內)。

 

 

WINDOWS下的route命令

 

簡單的的操做以下,

查看路由狀態:routeprint

只查看ipv4(ipv6)路由狀態:route print-4(-6)

添加路由:route add 目的網絡 mask 子網掩碼 網關——重啓機器或網卡失效

route add 192.168.20.0 mask 255.255.255.0192.168.10.1

添加永久:route -p add 目的網絡 mask子網掩碼網關

route -p add 192.168.20.0 mask 255.255.255.0192.168.10.1

刪除路由:route delete 目的網絡 mask 子網掩碼

route delete 192.168.20.0 mask255.255.255.0

 


GZ-IT-李建華  10:28:12 --在香港110上執行 香港110的網卡地址 :192.168.1.110

route add -p 192.168.2.0 mask 255.255.255.0 192.168.1.20

GZ-IT-李建華  11:04:28  --在深圳5上執行 深圳5的網卡地址:192.168.2.5

route add -p 192.168.1.0 mask 255.255.255.0 192.168.2.21

 

route ?

操做網絡路由表。

ROUTE [-f] [-p] [-4|-6] command [destination]                   [MASK netmask]  [gateway] [METRIC metric]  [IF interface]

  -f           清除全部網關項的路由表。若是與某個                命令結合使用,在運行該命令前,                應清除路由表。

  -p           與 ADD 命令結合使用時,將路由設置爲                在系統引導期間保持不變。默認狀況下,從新啓動系統時,                不保存路由。忽略全部其餘命令,                這始終會影響相應的永久路由。Windows 95                不支持此選項。

  -4           強制使用 IPv4。

  -6           強制使用 IPv6。

  command      其中之一:                  PRINT     打印路由                  ADD       添加路由                  DELETE    刪除路由                  CHANGE    修改現有路由   destination  指定主機。   MASK         指定下一個參數爲「網絡掩碼」值。   netmask      指定此路由項的子網掩碼值。                若是未指定,其默認設置爲 255.255.255.255。   gateway      指定網關。   interface    指定路由的接口號碼。   METRIC       指定躍點數,例如目標的成本。

------------------------------ route --help Usage: route [-nNvee] [-FC] [<AF>]           List kernel routing tables        route [-v] [-FC] {add|del|flush} ...  Modify routing table for AF.

       route {-h|--help} [<AF>]              Detailed usage syntax for specified AF.        route {-V|--version}                  Display version/author and exit.

        -v, --verbose            be verbose         -n, --numeric            don't resolve names         -e, --extend             display other/more information         -F, --fib                display Forwarding Information Base (default)         -C, --cache              display routing cache instead of FIB


  樺仔  23:17:18
什麼意思?????
舒頁  23:17:47
1.33有這個路由麼?到虛擬機
還有就是那個eth1的網關也很重要。
他須要有兩邊的路由
樺仔  23:19:09
什麼意思
什麼意思



舒頁  23:20:03
額。
樺仔  23:20:08
說話啊
舒頁  23:20:14
我關機了,,手機不行,
我能聽到你,
樺仔  23:20:32

樺仔  23:21:03
1.33有這個路由麼?到虛擬機
還有就是那個eth1的網關也很重要。
他須要有兩邊的路由


您發送了一個窗口抖動。
樺仔  23:21:15
快點啊
解釋完我就睡覺了

您發送了一個窗口抖動。
舒頁  23:22:01

虛擬機的網關是多少?
2.1?
樺仔  23:23:08


舒頁  23:23:47
額。那你這個無法通,
樺仔  23:24:11

爲什麼!
舒頁  23:24:20
虛擬機那個網卡是0.1的,他不知道。
樺仔  23:24:36
添加路由不是爲了兩個不一樣網段的主機通訊嗎
舒頁  23:24:48
回來也要有路由,
樺仔  23:25:08
虛擬機那個網卡是0.1的,他真實機不知道?
舒頁  23:25:18
如今選的是橋接?
樺仔  23:25:25
你的意思是 我應該在真實機也要route add?
舒頁  23:25:46
真實機配置看看。
樺仔  23:25:48

舒頁  23:26:08
0.1是路由器?
樺仔  23:26:16

是的
舒頁  23:26:47
要在路由器上加一條到1.33的路由,
樺仔  23:27:26
我如今拋開路由器
我將網線拔了
只有真實機跟虛擬機
怎麼把真實機跟虛擬機通訊
網段不一樣
舒頁  23:28:11
拔了網卡不滅了嗎?
樺仔  23:28:42
也是
舒頁  23:28:40
你用兩個虛擬機嘛。
樺仔  23:28:51
兩個虛擬機怎麼搞
舒頁  23:28:50
都用橋接
樺仔  23:29:03
兩個虛擬機都安裝centos?
舒頁  23:29:17
不陪路由相關的ip段
--1--配1段
--2--配2段
樺仔  23:30:00
而後呢
不寫這個嗎
舒頁  23:30:14
雙方都要路由指向對方
樺仔  23:30:16

舒頁  23:30:30
不寫,註釋
有網關的就須要網關去轉發。
網關要有2個段的路由也能夠。
舒頁  23:31:49
有空能夠看下思科
華爲也能夠,
樺仔  23:32:51
A機器ip 192.168.1.12
B機器ip 192.168.2.12


A機器
route add -net 192.168.1.0  netmask 255.255.255.0  192.168.2.12

B機器
route add -net 192.168.2.0  netmask 255.255.255.0  192.168.1.12
這樣嗎
舒頁  23:33:23
錯了,
樺仔  23:33:29
????、
舒頁  23:33:38
出接口
不是對方ip
是本身的接口
舒頁  23:34:56
這個問題用pt思科模擬器來講比較好,
樺仔  23:34:58
A機器ip 192.168.1.12
B機器ip 192.168.2.12


A機器
route add -net 192.168.2.0  netmask 255.255.255.0  192.168.1.12 dev eth0

B機器
route add -net 192.168.1.0  netmask 255.255.255.0  192.168.2.12 dev eth0
舒頁  23:35:25
255.255.255.0後面我記得不用ip吧?
跟出接口,或者出接口的ip吧。
樺仔  23:37:23

舒頁  23:38:03
對啊,
樺仔  23:38:22
A機器ip 192.168.1.12
B機器ip 192.168.2.12


A機器
route add -net 192.168.2.0  netmask 255.255.255.0  dev eth0

B機器
route add -net 192.168.1.0  netmask 255.255.255.0   dev eth0
可是不知道對方的ip
舒頁  23:38:54
嗯,
不須要知道
1.0/24   2.0/24包含在內
樺仔  23:39:56

要寫的
舒頁  23:40:57
不用吧。指定了出接口還要ip?
樺仔  23:42:17

我看見同事是這樣寫的
舒頁  23:42:43
不用
你都沒網關,要ip搞毛
樺仔  23:43:32

A機器
route add -net 192.168.2.0  netmask 255.255.255.0  dev eth0

B機器
route add -net 192.168.1.0  netmask 255.255.255.0   dev eth0
那a機器怎麼找到b機器?
舒頁  23:44:50
。。。往B機器網段的數據包都是0口出去
樺仔  23:45:49
出去以後
怎麼找到192.168.2.12這臺機
舒頁  23:46:35
越說越長了,
舒頁  23:48:03
會廣播
廣播以後就知道了呀,
樺仔  23:50:13
明天你試一下能夠不
在公司
舒頁  23:50:19
好啊,
你下個pt
很好模擬的,
都不用虛擬機。
思科模擬器

 

在ifcfg-eth0裏不寫網關地址,讓route路由表路由,使用route add 添加路由規則


 仔  10:39:20


您發送了一個窗口抖動。
舒頁  10:45:42




 這是linux 都沒有配置網管 指定了出口
舒頁  10:47:33
 



舒頁  10:48:44
  都是橋接沒有配置網關  。  都是虛擬機。
樺仔  10:50:20
Windows和Linux都在虛擬機裏面?
route add的時候都沒有指定網關?
舒頁  10:50:33

windows 須要指定 本機出接口ip   若是不指定沒法配置靜態路由。
  亮哥的機器。。
樺仔  10:52:50
就是說
linux
route add -net 192.168.100.0 netmask 255.255.255.0 dev eth0
windows
route add -p 192.168.200.0 netmask 255.255.255.0 192.168.100.22 
這樣嗎

您發送了一個窗口抖動。
舒頁  10:53:10
嗯  
route add  192.168.200.0 mask 255.255.255.0 192.168.100.22  if 出接口
。。。windows 是這個命令。。。


樺仔  10:54:49
出接口其實至關於Linux 的dev eth0
舒頁  10:55:00

dev eth0  這個也是表示出接口的
樺仔  10:56:16
linux
route add -net 192.168.100.0 netmask 255.255.255.0 dev eth0
windows
route add -p 192.168.200.0 netmask 255.255.255.0 192.168.100.22   IF 2
舒頁  10:56:57

windows 沒有 -p
樺仔  10:58:55
WINDOWS 加
表示永久路由 -p
舒頁  10:59:22
   好把, 
樺仔  11:00:40
Linux要寫入static-route文件才行,不然重啓服務器
路由會失效
舒頁  11:00:59
,我只是測試,生產沒用。。。
生產確定要考慮的-
樺仔  11:09:01

這裏網卡填什麼
舒頁  11:09:15

樺仔  11:09:17


舒頁  11:09:39
route print 
樺仔  11:09:41
Windows的ip和Linux的ip你都看到了
舒頁  11:09:41
能看到
   那個windows 不是橋接拔
  錯了
是本地ip出口
舒頁  11:10:46
就是說能夠不用跟網絡接口 有ip就能夠了
樺仔  11:10:49

舒頁  11:11:10
往上
命令下面截圖出來
樺仔  11:11:46

Windows
route add -p 192.168.1.0 netmask 255.255.255.0  192.168.1.2
這樣?

舒頁  11:12:12
嗯,應該也能夠
樺仔  11:12:45

舒頁  11:12:51
  這裏的參數就是IF 後面接的參數  
mask
 不是netmask
樺仔  11:21:45
剛纔問了同事
實際上是由於這個

若是是真實環境,兩個機房,實際上是不能通的
舒頁  11:22:38
兩個機房。是不能通的呀, 要在一個交換機下面
兩個機房若是有專線, 也是能夠得。
樺仔  11:23:56
其實仍是須要兩個網卡,鏈接兩個網段
舒頁  11:24:03

誰說要兩個網卡。 擦。
樺仔  11:25:59
好吧,聽你的
舒頁  11:27:09
兩個機房, -專線接入-根本就不要。
就是從一個機房拉線到另外一個機房。 不是說互聯網專線。
樺仔  11:28:45
你的意思是:我如今拉兩臺真實的電腦,不是虛擬機,兩個電腦直連網線,就能夠了?
舒頁  11:28:55
 我能說新一代有臺機就是那麼幹的麼。。

樺仔  11:29:37


舒總威武
舒頁  11:30:40

我是渣渣。。仍是樺總87...
Windows  192.168.66.157
route add -p 192.168.1.0 mask 255.255.255.0  192.168.1.2 IF 12

網卡接口編號經過route print查看
Windows的route add必定要寫網關
IF=dev


Linux  192.168.1.2
route add -net 192.168.66.0 netmask 255.255.255.0  dev eth0

 


在Linux裏,在添加路由規則的時候若是沒有那個網卡設備,就會報錯
SIOCADDRT:XXX
 

Linux添加永久靜態路由
 

實際上route命令就是控制路由器的優先級,優先級以下

直連(兩個機器經過一根網線直接鏈接)-》靜態路由(修改路由表)-》動態路由

直連我就不敘述了,一根網線只有一條路徑,route命令控制的是靜態路由修改機器的路由表

實現Windows和Linux主機之間不一樣網段通訊

 
你們知道不一樣網段的兩臺機器是不能通訊的,其實咱們能夠經過路由規則的方法讓兩臺機器通訊
若是兩臺機器都是真實機,咱們只須要使用直連線,中間不通過任何交換機路由器就能夠通訊
若是兩臺真實機都連着交換機,那麼就須要多買一個網卡(兩臺機器雙網卡),一個網卡連交換機,一個網卡直接鏈接
示意圖


圖中兩個機器都只有一個網卡,經過網線直接相連

而後在Windows和Linux各自添加一條路由規則

Windows  192.168.1.100
route add -p 192.168.0.0 mask 255.255.255.0  192.168.0.106 IF 12   //Windows添加

 



在cmd下執行上面命令
IF:網卡接口編號,能夠經過route print查看
-p :表示添加永久路由


Linux  192.168.0.106
route add -net 192.168.1.0 netmask 255.255.255.0  dev eth0  //Linux添加

 




dev:爲網卡設備,這裏是 eth0

添加完畢以後,Windows和Linux均可以互相ping通

上面的命令,Windows添加的是永久路由,而Linux只是暫時路由,重啓機器或重啓網絡服務,路由規則就會消失
這時候須要在Linux添加永久路由

在/etc/sysconfig/  路徑下新建一個static-routes 文件
添加一行
any net 192.168.1.0/24  dev eth0
# cat /etc/sysconfig/static-routes 
any net 192.168.1.0/24 dev eth0

 



而後重啓網絡服務:service network restart


這時候,不管在Linux裏重啓機器或重啓網絡服務,路由規則都不會消失虛擬機跟真實機的作法都是同樣的,並無差別
這樣,即便虛擬機跟真實機的網段不同,咱們照樣能夠ssh咱們的Linux虛擬機
 
 
原理
centos7系統管理和運維實戰  P87
直連路由(同一個局域網內)-》靜態路由(修改下一跳地址)-》動態路由(OSPF,RIP,BGP,IGRP協議)

接口IP和直連路由 P87
不管使用哪一種方式爲網絡接口配置ip地址,只要網絡接口接入某個子網,路由表都會當即爲子網添加相應的直連路由
可使用route -n 命令查看路由表驗證

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
169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0
0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0

命令的第一條就是和子網192.168.1.0的直連路由,這是由接口eth0的ip配置決定的
若是eth0的ip地址發生變化或有新的網卡擁有了ip地址,路由表中的直連路由也會發生變化

route命令還能夠用於添加默認路由(一般稱爲默認網關),但更可能是用於添加靜態路由

同一個局域網內,有兩個不一樣的網段的主機,兩個不一樣網段主機通訊只須要在主機上修改主機上的路由表便可,不須要修改硬件防火牆,由於內網通訊不涉及到硬件防火牆
網段1:192.168.1.x
網段2:192.168.0.x

Linux 192.168.0.106
route add -net 192.168.1.0 netmask 255.255.255.0 dev eth0 //Linux添加


Windows 192.168.1.100
route add -p 192.168.0.0 mask 255.255.255.0 192.168.0.106 IF 12 //Windows添加

 

 

附:在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 (永久開啓) 

 


若是在rc.local中添加路由會形成NFS沒法自動掛載問題,因此使用static-routes的方法是最好的。不管重啓系統和service network restart 都會生效 
按照linux啓動的順序,rc.local裏面的內容是在linux全部服務都啓動完畢,最後才被執行的,也就是說,這裏面的內容是在netfs(NFS)以後才被執行的,

那也就是說在netfs(NFS)啓動的時候,服務器上的靜態路由是沒有被添加的,因此netfs(NFS)掛載不能成功。 
static-routes文件又是什麼呢,這個是network腳本執行時調用的一個文件,這個文件的放置在/etc/sysconfig目錄下,在network腳本中的位置是

/etc/init.d/network:
    159         # Add non interface-specific static-routes.
    160         if [ -f /etc/sysconfig/static-routes ]; then
    161            grep "^any" /etc/sysconfig/static-routes | while read ignore args ; do
    162               /sbin/route add -$args
    163            done
    164         fi

 

 

 

route命令輸出的路由表字段含義以下:
Destination :目標網絡號或目標主機ip地址,default表示這是一條默認路由
Gateway 網關: 網關地址,即下一跳地址,其中0.0.0.0或"*"表示主機和該子網直接相連,無須下一跳地址(直連路由,在同一個局域網)
Genmask 網絡掩碼:子網對應的子網掩碼
Metric 距離、跳數:這個值通常存在有多條到目標網絡的路由時才起做用
Ref :路由條目引用的次數
Use :路由條目被路由軟件查找的次數
Iface :到達目標網絡使用的本地接口

 

Flags:總共有多個旗標,表明的意義以下:
U (route is up):當前路由處於活動狀態
H (target is a host):路由條目的目標是主機而不是子網
G (use gateway):指向默認網關的路由
R (reinstate route for dynamic routing):恢復動態路由產生的路由
D (dynamically installed by daemon or redirect):由後臺程序動態產生的
M (modified from routing daemon or redirect):這個條目通過了後臺程序修改
! (reject route):拒絕路由
C 緩存的路由條目


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
169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0
0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0

第二條和第二條
當前有兩個子網:192.168.1.x和169.254.x.x
網關都是0.0.0.0,表示這兩個子網在同一個局域網,直連路由

第三條
Destination是0.0.0.0 表示跟第二條和第二條在同一個內網,網關是192.168.1.1

第一,第二,第三條的Iface都是eth0,表示網關,兩個子網都用eth0網卡作溝通

 

 

 

route添加路由經常使用命令
添加和刪除默認網關,mango-gw是網卡名,mango-gw網卡必定要跟網關也就是硬件防火牆直連, 172.16.45.1是網關ip
route add default gw mango-gw
route del default gw mango-gw
route add default gw 172.16.45.1
route del default gw 172.16.45.1


添加和刪除到網絡的路由
route add -net 192.168.2.0 netmask 255.255.255.0 gw mango-gw
route add -net 192.168.2.0/24 gw mango-gw
route add -net 192.168.2.0 netmask 255.255.255.0 gw 172.16.45.1
route add -net 192.168.2.0/24 gw 172.16.45.1


route del -net 192.168.2.0/24


添加和刪除到主機的路由
route add -host 192.168.2.80 gw mango-gw
route add -host 192.168.2.80 gw 172.16.45.1


route del -host 192.168.2.80

 

深圳機房有兩條線路到香港機房,Linux防火牆裏面用crontab調用一個腳本對線路一ping 100個包 丟包嚴重,就route命令改內核路由表作線路切換

不改內核路由表,默認走機房給你的公網IP,子網掩碼,網關,路線:內網機器-》Linux防火牆(機房給你的公網ip)-》機房給你的網關

 


hyper-v不一樣網段之間虛擬機通訊

同一個hyper-v母機下面5臺虛擬機,不一樣網段,經過修改直連路由ping通
搭建alwayson測試環境,5臺hyper-v虛擬機
關閉全部虛擬機的防火牆
同一個母機下面5臺虛擬機
3臺機器網段是192.168.6.x
2臺機器網段是192.168.7.x

刪除路由
route delete  192.168.6.0

我在每臺機器添加網關
而後router那臺機器添加多網卡 設置爲網關ip  微軟有個功能是軟路由的
添加好功能就沒問題了

 

 

 

f

相關文章
相關標籤/搜索