`
网络接口
  • 浏览: 43374 次
文章分类
社区版块
存档分类
最新评论

linux下的route命令

 
阅读更多

转载:http://2768717191.bokee.com/503190967.html

 

为了让设备能访问另一个子网,需要在设备里增加路由到子网络,下面是一些资料。基本操作如下:
一般来说,都是为了能访问别的子网才设置路由的,比如说,你的主机处于192.168.10.0/24,而你想访问192.168.20.0/24网的主机,当然你知道一个网关IP,例如192.168.10.1(必须和你主机处于同一子网),那么,你可以这样配置路由。
添加路由
route add -net 192.168.20.0 netmask 255.255.255.0 gw 192.168.10.1
查看路由状态
route -n
删除路由
route del -net 192.168.20.0 netmask 255.255.255.0

路由修改 route      
我们在网路基础的时候谈过关于路由的问题,两部主机之间一定要有路由才能够互通 TCP/IP 的协定,否则就无法进行连线啊!
一般来说,只要有网路介面,该介面就会产生一个路由,例如在鸟哥实验室内部的主机有一个 eth0 及 lo ,所以:
[root@linux ~]# route [-nee]
[root@linux ~]# route add [-net|-host] [网域或主机] netmask [mask] [gw|dev]
[root@linux ~]# route del [-net|-host] [网域或主机] netmask [mask] [gw|dev]
观察的参数:
-n  :不要使用通讯协定或主机名称,直接使用 IP 或 port number;
-ee :使用更详细的资讯来显示
增加 (add) 与删除 (del) 路由的相关参数:
-net    :表示后面接的路由为一个网域;
-host   :表示后面接的为连接到单部主机的路由;
netmask :与网域有关,可以设定 netmask 决定网域的大小;
gw      :gateway 的简写,后续接的是 IP 的数值喔,与 dev 不同;
dev     :如果只是要指定由那一块网路卡连线出去,则使用这个设定,后面接 eth0 等
范例一:单纯的观察路由状态
[root@linux ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.10.0    0.0.0.0         255.255.255.0   U     0      0        0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U     0      0        0 eth0
0.0.0.0         192.168.10.30   0.0.0.0         UG    0      0        0 eth0
[root@linux ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.10.0    *               255.255.255.0   U     0      0        0 eth0
169.254.0.0     *               255.255.0.0     U     0      0        0 eth0
default         server.cluster      0.0.0.0         UG    0      0        0 eth0
由上面的例子当中仔细观察 route 与 route -n 的输出结果,你可以发现有加 -n参数的主要是显示出 IP ,至于使用 route 而已的话,显示的则是『主机名称』喔!也就是说,在预设的情况下, route 会去找出该 IP 的主机名称,如果找不到呢?就会显示的钝钝的(有点小慢),所以说,鸟哥通常都直接使用 route -n 啦!由上面看起来,我们也知道 default = 0.0.0.0/0.0.0.0 ,而上面的资讯有哪些你必须要知道的呢?
         
· Destination, Genmask:这两个玩意儿就是分别是 network 与netmask 啦!所以这两个咚咚就组合成为一个完整的网域囉!
· Gateway:该网域是通过那个 gateway 连接出去的? 如果显示 0.0.0.0 表示该路由是直接由本机传送,亦即可以透过区域网路的 MAC 直接传讯;如果有显示 IP 的话,表示该路由需要经过路由器 (通讯闸) 的帮忙才能够传送出去。
· Flags:总共有多个旗标,代表的意义如下:                       
o U (route is up):该路由是启动的;                      
o H (target is a host):目标是一部主机 (IP) 而非网域;                      
o G (use gateway):需要透过外部的主机 (gateway) 来转递封包;                      
o R (reinstate route for dynamic routing):使用动态路由时,恢复路由资讯的旗标;                      
o D (dynamically installed by daemon or redirect):已经由服务或转 port 功能设定为动态路由                      
o M (modified from routing daemon or redirect):路由已经被修改了;                      
o !  (reject route):这个路由将不会被接受(用来抵挡不安全的网域!)
· Iface:这个路由传递封包的介面。
此外,观察一下上面的路由排列顺序喔,依序是由小网域(192.168.10.0/24 是 Class C),逐渐到大网域(169.254.0.0/16 Class B) 最后则是预设路由 (0.0.0.0/0.0.0.0)。然后当我们要判断某个网路封包应该如何传送的时候,该封包会经由这个路由的过程来判断喔!举例来说,我上头仅有三个路由,若我有一个传往 192.168.10.20 的封包要传递,那首先会找 192.168.10.0/24 这个网域的路由,找到了!所以直接由 eth0 传送出去;如果是传送到 Yahoo 的主机呢? Yahoo 的主机 IP 是 202.43.195.52,我通过判断
1)不是 192.168.10.0/24,
  2)不是 169.254.0.0/16 结果到达
3)0/0 时,OK!传出去了,透过 eth0 将封包传给 192.168.10.30那部 gateway 主机啊!所以说,路由是有顺序的。因此当你重复设定多个同样的路由时,例如在你的主机上的两张网路卡设定为相同网域的 IP 时,会出现什么情况?会出现如下的情况:
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.10.0    0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.10.0    0.0.0.0         255.255.255.0   U     0      0        0 eth1
也就是说,由于路由是依照顺序来排列与传送的,所以不论封包是由那个介面 (eth0, eth1) 所接收,都会由上述的 eth0 传送出去,所以,在一部主机上面设定两个相同网域的 IP 本身没有什么意义!有点多此一举就是了。除非是类似虚拟主机 (Xen, VMware 等软体) 所架设的多主机时,才会有这个必要~
范例二:路由的增加与删除
[root@linux ~]# route del -net 169.254.0.0 netmask 255.255.0.0 dev eth0
# 上面这个动作可以删除掉 169.254.0.0/16 这个网域!
# 请注意,在删除的时候,需要将路由表上面出现的资讯都写入
# 包括  netmask , dev 等等参数喔!注意注意
[root@linux ~]# route add -net 192.168.100.0 netmask 255.255.255.0 dev eth0
# 透过 route add 来增加一个路由!请注意,这个路由必须要能够与你互通。
# 举例来说,如果我下达底下的指令就会显示错误:
# route add -net 192.168.200.0 netmask 255.255.255.0 gw 192.168.200.254
# 因为我的环境内仅有 192.168.10.100 这个 IP ,所以不能与 192.168.200.254
# 这个网段直接使用 MAC 互通!这样说,可以理解喔!?
[root@linux ~]# route add default gw 192.168.10.30
# 增加预设路由的方法!请注意,只要有一个预设路由就够了喔!
# 在这个地方如果您随便设定后,记得使用底下的指令重新设定你的网路
# /etc/init.d/network restart
 如果是要进行路由的删除与增加,那就得要参考上面的例子了,其实,使用 man route 里面的资料就很丰富了!仔细查阅一下囉!你只要记得,当出现『SIOCADDRT: Network is unreachable』这个错误时,肯定是由于 gw 后面接的 IP 无法直接与您的网域沟通 (Gateway 并不在你的网域内),所以,赶紧检查一下是否输入错误啊!加油吧!

# route 命令添加的路由,机器重启或者网卡重启后就没掉了,在linux下设置永久路由的方法:
1.在/etc/rc.local里添加
2.在/etc/sysconfig/network里添加到末尾
3./etc/sysconfig/static-router :
any net x.x.x.x/24 gw y.y.y.y

===========================================================================================   WINDOWS下的route命令:
简单的的操作如下,
查看路由状态:route print
只查看ipv4(ipv6)路由状态:route print -4(-6)
添加路由:route add 目的网络 mask 子网掩码 网关 ——重启机器或网卡失效
route add 192.168.20.0 mask 255.255.255.0 192.168.10.1
添加永久:route -p add 目的网络 mask 子网掩码网关
route -p add 192.168.20.0 mask 255.255.255.0 192.168.10.1
删除路由:route delete 目的网络 mask 子网掩码
route delete 192.168.20.0 mask 255.255.255.0

分享到:
评论

相关推荐

    linux 下route命令

    为了让设备能访问另一个子网,需要在设备里增加路由到子网络,下面是一些资料.

    Linux中route命令

    甚至是交换机、路由器和服务器,都是基于硬件设备和网络层面来实现需求的,因此在一套系统中,路由显得就特别重要了,作为现场的交付人员,路由基础也是最基本的技能之一,本文就讲解下linux系统下,路由的实现和...

    详解CentOS中的route命令

    介绍 Linux系统中的route命令能够用于IP路由表的显示和操作。它的主要作用是创建一个静态路由让指定一...要注意的是:直接在命令行下执行route命令来添加路由,不会永久保存,当网卡重启或者机器重启之后,该路由就失效

    如何使用Linux命令 route

    linux 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] ...

    linux iproute2中ip命令man

    linux ip 命令 man,linux ip 命令 man

    linuxroute命令工作原理电脑资料.doc

    linuxroute命令工作原理电脑资料.doc

    Linux基础课件网络管理命令route命令共10页.pd

    Linux基础课件网络管理命令route命令共10页.pdf.zip

    一些简单的Linux网络配置命令

    一些简单的Linux网络配置命令 1、ifconfig是查看网卡的信息 2、 route命令来配置并查看内核路由表的配置情况 3、 traceroute命令显示数据包到达目的主机所经过的路由 ......

    Linux网络配置命令.zip

    Linux网络配置命令.zip arp hostname ifconfig ifup netstat nslookup ping route tcpdump traceroute ...

    linux必须的60个命令

    Linux提供了大量的命令,利用它可以有效地完成大量的工 ...本文以Mandrake Linux 9.1(Kenrel 2.4.21)为例,介绍Linux下的安装和登录命令。 immortality按:请用ctrl+f在本页中查找某一部分的内容或某一命令的用法。

    linux策略路由命令 中文详解手册.docx

    linux策略路由命令 手册、讲解linux策略路由的设定、转发、逻辑

    Linux必学的60个命令

    Linux必学的60个命令 Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作、文件存取、目 录操作、进程管理、文件...本文以Mandrake Linux 9.1(Kenrel 2.4.21)为例,介绍Linux下的安装和登录命令。

    linux命令大全

    Linux提供了大量的命令,利用它可以有效地完成大量的工 作,如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等。...本文以Mandrake Linux 9.1(Kenrel 2.4.21)为例,介绍Linux下的安装和登录命令。

    Linux基础课件-网络管理命令-route命令.pptx

    Linux操作系统基础

    route命令 显示并设置路由

    要注意的是:直接在命令行下执行route命令来添加路由,不会永久保存。当网卡重启或者机器重启之后,该路由就失效了。可以在/etc/rc.local中添加route命令来保证该路由设置永久有效。 语法格式:r

    57个Linux常用命令含参数介绍和使用示例

    网络配置:Linux中提供了许多网络相关的命令,如ifconfig、netstat、route等,可以用来配置网络接口、查看网络状态、管理网络连接等。这对于网络管理员和需要进行网络配置的用户来说非常重要。 系统监控:Linux中的...

    Linux系统多网卡环境下的路由配置详解

    Linux下路由配置命令 1. 添加主机路由 route add -host 192.168.1.11 dev eth0 route add -host 192.168.1.12 gw 192.168.1.1 2. 添加网络路由 route add -net 192.168.1.11 netmask 255.255.255.0 eth0 route add...

    关于Linux路由表的route命令

     使用下面的 route 命令可以查看 Linux 内核路由表。  # route  Destination Gateway Genmask Flags Metric Ref Use Iface  192.168.0.0 * 255.255.255.0 U 0 0 0 eth0  169.254.0.0 * 255....

    Linux必学的60个命令.txt

    ◆ 网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup; ◆ 系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who; ◆ 其它...

Global site tag (gtag.js) - Google Analytics