目录:
1. 使用背景
2. route命令
2.1 打印路由信息
2.2 删除路由信息
2.3 添加路由信息
3. 应用实例
3.1 详解案例
3.2 内外网同时上网办法集锦
4、“路由添加失败,找不到元素”
1. 使用背景
需要接入两个网络,一个是部署环境所在内网环境,这个环境是上不了外网, 外网环境很可能是一个无线网络。如果两者都连接上,很可能导致有一方不能起作用,即外网或内网上不了,常常需要使用繁琐的“禁用网络连接”、“启用网络连接”的操作来进行内外网的切换,甚是麻烦。
为了解决这个问题,可以使用route命令来使得同时内外网都可用。
2. route命令
route命令是在本地 IP 路由表中显示和修改条目网络命令。
route命令的语法如下:
route [-f] [-p] [Command [Destination] [mask Netmask] [Gateway] [metric Metric]] [if Interface]]
route命令常用的命令如下:
1)route delete:删除路由;
2)route print:打印路由的Destination;
3)route add:添加路由;
4)route change:更改现存路由。
一般使用route delete、route add、route print这三条命令可解决路由的所有功能。
2.1 打印路由信息
打印路由信息使用命令:route print。
===========================================================================
Interface List
0x1 MS TCP Loopback interface
0x2 00 26 18 31 4f d1 Realtek RTL8168C(P)/8111C(P) PCI-E Gigabit Ether
net NIC - 数据包计划程序微型端口
0x50004 00 53 45 00 00 00 WAN (PPP/SLIP) Interface
===========================================================================
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 116.69.106.119 116.69.106.119 1
0.0.0.0 0.0.0.0 192.168.2.226 192.168.2.79 20
115.168.64.94 255.255.255.255 116.69.106.119 116.69.106.119 1
116.69.106.119 255.255.255.255 127.0.0.1 127.0.0.1 50
116.255.255.255 255.255.255.255 116.69.106.119 116.69.106.119 50
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
192.168.2.0 255.255.255.0 192.168.2.79 192.168.2.79 20
192.168.2.79 255.255.255.255 127.0.0.1 127.0.0.1 20
192.168.2.255 255.255.255.255 192.168.2.79 192.168.2.79 20
224.0.0.0 240.0.0.0 192.168.2.79 192.168.2.79 20
224.0.0.0 240.0.0.0 116.69.106.119 116.69.106.119 1
255.255.255.255 255.255.255.255 116.69.106.119 116.69.106.119 1
255.255.255.255 255.255.255.255 192.168.2.79 192.168.2.79 1
Default Gateway: 116.69.106.119
===========================================================================
Persistent Routes:
None
第一列是网络目的地址。列出了路由器连接的所有的网段。
第二行网络掩码列提供这个网段本身的子网掩码,而不是连接到这个网段的网卡的子网掩码。这基本上能够让路由器确定目的网络的地址类。
第三列是网关。一旦路由器确定它要把这个数据包转发到哪一个目的网络,路由器就要查看网关列表。网关表告诉路由器这个数据包应该转发到哪一个IP地址才能达到目的网络。
第四列接口列告诉路由器哪一个网卡连接到了合适的目的网络。从技术上说,接口列仅告诉路由器分配给网卡的IP地址。那个网卡把路由器连接到目的网络。然而,路由器很聪明,知道这个地址绑定到哪一个物理网卡。
第五列是测量。测量本身是一种科学。该值越小的,可信度越高
下面说说每一行内容代表的内容:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 116.69.106.119 116.69.106.119 1
这表示发向任意网段的数据通过本机接口116.69.106.119被送往一个默认的网关:116.69.106.119,它的管理距离是1,管理距离指的是在路径选择的过程中信息的可信度,管理距离越小的,可信度越高。
第二行的内容:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 192.168.2.226 192.168.2.79 20
这表示发向任意网段的数据通过本机接口192.168.2.79被送往网关192.168.2.226,但是因为该行的管理距离(Metric)比第一行大,即表示第二行的可信度没有第一行高,所以在默认情况下会优先选择第一行的网关出去。
第三行的内容:
Network Destination Netmask Gateway Interface Metric
115.168.64.94 255.255.255.255 116.69.106.119 116.69.106.119 1
第四行的内容:
Network Destination Netmask Gateway Interface Metric
116.69.106.119 255.255.255.255 127.0.0.1 127.0.0.1 50
表示从自己的主机发送到自己主机的数据包,如果使用的是自己主机的IP地址,跟使用回环地址效果相同,通过同样的途径被路由,也就是如果我有自己的站点,我要浏览自己的站点,在IE地质栏里面输入localhost与116.69.106.119是一样的,尽管localhost被解析为 127.0.0.1。
第五行的内容:
Network Destination Netmask Gateway Interface Metric
116.255.255.255 255.255.255.255 116.69.106.119 116.69.106.119 50
这里的目的地址是一个局域广播地址,系统对这样的数据包的处理方法是把本机116..69.106.119作为网关,发送局域广播帧,这个帧将被路由器过滤。
第六行的内容:
Network Destination Netmask Gateway Interface Metric
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
2.2 删除路由信息
所用的命令为:
route delete 网络目的地址 [mask] [子网掩码]
例如想要删除网络目的地址为192.168.2.0,子网掩码为255.255.255.0的路由,可用:
route delete 192.168.2.0 mask 255.255.0.0
删除路由时还可以用模糊匹配,例如要删除以115开头的IP路由表中的所有路由时,可用:
route delete 115*
2.3 添加路由信息
添加路由信息使用如下命令:
route add 网络目的地址 mask 子网掩码网关 [metric] [测量值]
例如若要向带有255.255.0.0子网掩码、10.27.0.1网关,测量值为7的10.41.0.0的目标地址添加一条路由,可使用如下命令:
route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 metric 7
3. 应用实例
以调试环境为例,需要接入内网进行调试,内网地址为5.0.217.47。另外接了个无线,可以上外网自动分配了个192.168.2.110。
插上内网网线,并成功连接上外网后,此时内网是通的,但是外网连接不上。在命令窗口使用ipconfig和route print命令可以打印出当前的信息:
route print
===========================================================================
Interface List
0x1 MS TCP Loopback interface
0x2 00 26 18 31 4f d1 Realtek RTL8168C(P)/8111C(P) PCI-E Gigabit Ether
net NIC - 数据包计划程序微型端口
0x3 00 24 2c e7 57 11 Atheros AR5006X Wireless Network Adapter - 数据
包计划程序微型端口
===========================================================================
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 5.0.217.1 5.0.217.47 10
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.110 25
5.0.217.0 255.255.255.192 5.0.217.47 5.0.217.47 10
5.0.217.47 255.255.255.255 127.0.0.1 127.0.0.1 10
5.255.255.255 255.255.255.255 5.0.217.47 5.0.217.47 10
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
192.168.1.0 255.255.255.0 192.168.1.110 192.168.1.110 25
192.168.1.110 255.255.255.255 127.0.0.1 127.0.0.1 25
192.168.1.255 255.255.255.255 192.168.1.110 192.168.1.110 25
224.0.0.0 240.0.0.0 5.0.217.47 5.0.217.47 10
224.0.0.0 240.0.0.0 192.168.1.110 192.168.1.110 25
255.255.255.255 255.255.255.255 5.0.217.47 5.0.217.47 1
255.255.255.255 255.255.255.255 192.168.1.110 192.168.1.110 1
Default Gateway: 192.168.1.1
===========================================================================
Persistent Routes:
None
ipconfig
Windows IP Configuration
Ethernet adapter 本地连接:
Connection-specific DNS Suffix . :
IP Address. . . . . . . . . . . . : 5.0.217.47
Subnet Mask . . . . . . . . . . . : 255.255.255.192
Default Gateway . . . . . . . . . :
Ethernet adapter 无线网络连接:
Connection-specific DNS Suffix . :
IP Address. . . . . . . . . . . . : 192.168.1.110
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 192.168.1.1
由route print命令的结果的第一行可以看到,只所以访问不到外网,是因为默认的情况是通过5.0.217.1的内网的网关出去的。
为了达到能同时访问内外网的需求,只需要删除掉0.0.0.0的路由后,添加两条路由即可,将5开头的地址都通过5.0.217.1网关路由出去,而其余的地址都通过无线的网关192.168.1.110出去。参考如下:
route delete 0.0.0.0
route add 0.0.0.0 mask 0.0.0.0 192.168.1.1
route add 5.0.0.0 mask 255.0.0.0 5.0.217.1
此时运行route print命令,可看到运行结果如下:
route print
===========================================================================
Interface List
0x1 MS TCP Loopback interface
0x2 00 26 18 31 4f d1 Realtek RTL8168C(P)/8111C(P) PCI-E Gigabit Ether
net NIC - 数据包计划程序微型端口
0x3 00 24 2c e7 57 11 Atheros AR5006X Wireless Network Adapter - 数据
包计划程序微型端口
===========================================================================
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.110 1
5.0.0.0 255.0.0.0 5.0.217.1 5.0.217.47 1
5.0.217.0 255.255.255.192 5.0.217.47 5.0.217.47 10
5.0.217.47 255.255.255.255 127.0.0.1 127.0.0.1 10
5.255.255.255 255.255.255.255 5.0.217.47 5.0.217.47 10
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
192.168.1.0 255.255.255.0 192.168.1.110 192.168.1.110 25
192.168.1.110 255.255.255.255 127.0.0.1 127.0.0.1 25
192.168.1.255 255.255.255.255 192.168.1.110 192.168.1.110 25
224.0.0.0 240.0.0.0 5.0.217.47 5.0.217.47 10
224.0.0.0 240.0.0.0 192.168.1.110 192.168.1.110 25
255.255.255.255 255.255.255.255 5.0.217.47 5.0.217.47 1
255.255.255.255 255.255.255.255 192.168.1.110 192.168.1.110 1
Default Gateway: 192.168.1.1
===========================================================================
Persistent Routes:
None
可看到默认是通过无线的192.168.1.110出去的,此时内外网都可以同时用了
3.2
一台电脑上内外网的五个解决方法
概述:关键是网关的设置,一般都是内网网关设置起到关键性作用。目的是避免0.0.0.0这条路由表出现两个网关!
用dos操作 mac查找方法
步骤 1 点击左下角“开始”处—— 运行
步骤 2 在对话框里输入 cmd 进入 DOS 窗口状态
步骤 3输入ipconfig /all后回车Physical Address显示的即为本机的MAC 地址
案例一
双网卡静态IP设置电脑在公司局域网内。使用用192.168.0.1(网卡亿)这个网关时电脑只能访问外部网,而用192.168.0.2(网卡二)这个网关时只能访问内部网。
请问:有没有什么办法可以让我同时访问内、外部网而不用手工更改网关设置?
答:你只要这样进行设置把192.168.0.1作为内部网关,手工增加内部各网段的静态路由
例如route add 192.168.1.0 mask 255.255.255.0 192.168.0.2
【分析:我们通过添加路由表的方法以及修改内部网关的方法解决内外网访问问题,比如这里,我当访问内网192.168.1.x网段的时候,我们可以通过网卡二来访问这个内网网段,而因为内部网管设置成外网网关,这样在本地路由表里面就不会出现冲突,即0.0.0.0这个路由表的出口只有一个,就是网卡一的外网网关!】
案例二
双网卡加路由器,外网自动获取IP、内网静态IP。买了个路由将楼上的机子接入互联网。可是问题来了双网卡内外网冲突,双网关冲突。XP连个提示都没有好在我的2003一设置就有提示搞清楚了。前提你的路由器开启DHCP。
主机接外网的网卡IP自动获取,接内网的网卡的IP:10.1.1.2.子网码是255.255.255.0。又如何实现内外网同时可以上线浏览?
答.你只要这样进行设置把内网网卡的IP设置为10.1.1.2.(根据你自己的内网分配)ip 子网码255.0.0.0 重要:【网关不填,把外网网卡的IP、dns设置为自动获取即可】
案例三:双网卡内外网IP自动获取
一个网卡内外网,同时上需要修改下路由即可。外网网关192.168.1.1,内网网关132.235.1.1。新建一个文本文档敲入
route add 132.0.0.0 mask 255.0.0.0 132.235.1.1
route add 0.0.0.0 mask 0.0.0.0 192.168.1.1
route delete 0.0.0.0 mask 0.0.0.0 132.235.1.1
保存为.bat文件。把这个文件设置为开机自动运行就可以内网外网同时上了。
案例四
双网卡外网自动获取IP,内网静止IP。
问:我现在在济南总公司的ERP服务器,在北京一个网卡连在路由器的交换机上,另一个网卡连ADSL的外网现在只能上外网不能上ERP。该怎么解决呢?
答:外网网卡自动获取IP,另一个网关不填
案例五
双网卡内外网静止IP
机器有两块网卡接到两台交换机上 ,internet地址:192.168.1.8,子网掩码255.255.255.0,网关:192.168.1.1.内部网地址:172.23.1.8,子网掩码255.255.255.0,网关:172.23.1.1 .如果按正常的设置方法设置每块网卡的ip地址和网关.在cmd下使用route print查看时会看到
Network Destination Netmask GatewayInterface Metric
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.8
0.0.0.0 0.0.0.0 172.23.1.1 172.23.1.8
即指向0.0.0.0的有两个网关这样就会出现路由冲突两个网络都不能访问。如何实现同时访问两个网络那要用到route命令
第一步route delete 0.0.0.0 删除所有0.0.0.0的路由
第二步route add 0.0.0.0 mask0.0.0.0 192.168.1.1
添加0.0.0.0网络路由这个是主要的意思就是你可以上外网.
第三步route add 172.23.0.0 mask 255.0.0.0172.23.1.1
添加172.23.0.0网络路由注意mask为255.0.0.0 而不是255.255.255.0这样内部的多网段才可用。
这时就可以同时访问两个网络了,但碰到一个问题使用上述命令添加的路由在系统重新启动后会自动丢失。怎样保存现有的路由表呢?
route add -p 添加静态路由即重启后路由不会丢失。注意使用前要在tcp/ip设置里。去掉接在企业内部网的网卡的网关
一些单位将内网和外网分开了。痛苦啊!偶单位就是如此。boss当然是基于安全性考虑了可是没有笔记本的怎么办又要办公有得上网。没办法发扬DIY精神偷偷装一块网卡让聊天与工作同在。让你的主机内外兼顾。这是我在网上找到的谢谢作者了。
方法如下
1.设置其中接internet的网卡的网关为10.0.0.1。启用后就是默认网关--注这是对应外网的网卡按照你们单位外网的ip分配情况。在TCP/IP属性中配置好 ip、掩码、DNS
2.将连接单位内部网的网卡IP配好后设网关设置为空。即不设网关启用后此时内网无法通过网关路由
3.进入CMD运行route -p add 192.0.0.0 mask 255.0.0.0 192.168.0.1 metric 1
--注意思是将192的IP包的路由网关设为192.168.0.1 。-P 参数代表永久写入路由表建议先不加此参数实践通过后在写上去
4. OK同时启用两个网卡两个网关可以同时起作用了两个子网也可以同时访问了关机重启后也不用重设
4、“路由添加失败,找不到元素”(经验分享来源于:Click here)
这种原因出现的背景是你的电脑上有多个网卡,你配置的时候得指定修改那个网卡接口
找不到元素,即我们没有指定我们的需要添加的网卡。一条完整的route命令应该像这样:
route add 0.0.0.0 mask 0.0.0.0 192.168.1.1 metric 1 IF 31
其中,192.168.1.1是网关,IF 31是接口,这个接口在电脑有多个网卡时是必不可少的,因为你需要确定一条路由是从哪个接口进来和出去的,31就是执行route print后,每个网卡前面的第一个省略号前面的数字
原文链接:Click
本文出自 “且行且欣赏” 博客,请务必保留此出处http://skytina.blog.51cto.com/6834539/1355253
route命令相关整理