路由表及route使用
路由表
linux下通过route可以查看本地路由表:
Kernel IP routing table
Destination Gateway
Genmask
Flags Metric Ref Use Iface
default localhost
0.0.0.0
UG 0
0
0 eth1
link-local *
255.255.0.0
U 1000
0
0 eth1
192.168.1.0 * 255.255.255.0 U 2
0 0 eth1
Destination为目的网络地址,Genmask是子网掩码,Gateway是下一跳地址,Metric是权重(优先级),Iface是发送接口。
Flags中U代表此条目有效(可以禁用某些条目),G标志表示此条目的下一跳地址是某个路由器地址,没有G标志的条目表示目的网络地址是与本机接口直接相连的网络,不必经过路由器转发,因此下一跳地址记为*号。
如果要发送一个数据包,首先该数据包的目的地址首先与子网掩码做与运算,得到IP地址后与目的地址比较,相等则从此条路由的接口Iface将数据包发送出去;
不相等,与第二行的子网掩码做与运算,比对目的地址。
若与前面几个路由条目都不匹配,那么就按缺省路由条目的接口把数据包发送出去,让下个路由器按它的路由表决定下一跳地址。
route命令
route [-CFvnee]
route [-v] [-A family] add [-net|-host] target [netmask Nm]
[gw Gw] [metric N] [mss M] [window W] [irtt I] [reject] [mod] [dyn] [reinstate]
[[dev] If]
route [-v] [-A family] del [-net|-host] target [gw Gw] [netmask
Nm] [metric N] [[dev] If]
When the add or del options are used, route
modifies the routing tables. Without
these options, route displays the current contents of the routing tables.
-A
family use the specified address family (eg `inet';
use `route --help' for a full list).
-F operate on the kernel's
FIB (Forwarding Information Base) routing table. This is the default.
-C operate on the kernel's
routing cache.
-v select verbose operation.
-n show numerical addresses
instead of trying to determine symbolic host names. 快速显示路由
This is useful if you are trying to determine why the route to your
nameserver has vanished.
-e use netstat(8)-format for
displaying the routing table. -ee will generate
a very long line with all parameters from the routing table.
del delete a route.
add add a new route.
target the destination network or host. You can provide IP addresses in
dotted decimal or host/network names.
目标网络,目的IP,即数据包的目的地址。
-net the target is a network.
-host the target is a host.
netmask
NM when adding a network route, the netmask
to be used. 路由表中的掩码,作用于目的IP。
gw
GW route
packets via a gateway. NOTE: The
specified gateway must be reachable first.
This
usually means that you have to set up a static route to the gateway beforehand.
If you specify the address of one of your local interfaces,
it will be used to decide about the interface to which the packets should be
routed to.
This is a BSDism compatibility hack.
metric
M set the metric field in the routing table
(used by routing daemons) to M.
mss
M set the TCP Maximum Segment Size (MSS)
for connections over this route to M bytes.
The
default is the device MTU minus headers, or a lower MTU when path mtu discovery
occurred.
This
setting can be used to force smaller TCP packets on the other end when path mtu
discovery does not work
(usually
because of misconfigured firewalls that block ICMP Fragmentation Needed)
window
W set the TCP window size for connections over
this route to W bytes.
This
is typically only used on AX.25 networks and with drivers unable to handle back
to back frames.
irtt
I set
the initial round trip time (irtt) for TCP connections over this route to I
milliseconds (1-12000).
This
is typically only used on AX.25 networks. If omitted the RFC1122 default of
300ms is used.
reject install a blocking
route, which will force a route lookup to fail.
This
is for example used to mask out networks before using the default route. This is NOT for firewalling.
mod,
dyn, reinstate install
a dynamic or modified route. These flags are for diagnostic purposes, and are
generally only set by routing daemons.
dev
If force the route to be associated with the specified device,
as the kernel will otherwise try to determine the device on its own
(by
checking already existing routes and device specifications, and where the route
is added to). In most normal networks you won't need this.
If dev If
is the last option on the command line, the word dev may be omitted, as it's the default. Otherwise the order of the
route modifiers (metric - netmask - gw -dev) doesn't matter.
1)
网络接口dev if和网关gw GW是等价的,指定一个参数即可,系统会决定数据包应该发向哪个接口或哪个网关。
2) target即IP有两种表示方法:ip+netmask或ip/prefix,两者等价,若指定ip为192.168.10.0/24,则不要添加netmask参数。注:这里的IP为网段(不含主机)。
3) -net和-host区别是-net指定网段;-host用于指定具体主机IP,是一个确定的IP。
route应用
1. 局域网的网络地址192.168.1.0/24,局域网络连接其他网络的网关地址是192.168.1.1。主机192.168.1.20访问172.16.1.0/24网络的路由。
route add -net 172.16.1.0 gw 192.168.1.1 netmask
255.255.255.0 metric 1
route add -net 172.16.1.0/24 gw 192.168.1.1
2. 缺省网关路由
默认网关就是数据包不匹配任何设定的路由规则,最后流经的地址关口!
route add default gw 192.168.10.1
route add -net 0.0.0.0 netmask 0.0.0.0 gw 192.168.10.1
route add default gw eth0
route add default gw dev eth0
此处的default可理解为target,即目标网络。
3. 删除默认网关
route del default
删除当前默认网关,在路由表destination项标记为“default”或0.0.0.0 的路由条目。
4. 指定数据包发送的网络接口
route add -net 127.0.0.0 netmask 255.0.0.0 dev lo
回环网络lo增加路由。
5. 增加一条拒绝路由
route add -net 10.0.0.0 netmask 255.0.0.0 reject
路由表及route使用的更多相关文章
- 关于Linux路由表的route命令
转自:http://www.cnblogs.com/gunl/archive/2010/09/14/1826234.html 查看 Linux 内核路由表 使用下面的 route 命令可以查看 Lin ...
- 关于Linux路由表的route命令(转)
查看 Linux 内核路由表 使用下面的 route 命令可以查看 Linux 内核路由表. # route Destination Gateway Genmask Fl ...
- 配置主机路由表(route)(两)
我们谈到了路由在互联网为基础的时间问题,必须有一个路径之间的两个主机可通信 TCP/IP 合约,否则就不能是有线啊! 一般来说.只要有一个网络接口,的接口将产生的路由.例如,在哥斯达黎加的内部主机鸟有 ...
- Linux路由表信息-route命令
使用命令 :route route 命令 显示和设置Linux路由表 -A:设置地址类型: -C:打印将Linux核心的路由缓存: -v:详细信息模式: -n:不执行DNS反向查找,直接显示数字 ...
- linux 路由表设置 之 route 指令详解
使用下面的 route 命令可以查看 Linux 内核路由表. # route Destination Gateway Genmask Flags Metric Ref ...
- linux 路由表设置 之 route 指令详解【转】
转自:http://blog.csdn.net/vevenlcf/article/details/48026965 目录(?)[-] 种路由类型 主机路由 网络路由 默认路由 配置静态路由 route ...
- Linux 路由表详解及 route 命令详解
参考资料 Linux 内核的路由表 通过 route 命令查看 Linux 内核的路由表: [root@VM_139_74_centos ~]# route Kernel IP routing tab ...
- 10.4 route:显示或管理路由表
route命令 可以显示或管理Linux系统的路由表,route命令设置的路由主要是静态路由. 路由的概念 计算机与计算机之间的数据传输必须得经由网络,而网络可以通过直接连接两台计算机的方式或 ...
- window route 命令
使用 Route 命令行工具查看并编辑计算机的 IP 路由表.Route 命令和语法如下所示: route [-f] [-p] [Command][Destination] [mask Netmask ...
随机推荐
- url-pattern / /*匹配
http://hi.baidu.com/atell/item/522112d3db45081fd90e44e1 struts2中配置为 <url-pattern>/*</url-pa ...
- HDUOJ---(2203)亲和串
亲和串 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submis ...
- 彻底理解Python切片
关于list的insert函数 list#insert(ind,value)在ind元素前面插入value 首先对ind进行预处理:如果ind<0,则ind+=len(a),这样一来ind就变成 ...
- [转]Splay Tree
转自:http://blog.sina.com.cn/s/blog_7c4c33190100sg9r.html Splay Tree(又叫伸展树)本质上也是一棵二叉查找树.它不是严格平衡的,但通过一种 ...
- Android四款系统架构工具
开发者若想开发出一款高质量的应用,一款功能强大的开发工具想必是不可或缺的.开发工具简化了应用的开发流程,也能使开发者在应用开发本身投入更多的精力.本文就为大家带来4款实用的Android应用架构工具. ...
- .NET压缩图片保存
需求: 需要将用户后买的图片批量下载打包压缩,并且分不同的文件夹(因:购买了多个用户的图片情况) 文章中用到了一个第三方的类库,Nuget下载 SharpZipLib 目前用的 1.1的版本 效果: ...
- 套接字I/O超时设置方法和用select实现超时
注:如无特殊说明,sockfd 原始状态都是阻塞的. 一.使用alarm 函数设置超时 C++ Code 1 2 3 4 5 6 7 8 9 10 11 12 13 void handler( ...
- BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第13章节--使用业务连接服务创建业务线解决方式 SP Apps中的BCS
BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第13章节--使用业务连接服务创建业务线解决方式 SP Apps中的BCS 之前的联系中,你安装了一个业 ...
- MAC 上搭建lua
下载和安装lua:(转自这里) 1. 下载最新版的lua-5.3.1.tar.gz 请点击(http://www.lua.org/ftp/),然后解压 2. 执行"终端"进入到 ...
- CentOS安装Webmin
解析:Webmin是目前功能最强大的基于Web的Unix系统管理工具.管理员通过浏览器访问Webmin的各种管理功能并完成相应的管理动作.目前 Webmin支持绝大多数的Unix系统,这些系统除了各种 ...