route工具

route工具主要用来查看或修改内核路由表

查看内核路由表

route [-nee]

参数说明:

-n:不要使用协议或主机名称,直接使用 IP 或 port number;
-ee:使用更详细的信息来显示

注意:route 打印的路由表是有顺序的,服务器在做选路的时候,是从上往下依次对比,如果有配对的目标网络,就走相应的Gateway出去。

所以,默认路由(0.0.0.0)一定是在路由表的最后一项。

说明:

1、Destination, Genmask:这两个字段分别是 network(网络地址) 与netmask(子网掩码) ,所以这两个就组合成为一个目标网络!
2、Gateway:目标网络是通过那个 gateway 路由出去的? 如果显示 0.0.0.0 表示该路由是直接由本机传送,即可以通过局域网路的 MAC 直接传送;如果有显示 IP 的话,表示该路由需要经过路由器的帮忙才能够传送出去;
3、Metric 跳数,暂无用;
4、Iface 网卡接口,如eth0;

5、Ref 恒为0,不用管;

6、Use 为该路由被使用次数,根据它,可以粗略估计通向指定网络地址的网络流量;

7、Flags:总共有多个旗标,代表的意义如下:

  • 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):这个路由将不会被接受(用来抵挡不安全的网络!);

增加和删除路由

route add [-net|-host] [目标网络号或主机地址] netmask [mask] [gw|dev]
route del [-net|-host]  [目标网络号或主机地址] netmask [mask] [gw|dev]

参数说明:

-net:  表示后面接的路由为一个网络地址;
-host:表示后面接的路由为一个主机地址;
netmask:设置子网掩码;
gw:gateway 的简写,后面接的是 IP 地址;
dev:如果只是要指定由哪一块网卡出去,则使用这个设定,后面接 eth0 等

例如

route del -net 169.254.0.0 netmask 255.255.0.0 dev eth0
route del -net 10.0.0.0 netmask 255.0.0.0 reject 

上面这个动作可以删除掉 169.254.0.0/16 这个网络地址;

请注意,在删除的时候,需要将路由表上面出现的资讯都写入,包括 netmask , dev 等等参数。

route add -host 172.18.32.3 dev eth0                    # 目的地址是主机地址
route add -net 172.18.32.0 netmask 255.255.255.0 dev eth0       # 目的地址是网络地址,数据包通过网络接口eth0
route add -net 172.18.32.0 netmask 255.255.255.0 gw 172.18.32.1    # 目的地址是网络地址,数据包通过网关
route add -net 10.0.0.0/8 gw 10.33.149.1 dev eth1
route add -net 10.0.0.0 netmask 255.0.0.0 reject              # 拒绝指定路由

通过route add 来增加一个路由!请注意,这个路由必须要能够与你互通。

当出现『SIOCADDRT: Network is unreachable』这个错误时,肯定是由于 gw 后面接的 IP 无法直接与您的本地网络通信 (Gateway 并不在你的网络内)。

增加默认路由的方法!请注意,只要有一个预设路由就够了喔!

route add default gw 192.168.10.30

修改路由表后,重启网络使之生效:

/etc/init.d/network restart

route 命令添加的路由,机器重启或者网卡重启后就没掉了,在linux下设置永久路由的方法:

1、在/etc/rc.local里添加;
2、在/etc/sysconfig/network里添加到末尾;
3、/etc/sysconfig/static-router ;

更网络命令请参考:http://linux.vbird.org/linux_server/0140networkcommand.php

route 工具的更多相关文章

  1. route工具

    route工具 route工具主要用来查看或修改内核路由表. 1.查看内核路由表 route [-nee] 参数说明: -n:不要使用协议或主机名称,直接使用 IP 或 port number:-ee ...

  2. 将LINUX变成路由器

    将LINUX变成路由器 2009-06-04 22:38:45 标签:LINUX 路由器 休闲 职场 版权声明:原创作品,如需转载,请与作者联系.否则将追究法律责任.     LINUX系统是一个强大 ...

  3. k8s集群之Docker安装镜像加速器配置与k8s容器网络

    安装Docker 参考:https://www.cnblogs.com/rdchenxi/p/10381631.html 加速器配置 参考:https://www.cnblogs.com/rdchen ...

  4. vue-如何实现带参数跳转页面

    [前后端分离项目之vue框架经验总结] 文/朱季谦 在vue框架的前端页面上,若要实现页面之间的带参数跳转,可参考以下实现过程: 例如,点击截图中的“查看试卷”,可实现带参跳转到相应的试卷页面,该功能 ...

  5. P & R 9

    Floorplan: 要做好floorplan需要掌握哪些知识跟技能? 明确Floorplan 处理的对象:对于数字设计的 Floorplan 来说,它是一个很依赖前后步骤的一个过程,这个可以看作是后 ...

  6. 如何为应用选择最佳的FPGA(上)

    如何为应用选择最佳的FPGA(上) How To Select The Best FPGA For Your Application 在项目规划阶段,为任何一个项目选择一个FPGA部件是最关键的决策之 ...

  7. 深入浅出的webpack4构建工具--webpack4+vue+route+vuex项目构建(十七)

    阅读目录 一:vue传值方式有哪些? 二:理解使用Vuex 三:webpack4+vue+route+vuex 项目架构 回到顶部 一:vue传值方式有哪些? 在vue项目开发过程中,经常会使用组件来 ...

  8. 中文分词工具探析(二):Jieba

    1. 前言 Jieba是由fxsjy大神开源的一款中文分词工具,一款属于工业界的分词工具--模型易用简单.代码清晰可读,推荐有志学习NLP或Python的读一下源码.与采用分词模型Bigram + H ...

  9. AngularJS中的route可以控制页面元素的改变,使多页面变成一个单页面。。。

    SPA(Single Page Application)指的是通单一页面展示所有功能,通过Ajax动态获取数据然后进行实时渲染,结合CSS3动画模仿原生App交互,然后再进行打包(使用工具把Web应用 ...

随机推荐

  1. Docker服务端和客户端

    Docker是一个客户端-服务端(c/s)的架构程序

  2. laravel 前后端分离 token

    由于自己开发的项目中用到了 JWT 技术,前端采用了 Vue.js 框架,后端采用了 CodeIgniter 框架,故作此文帮助使用相同技术栈的朋友们. 具体思路如下:把后端生成的 JWT token ...

  3. c#之如何计算哈希值字符串

    代码如下: /// <summary> /// 计算哈希值字符串 /// </summary> public static string ComputeHash(byte[] ...

  4. 使用js调用js

    直接上源码: <div class="choose"> choose a mode<br> <hr> <button type=" ...

  5. STL之Vector容器

    1.Vector容器 1)vector是将元素置于一个动态数组中加以管理的容器. 2)vector可以随机存取元素(支持索引值直接存取, 用[]操作符或at()方法,这个等下会详讲). 3)vecto ...

  6. Helter Skelter (扫描线 + 离散化 + 树状数组)

    扫描线:按照其中一个区间的标记为pos,然后左区间标记d为正影响,有区间标记d为负影响,然后根据所有的pos排序.pos从小扫到大,那么对于某一个区间一定会被扫过2次,那么经过2次之后就只剩下中间那一 ...

  7. Necklace (全排列 + 匈牙利)

    #include<bits/stdc++.h> using namespace std; ][], Gra[][]; ]; ]; ]; bool dfs(int u, int vN) { ...

  8. Linux下实现免密登录

    过程如下: 1.Linux下生成密钥 通过命令”ssh-keygen -t rsa“ 2.1 通过ssh-copy-id的方式 命令: ssh-copy-id -i ~/.ssh/id_rsa.put ...

  9. Linux基础命令---文本格式转换fmt

    fmt 将指定文件的内容,按照指定的格式重新排版,结果送到标准输出. 此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS.SUSE.openSUSE.Fedora. 1.语法     ...

  10. 介绍python中运算符优先级

    下面这个表给出Python的运算符优先级,从最低的优先级(最松散地结合)到最高的优先级(最紧密地结合).这意味着在一个表达式中,Python会首先计算表中较下面的运算符,然后在计算列在表上部的运算符. ...