个人开发历程知识库

关注C++/Java/C#技术, 致力于安防监控/移动应用/WEB方面开发
------------------------------------ 业精于勤,荒于嬉;行成于思,毁于随
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

[转载]route命令

Posted on 2009-05-16 17:02  peterzb  阅读(4356)  评论(0编辑  收藏  举报
Route
控制网络路由表。该命令只有在安装了 TCP/IP 协议后才可以使用。

route [-f] [-p] [command [destination] [mask subnetmask] [gateway] [metric costmetric]]

参数

-f

清除所有网关入口的路由表。如果该参数与某个命令组合使用,路由表将在运行命令前清除。

-p

该参数与 add 命令一起使用时,将使路由在系统引导程序之间持久存在。默认情况下,系统重新启动时不保留路由。与 print 命令一起使用时,显示已注册的持久路由列表。忽略其他所有总是影响相应持久路由的命令。

command

指定下列的一个命令。

命令 目的
print 打印路由
add 添加路由
delete 删除路由
change 更改现存路由

destination

指定发送 command 的计算机。

mask subnetmask

指定与该路由条目关联的子网掩码。如果没有指定,将使用 255.255.255.255。

gateway

指定网关。

名为 Networks 的网络数据库文件和名为 Hosts 的计算机名数据库文件中均引用全部 destination 或 gateway 使用的符号名称。如果命令是 print 或 delete,目标和网关还可以使用通配符,也可以省略网关参数。

metric costmetric

指派整数跃点数(从 1 到 9999)在计算最快速、最可靠和(或)最便宜的路由时使用。
route命令范例
route print

  要显示 IP 路由表中以 10. 开始的路由,请键入:

  route print 10.*

  要添加默认网关地址为 192.168.12.1 的默认路由,请键入:

  route add 0.0.0.0 mask 0.0.0.0 192.168.12.1

  要添加目标为 10.41.0.0,子网掩码为 255.255.0.0,下一个跃点地址为 10.27.0.1 的路由,请键入:

  route add 10.41.0.0 mask 255.255.0.0 10.27.0.1

  要添加目标为 10.41.0.0,子网掩码为 255.255.0.0,下一个跃点地址为 10.27.0.1 的永久路由,请键入:

  route -p add 10.41.0.0 mask 255.255.0.0 10.27.0.1

  要添加目标为 10.41.0.0,子网掩码为 255.255.0.0,下一个跃点地址为 10.27.0.1,跃点数为 7 的路由,请键入:

  route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 metric 7

  要添加目标为 10.41.0.0,子网掩码为 255.255.0.0,下一个跃点地址为 10.27.0.1,接口索引为 0x3 的路由,请键入:

  route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 if 0x3

  要删除目标为 10.41.0.0,子网掩码为 255.255.0.0 的路由,请键入:

  route delete 10.41.0.0 mask 255.255.0.0

  要删除 IP 路由表中以 10. 开始的所有路由,请键入:

  route delete 10.*

  要将目标为 10.41.0.0,子网掩码为 255.255.0.0 的路由的下一个跃点地址由 10.27.0.1 更改为 10.27.0.25,请键入:

  route change 10.41.0.0 mask 255.255.0.0 10.27.0.25

 

route add 命令的使用

本机装有两张网卡分别是
第一块:
(I)192.168.77.40
(U)255.255.255.0
(D)192.167.77.254
(P)192.168.84.63
(A)192.168.84.64
第二块:
(I)60.190.64.196
(U)255.255.255.248
(D)60.190.64.193
(P)61.153.177.198
(A)61.153.177.197
我想把所有连接内网的数据都通过第一块网卡
外网数据都通过第二块网卡来实现.

应该怎么写静态路由呀.?/??求高手指点.

下面的我也是看得一知半解.
route add命令的主要作用是添加静态路由,通常的格式是:
route ADD 157.0.0.0 MASK 255.0.0.0 157.55.80.1 METRIC 3 IF 2
参数含义:^destination ^mask ^gateway metric^ ^interface

destination【网段地址】
mask【子网掩码】
gateway【网关地址】
metric 【路由跳数】
if【端口号】
一般情况下,不涉及本机地址,除非你要做测试。

其中:
可以省略【路由跳数】参数;
当通往该网关地址的路径唯一时,【端口号】参数可以省略。(因为在多端口的路由交换设备上,可能存在通往同一个IP地址的多条备份路径。)
mask 是关键字,不能省略。

route add 134.105.0.0 mask 255.255.0.0 134.105.64.1
意思是:所有需要发往134.105.0.0/16地址段的IP数据包,全部由134.105.64.1路径转发。

route add 134.105.0.0 mask 255.255.0.0 134.105.64.1
route add 134.105.128.0 mask 255.255.128.0 134.105.0.1
目标地址是134.105.128.1的IP包会优先选择第二条路由。

route add 192.168.0.0 mask 255.255.255.0 192.167.77.25


route add 0.0.0.0 60.190.64.193

解决双网卡机器同时访问内网和外网

  我的一台机器双网卡(不是服务器),现工作需要,一块需要上公网(外网),一块上公司内部数据网,要同时都访问,但现在有个问题,上外网(宽带拨号后)就上不了内网,上内网上不了外网(需断开外网),应该怎样配才能解决呢?我的系统及网络配置:操作系统是WIN2000,内网网卡ip:192.168.1.11,内网网关:192.168.1.254,外网网卡ip:自动获取,网关:无。

      为了以上问题,我查阅了网上很少有解决方法,唯一较好的方法是手动添加路由点,并且区分优先权,方法如下:
      前提是已拨号上网:运行cmd,至CMD窗口下运行以下命令:
      route delete 0.0.0.0 mask 0.0.0.0 192.168.1.254   (删除内网网关)
      route change 0.0.0.0 mask 0.0.0.0 220.184.16.118 metic 2    (改变默认外网网关优先权为2,220.184.16.118为外网分配的ip地址)
      route add 192.0.0.0 mask 255.0.0.0 192.168.1.254 metic 1     (添加内网路由点,且优先权设置为1)
      通过以上命令,确实能同时访问内外网了,但每次重起又会丢失,你可以做成BAT批命令文件,将外网ip做成参数输入,但这样还是麻烦:每次重起并拨号上网后需查询外网ip,再进入运行批命令文件。
      经过研究路由的原理,我找到了一劳永逸更简单的办法,首先介绍一下路由原理:双网卡机器一般内网网卡ip都设置了网关地址,而windows默认网关只能有一个,不上外网的情况下默认网关就是内网网关,拨号上网后默认网关自动改为外网分配的ip,即所有数据流都流向外网网卡ip,导致此时不能访问内网。用route print命令查看此时的路由情况不难发现地址0.0.0.0(可以把0看成通配符)开始的路由点有两个,一个是内网网关,一个是外网ip,而外网ip成了默认网关。因此本人有了以下思路:不用内网网关,将内网网关做成永久路由点且仅过滤内网网段(192开头的ip数据),而不改变外网的默认网关,这样根据优先权,访问内网的数据会从永久路由点走,其它数据从外网的默认网关走(路由表设置的特殊地址除外),从而达到目的。具体方法如下:
       到内网本地连接属性设置中记住网关ip地址并删除内网网关,运行CMD窗口,运行以下命令route -p add 192.0.0.0 mask 255.0.0.0 192.168.1.254(创建永久路由点),结束。这样未拨号上网时正常访问内网,拨号上网后能同时访问内外网。