route命令.docx
《route命令.docx》由会员分享,可在线阅读,更多相关《route命令.docx(13页珍藏版)》请在冰豆网上搜索。
![route命令.docx](https://file1.bdocx.com/fileroot1/2023-1/22/42d61a77-0668-422a-a5fa-d43542d6068d/42d61a77-0668-422a-a5fa-d43542d6068d1.gif)
route命令
linuxroute命令使用
说明:
route命令是打印和操作ip路由表
描述:
route操作基于内核ip路由表,它的主要作用是创建一个静态路由让指定一个主机或者一个网络通过一个网络接口,如eth0。
当使用"add"或者"del"参数时,路由表被修改,如果没有参数,则显示路由表当前的内容。
参数说明:
add:
添加一条新路由。
del:
删除一条路由。
-net:
目标地址是一个网络。
-host:
目标地址是一个主机。
netmask:
当添加一个网络路由时,需要使用网络掩码。
gw:
路由数据包通过网关。
注意,你指定的网关必须能够达到。
metric:
设置路由跳数。
实例:
1、routeadd-net192.168.2.0netmask255.255.255.0deveth0
添加一条到达192.168.2.0网络的路由,指定网络掩码为255.255.255.0,数据包通过网络接口eth0。
2、routeadd-net192.57.66.0netmask255.255.255.0gw192.168.2.1
添加一条到达192.57.66.0网络的路由,指定网络掩码为255.255.255.0,数据包通过网关地址192.168.2.1。
3、routeadd-host192.57.66.200gw192.168.2.1
所有去往192.57.66.200主机的数据包发往网关地址192.168.2.1。
4、routeadddefaultgw192.168.1.1
添加一条默认网关,所有的数据包将被转发到192.168.1.1。
路由表内容说明:
查看路由
#route-n
KernelIProutingtable
Destination Gateway Genmask FlagsMetricRef UseIface
192.57.66.200 192.168.1.1 255.255.255.255UGH 0 0 0eth0
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0eth0
0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0eth0
Destination:
目标网络或主机。
Gateway:
网关地址。
Genmask:
目标网络的网络掩码。
"255.255.255.255"表示一个主机。
"0.0.0.0"表示网关。
Flags:
标记。
U、路由被启用。
H、目标是一个主机
G、使用网关。
查看本机路由表信息:
route[inbi@debian~]#route
kernelIProutingtable
destinationGatewayGenmaskFlagsMetricRefUseIface
192.168.1.228*255.255.255.255UH000eth1
10.0.2.0*255.255.255.0U000eth0
default10.0.2.20.0.0.0UG000eth0
#直接输入route查看本机路由信息,其中default为默认路由,ethx是数据出去的接口。
添加路由表:
routeadd[inbi@debian~]#routeadd-net192.168.2.0netmask255.255.255.0gw192.168.1.228deveth1
[inbi@debian~]#routeadd-host10.0.2.222gw10.0.2.2deveth0
[inbi@debian~]#routeadddefaultgw192.168.1.228deveth1
[inbi@debian~]#route
kernelIProutingtable
destinationGatewayGenmaskFlagsMetricRefUseIface
10.0.2.22210.0.2.2255.255.255.255UGH000eth0
192.168.2.0*255.255.255.0UG000eth1
192.168.1.228*255.255.255.255UH000eth1
10.0.2.0*255.255.255.0U000eth0
default192.168.1.2280.0.0.0UG000eth1
default10.0.2.20.0.0.0UG000eth0
#第一条命令为指定一条网段的网关。
#第二条命令为指定一条主机的网关。
#第三条命令为增加一条默认的网关出口。
NOTE:
路由表是由上向下匹配的,如已匹配就不再匹配了。
删除路由表:
routedel[inbi@debian~]#routedel-net192.168.2.0netmask255.255.255.0gw192.168.1.228deveth1
[inbi@debian~]#routedel-host10.0.2.222gw10.0.2.2deveth0
[inbi@debian~]#routedeldefaultgw192.168.1.228deveth1
[inbi@debian~]#route
kernelIProutingtable
destinationGatewayGenmaskFlagsMetricRefUseIface
192.168.1.228*255.255.255.255UH000eth1
10.0.2.0*255.255.255.0U000eth0
default10.0.2.20.0.0.0UG000eth0
删除和增加一样哦,就是我Copy的,只是把add改为del了,呵呵!
Linux中Route命令了解
分类:
linux网络管理2008-11-1817:
352125人阅读评论(0)收藏举报
原贴:
在配置网络时,要为机器指定接收数据包时该包要经过的路径。
在Linux系统中,提供一个命令route,这个命令可以为ifconfig命令配置的网卡设置静态路由。
这种设置工作通常在/etc/rc.d/rc.inet1中引入,在系统引导时进行。
我们通过几个例子来说明如何使用route命令:
routeadd-net127.0.0.0
这个命令将向路由表中添加一个指定地址或者网络的路由。
注意此时网络为A类地址,掩码被设置为255.0.0.0,这个新添加的条目被连接到lo设备上。
routeadd-netxxx.xxx.xxx.xxxnetmask255.255.255.0deveth0
这个命令为IP地址为xxx.xxx.xxx.xxx的主机增加一个路由,它的网络掩码被设置为255.255.255.0。
routedel-netxxx.xxx.xxx.xxx
此命令将删除xxx.xxx.xxx.xxx这个网络的路由。
使用route命令还可以很方便地对整个网络的路由信息进行管理,其输出结果是网络的路由表。
如下所示:
[root@lee/root]#route
KernelIProutingtable
DestinationGatewayGenmaskFlagsMetricRefUseIface
10.10.8.224*255.255.255.255UH000eth0
10.10.8.0*255.255.255.0U000eth0
127.0.0.0*255.0.0.0U000lo
defaultdgc8.njupt.edu0.0.0.0UG000eth0
defaultdgc8.njupt.edu0.0.0.0UG100eth0
[root@lee/root]#
输出结果中各个字段的含义是:
·Destination表示路由的目标IP地址。
·Gateway表示网关使用的主机名或者是IP地址。
上面输出的"*"表示没有网关。
·Genmask表示路由的网络掩码。
·Flags是表示路由的标志。
可用的标志及其意义是:
U表示路由在启动,H表示target是一台主机,G表示使用网关,R表示对动态路由进行复位设置;D表示动态安装路由,M表示修改路由,!
表示拒绝路由。
·Metric表示路由的单位开销量。
·Ref表示依赖本路由现状的其它路由数目。
·Use表示路由表条目被使用的数目。
·Iface表示路由所发送的包的目的网络。
如果eth0为192.168.10.123/255.255.255.0,eth1为192.168.20.231/255.255.255.0,则命令格式如下:
#routeadd-net192.168.10.0netmask255.255.255.0deveth0
#routeadd-net192.168.20.0netmask255.255.255.0deveth1
上面的命令把发送给192.168.10.0网段的IP包交给eth0转发,把192.168.20.0网段的IP包交给eth1转发。
如果还有可能有发送给其他目的IP的包,那么你肯能希望设置一个“默认网关”:
#routeadddefaultgw192.168.10.1
上面的命令把所有发送给其他目的IP的包都转发给192.168.10.1,而如何转发给192.168.10.1这个地址的规则已经在刚才的第一条命令中定义了(从eth0转发)。
一般情况下,默认网关已经自动设置好了,不用重复设置。
可以用route命令加-n参数进行检查。
如果要删除某一条,命令格式为:
#routedel-net192.168.10.0netmask255.255.255.0
配置时的一种思路是把192.168.10.0网段路由至eth0,192.168.20.0网段路由至eth1,再设置默认路由。
另一种思路是,只指定其中一个,然后把默认的0.0.0.0路由至另一个。
其实效果一样,就是两种风格。
.linuxroute命令详解2007-01-0314:
33:
54|分类:
Linux|标签:
linux|字号大中小订阅.
Linuxroute命令详解
使用路由方式。
使用route命令。
--[if!
supportEmptyParas]-->
--[endif]-->
--Route命令的正确用法
使用Route命令行工具查看并编辑计算机的IP路由表。
Route命令和语法如下所示:
route[-f][-p][Command[Destination][maskNetmask][Gateway][metricMetric]][ifInterface]]
-f清除所有网关入口的路由表。
-p与add命令一起使用时使路由具有永久性。
Command指定您想运行的命令(Add/Change/Delete/Print)。
Destination指定该路由的网络目标。
maskNetmask指定与网络目标相关的网络掩码(也被称作子网掩码)。
Gateway指定网络目标定义的地址集和子网掩码可以到达的前进或下一跃点IP地址。
metricMetric为路由指定一个整数成本值标(从1至9999),当在路由表(与转发的数据包目标地址最匹配)的多个路由中进行选择时可以使用。
ifInterface为可以访问目标的接口指定接口索引。
若要获得一个接口列表和它们相应的接口索引,使用routeprint命令的显示功能。
可以使用十进制或十六进制值进行接口索引。
/?
在命令提示符处显示帮助。
示例
若要显示IP路由表的全部内容,请键入:
routeprint
若要显示以10.起始的IP路由表中的路由,请键入:
routeprint10.*
若要添加带有192.168.12.1默认网关地址的默认路由,请键入:
routeadd0.0.0.0mask0.0.0.0192.168.12.1
若要向带有255.255.0.0子网掩码和10.27.0.1下一跃点地址的10.41.0.0目标中添加一个路由,请键入:
routeadd10.41.0.0mask255.255.0.010.27.0.1
若要向带有255.255.0.0子网掩码和10.27.0.1下一跃点地址的10.41.0.0目标中添加一个永久路由,请键入:
route-padd10.41.0.0mask255.255.0.010.27.0.1
若要向带有255.255.0.0子网掩码、10.27.0.1下一跃点地址且其成本值标为7的10.41.0.0目标中添加一个路由,请键入:
routeadd10.41.0.0mask255.255.0.010.27.0.1metric7
若要向带有255.255.0.0子网掩码、10.27.0.1下一跃点地址且使用0x3接口索引的10.41.0.0目标中添加一个路由,请键入:
routeadd10.41.0.0mask255.255.0.010.27.0.1if0x3
若要删除到带有255.255.0.0子网掩码的10.41.0.0目标的路由,请键入:
routedelete10.41.0.0mask255.255.0.0
若要删除以10.起始的IP路由表中的所有路由,请键入:
routedelete10.*
若要将带有10.41.0.0目标和255.255.0.0子网掩码的下一跃点地址从10.27.0.1修改为10.27.0.25,请键入:
routechange10.41.0.0mask255.255.0.010.27.0.25
另:
[root@testroot]#route[-nee]
[root@testroot]#routeadd[-net|-host]目標主機或網域[netmask][gw|dev]
[root@testroot]#routedel[-net|-host]目標主機或網域[netmask][gw|dev]
參數說明:
-n:
列出的資訊以IP來顯示
-ee:
列出較長列的資訊
add:
增加路由資訊
del:
刪除一個路由資訊
-net:
增加一個『網域』的路由,例如CClass的網域!
-host:
增加到某個IP主機的路由!
netmask:
就是netmask呀!
gw:
這個是路由的通訊閘!
gw是以IP來建置的
dev:
這個是路由的通訊閘!
dev是以介面(internet)代號來建置的!
範例:
[root@testroot]#route<==看路由的資訊!
KernelIProutingtable
DestinationGatewayGenmaskFlagsMetricRefUseIface
140.116.141.253*255.255.255.255UH000ppp0
192.168.1.0*255.255.255.0U000eth0
127.0.0.0*255.0.0.0U000lo
default140.116.141.2530.0.0.0UG000ppp0
[root@testroot]#route-n<==以IP的方式來顯示路由!
KernelIProutingtable
DestinationGatewayGenmaskFlagsMetricRefUseIface
140.116.141.2530.0.0.0255.255.255.255UH000ppp0
192.168.1.00.0.0.0255.255.255.0U000eth0
127.0.0.00.0.0.0255.0.0.0U000lo
0.0.0.0140.116.141.2530.0.0.0UG000ppp0
注意到route,route-n這兩個範例喔!
使用-n與否會使domain是否進行查詢,
一般來說,我都喜歡加上-n的,因為不必去查詢正反解,顯示速度較快,
此外,defaultgateway就是0.0.0.0喔!
[root@testroot]#routeadd-net192.168.0.0netmask255.255.255.0deveth0
#新增一個路由規則!
[root@testroot]#routedel-net192.168.0.0netmask255.255.255.0deveth0
#刪除一個路由囉
[root@testroot]#routeadddefaultgw192.168.1.2
#增加一個defaultgateway呢!
注意一下,gw後面接的是IP,而dev後面接的則是裝置代號喔!
說明:
這個指令相當的有用!
尤其是新手們最容易犯錯的gateway設定錯誤的問題,都可以藉由這一個指令來檢查呢!
這個指令有兩個主要的用途:
顯示目前主機上面的路由資訊;
修改(增加或刪除)主機上面的路由表!
『可以建置router呦!
』
我們來談一談使用route時,顯示的內容意義:
Destination:
目標,可以是IP也可以是網域!
至於沒有規定到的,則是以default來表示!
以上面為例,當我的機器要去192.168.1.0的時候,則以上表的192.168.1.0那一行的設定為主,但如果我要去的時候,由於沒有規定到!
所以就要以default的資訊為主要的路由!
因此,我就會經由140.116.141.253這個gateway來傳送出去我的封包囉!
Gateway:
該目標要經由哪一個網關傳送?
就是這一個設定值啦!
Genmask:
就是該Destination的netmask囉!
例如140.116.141.253為255.255.255.255,因為他是一個host而不是一個network呀!
至於192.168.1.0就是255.255.255.0這個CClass囉!
那如果是default的話,就顯示0.0.0.0,也就是不論是哪裡,都出自這一個gateway就是了!
Flages:
旗標,有底下幾種Flage呢:
U(routeisup):
該路由已經啟動了;
H(targetisahost):
目標是一個主機(IP),例如上面範例中的140.116.141.253那一個;
G(usegateway):
用來作為gateway的設定;
R(reinstateroutefordynamicrouting):
使用動態路由時,恢復路由資訊的旗標;
D(dynamicallyinstalledbydaemonorredirect):
已經由服務或轉port功能設定為動態路由;
M(modifiedfromroutingdaemonorredirect):
路由已經被修改了;
!
(rejectroute):
這個路由將不會被接受(用來抵擋不安全的網域!
)
Iface:
該設定使用的網路介面為何?
好了,那麼如何增加或刪除路由呢!
就由上面的例子就可以知道啦!
很簡單的啦!
不過需要注意的是,單純有路由功能還不夠!
因為還需要有router的功能才行!
我們將在router那個章節再來持續談一談這個問題囉!
『註:
當您發現下達route的時候,顯示的速度很慢時,通常是您的路由資訊有一定的問題存在!
果真如此的話,請務必仔細的檢查一下設定,否則對於您的網路速度會有遲滯現象呦!
』
Linux系统中最常用的网络配置命令包括ifconfig、route,其中ifconfig用来查看和配置网络接口(通常是网卡)信息,包括网络接口设备的IP地址、掩码等;route用来管理Linux系统内核中的路由表,它最大的用途就是用来设定静态的路由表项,通常是在系统用ifconfig配置网络接口后,用它来设定主机或者一网段的IP地址应该通过什么接口发送等。
ifconfig
ifconfig的语法为:
ifconfig[-a][-V][-s][[]
]
[[-]broadcast[
]]
[netmask
]
[up|down]
其中interface为网卡名,address为IP地址,broadcast表示设置广播地址,其后的address为广播地址的IP,netmask表示设置子网掩码,其后的address为子网掩码的IP,up、down设置当前网卡的状态,up表示启用当前网卡,down表示关闭当前网卡。
Ifconfig的常用参数说明如下:
-a查看所有网卡状态
-V查看ifconfig命令的版本信息
-s查看统计信息
示例:
1)将第一块网卡的IP地址设置为192.168.0.1:
ifconfigeth0192.168.0.1(格式:
ifconfig网络设备名IP地址)
2)暂时关闭或启用网卡:
关闭第一块网卡:
ifconfigeth0down
启用第一块网卡ifconfigeth0up
3)