route 详解
语法:
[root@test root]# route [-nee]
[root@test root]# route add [-net|-host]目标主机或网域[netmask] [gw|dev]
[root@test root]# route del [-net|-host]目标主机或网域[netmask] [gw|dev]
参数说明:
-n:列出的资讯以IP来显示
-ee :列出较长列的资讯
add :增加路由资讯
del :删除一个路由资讯
-net:增加一个『网域』的路由,例如C Class的网域!
-host :增加到某个IP主机的路由!
netmask :就是netmask呀!
gw :这个是路由的通讯闸! gw是以IP来建置的
dev :这个是路由的通讯闸! dev是以介面( internet )代号来建置的!
范例:
[root@test root]# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.30.0 * 255.255.255.0 U 1 0 0 eth1
default XiaoQiang 0.0.0.0 UG 0 0 0 eth1
[root@test root]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.30.0 0.0.0.0 255.255.255.0 U 1 0 0 eth1
0.0.0.0 192.168.30.1 0.0.0.0 UG 0 0 0 eth1
注意到route, route -n这两个范例喔!使用-n与否会使domain是否进行查询,
一般来说,我都喜欢加上-n的,因为不必去查询正反解,显示速度较快,
此外, default gateway就是0.0.0.0喔!
[root@test root]# route add -net 192.168.0.0 netmask 255.255.255.0 dev eth1
#新增一个路由规则! 意思是所有以192.168.*.*开头的IP的数据都通过eth1口出。
[root@test root]# route del -net 192.168.0.0 netmask 255.255.255.0 dev eth1
#删除一个路由啰
[root@test root]# route add -net 192.168.0.0 netmask 255.255.255.0 gw 192.168.30.1
#新增一个路由规则! 意思是所有以192.168.*.*开头的IP的数据的网关是192.168.30.1。
[root@test root]# route add -net 192.168.0.0 netmask 255.255.255.0 gw 192.168.30.1 dev eth1
#新增一个路由规则! 意思是所有以192.168.*.*开头的IP的数据的网关是192.168.30.1,并指定通过eth1口出。
[root@test root]# route add default gw 192.168.1.2
#增加一个default gateway呢!
注意一下, gw后面接的是IP ,而dev后面接的则是装置代号。
Destination:目标,可以是IP也可以是网域!至于没有规定到的,则是以default来表示!
以上面为例,当我的机器要去192.168.30.0的时候,则以上表的192.168.1.0那一行的设定为主,但如果我要去tw.yahoo.com的时候,由于没有规定到!所以就要以default的资讯为主要的路由!因此,我就会经由192.168.30.1这个gateway来传送出去我的封包!
Gateway :该目标要经由哪一个网关传送?就是这一个设定值!
Genmask :就是该Destination的netmask啰!例如140.116.141.253为255.255.255.255 ,因为他是一个host而不是一个network呀!至于192.168.1.0就是255.255.255.0这个C Class啰!那如果是default的话,就显示0.0.0.0 ,也就是不论是哪里,都出自这一个gateway就是了!
Flages :旗标,有底下几种Flage呢:
U (route is up):该路由已经启动了;
H (target is a host):目标是一个主机( IP ;
G (use gateway):用来作为gateway的设定;
R (reinstate route for dynamic routing):使用动态路由时,恢复路由资讯的旗标;
D (dynamically installed by daemon or redirect):已经由服务或转port功能设定为动态路由;
M (modified from routing daemon or redirect):路由已经被修改了;
! (reject route):这个路由将不会被接受(用来抵挡不安全的网域!)
Iface :该设定使用的网路介面为何?
实际应用:
公司业务需求,一台服务器,双网卡,需要同时访问外网和内网。在设置过程中,同事反映原本好用的内网地址(192.168.1.100)在设置上外网地址后变的不好用,只要停止外网那个网卡内网就可以正常访问了。
其实是因为,你先设置了内网之后,又设置外网,在给外网设置了网关之后,由于没有设置默认网关,导致,内网的IP也会走外网的网关,肯定是不可以的。我们要做的仅仅是让内网走自己的网卡(注意:要先确认两个网关都可以ping通,即正常工作,如果ping不通,你又没有设置禁止ping网关,那就有可能是网卡没有启动,像esxi 5.1中用双网卡,就需要手动让两个网卡都启动,默认是一个启动,一个备用)
内网网卡:eth0 192.168.1.100 网关:192.168.1.100
外网网卡 : eth1 119.222.222.222 网关:119.222.222.1
首先设置默认网关,让所有IP包默认情况下均通过 119.222.222.1 进行转发:
route add default gw 119.222.222.1
然后,单独为内网设置转发特例,所有192.168开头的,全部走eth0
route add -net 192.168.0.0 netmask 255.255.0.0 dev eth0
路由添加的最好是要加到开机启动上
vi /etc/rc.local
另:删除默认网关的命令如下:
route del default
做个小推广:程序员经常久坐,颈椎毛病比较多,特别推荐ventry颈椎保健枕
route 详解的更多相关文章
- IIS负载均衡-Application Request Route详解第四篇:使用ARR实现三层部署架构(转载)
IIS负载均衡-Application Request Route详解第四篇:使用ARR实现三层部署架构 系列文章链接: IIS负载均衡-Application Request Route详解第一篇: ...
- IIS负载均衡-Application Request Route详解第二篇:创建与配置Server Farm(转载)
IIS负载均衡-Application Request Route详解第二篇:创建与配置Server Farm 自从本系列发布之后,收到了很多的朋友的回复!非常感谢,同时很多朋友问到了一些问题,有些问 ...
- IIS负载均衡-Application Request Route详解第一篇: ARR介绍(转载)
IIS负载均衡-Application Request Route详解第一篇: ARR介绍 说到负载均衡,相信大家已经不再陌生了,本系列主要介绍在IIS中可以采用的负载均衡的软件:微软的Applica ...
- IIS负载均衡-Application Request Route详解第一篇: ARR介绍
IIS负载均衡-Application Request Route详解第一篇: ARR介绍 说到负载均衡,相信大家已经不再陌生了,本系列主要介绍在IIS中可以采用的负载均衡的软件:微软的Applica ...
- ASP.NET MVC Route详解
在MVC3.0版本的时候,微软终于引入了第二种模板引擎:Razor.在这之前,我们一直在使用WebForm时代沿留下来的ASPX引擎或者第三方的NVelocity模板引擎.Razor在减少代码冗余.增 ...
- route使用详解
route命令用于显示和操作IP路由表.要实现两个不同的子网之间的通信,需要一台连接两个网络的路由器,或者同时位于两个网络的网关来实现.在Linux系统中,设置路由通常是 为了解决以下问题:该Linu ...
- linux route命令的使用详解
route命令用于显示和操作IP路由表.要实现两个不同的子网之间的通信,需要一台连接两个网络的路由器,或者同时位于两个网络的网关来实现.在Linux系统中,设置路由通常是 为了解决以下问题:该Linu ...
- route命令详解与使用实例 ,同时访问内外网
route命令详解与使用实例 2011-10-18 12:19:41| 分类: 其他 | 标签:route |字号 订阅 1. 使用背景 需要接入两个网络,一个是部署环境所在内 ...
- [转帖]Application Request Route实现IIS Server Farms集群负载详解
Application Request Route实现IIS Server Farms集群负载详解 https://www.cnblogs.com/knowledgesea/p/5099893.ht ...
随机推荐
- centos6.4 ssh免密码登陆(只需三个步骤)
学习Hadoop的时候,用到的.这里作为记录. 以下是最简洁的方式: 4台虚拟机: 用户:root.hadoop hostname 分别是:Master.Hadoop.Slave1.Hadoop.Sl ...
- oracle基础学习---------1
1.SQL执行时间的开关 set timing on --->开 set timing off--->关 2.创建数据表.以已存在的表创建(也就是复制一个表.但表内没有数据 ...
- Lambda表达式怎么写SQL中的in?
ambda表达式查询没有IN这个方法,可以变通一下,in查询的数组是否包含在映射对象里面的集合里 直接贴代码吧,一看就懂了 class Program { static void Main(strin ...
- url参数为数组
//url中state参数为数组 ?baseline_id=12&version_id=34&state[]=complete&state[]=hangup&state ...
- 安卓UI自适应性
出于安卓的碎片化原因,针对不同屏幕大小,最好是做到以下几点: 1.能用相对布局的就不用绝对布局,尽量使用权重,weight设置,相对布局和线性布局同条件情况下,优先选线性布局 2.在res目录下创建不 ...
- easyui textbox 内容改变事件 增加oninpu 类似事件,
//======================利用easyui验证功能,进行内容变化监控=== =============$(function () { var CustomerService = ...
- html5——文本阴影
基本结构 text-shadow: 30px 23px 31px #;/* 文字阴影: 水平位移 垂直位移 模糊程度 阴影颜色*/ 凹凸文字 <!DOCTYPE html> <htm ...
- JS——i++与++i
先赋值后自增: var i = 0; var n1 = i++; alert(i);//返回1 alert(n1);//返回0 先自增后赋值: var i = 0; var n1 = ++i; ale ...
- RTL Compiler之synthesis steps
1 synthesis steps 1) Search Paths rc:/> set_attribute lib_search_path path / rc:/> set_attribu ...
- Lazarus 1.44升级到1.6 UTF8处理发生变化了
首先这里真的要强调一下,由于Freepascal升级到3.0后,FPC的内部将整个代码处理由AnsiString改为了UTF8编码(RTL with default codepage UTF-8). ...