本篇总结三种修改路由的方式:route, ip route, 以及通过修改文件来配置路由,前2种命令行形式适用于ubuntu和centos,重启失效,最后一种永久有效。
 
 

一. route命令

                 
     1) 查看:route -n
     2)添加: route add  [-net|-host]  target [netmask Nm] [gw Gw] [[dev If]

                 目标:192.168.1.3  网关:172.16.0.1(必须与本地地址在同一网络)
                ~]# route add -host 192.168.1.3 gw 172.16.0.1 dev eth0(经由本地哪个网卡)
 
                 目标:192.168.0.0 网关:172.16.0.1
                ~]# route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1 dev eth0
                ~]# route add -net 192.168.0.0/24 gw 172.16.0.1 dev eth0
 
                  默认路由,网关:172.16.0.1
                 ~]# route add -net 0.0.0.0 netmask 0.0.0.0 gw 172.16.0.1
                 ~]# route add default gw 172.16.0.1
     3)删除:route del [-net|-host] target [gw Gw] [netmask Nm] [[dev] If]                           
                  目标:192.168.1.3  网关:172.16.0.1
                   ~]# route del -host 192.168.1.3
          
                  目标:192.168.0.0 网关:172.16.0.1
                  ~]# route del -net 192.168.0.0 netmask 255.255.255.0                 
                           

二.    ip route - routing table management

                   
        1) 添加路由:ip route add TARGET via GW [dev IFACE] [src SOURCE_IP] (dev表示流出的接口,via:经由下一跳)
 
                             例如:ip route add 192.168.1.3 via 172.16.0.1 dev eth0
                                        ip route add 192.168.0.0/24 via 172.16.0.1
 
                             注意TARGET中的格式:
                                主机路由:IP
                                网络路由:NETWORK/MASK
 
         2) 添加默认网关:ip route add defalt via GW [dev IFACE] ----dev指明由哪条接口出去
 
         3) 删除路由:ip route del TARGET
 
         4) ip route show,或者ip route list查看路由
 
         5) ip route flush-----清空整个路由表
                        [dev IFACE]---仅清空与某个接口相关联的
                        [via PREFIX]--仅清空与某个网关相关联的,不常用
 

三. 修改配置文件永久生效

 

1)对centos来说,是修改/etc/sysconfig/network-scripts/route-IFACE (比如 route-eth0,没有就新建)来配置路由,永久有效,有2种配置风格

       
      (1) TARGET via GW      
           例如:192.168.0.0/24 via 172.16.0.1
                      0.0.0.0/0 via 172.16.10.2 dev eth0 (可以省略dev eth0 ,注意这里的掩码是0而不是32,因为这里是网段而不是路由)
 
       (2) 每三行定义一条路由   
                    ADDRESS#=TARGET   #表示数字
                    NETMASK#=mask
                    GATEWAY#=GW
 
                    例如:ADDRESS0=192.16.20.0
                              NETMASK0=255.255.255.0
                              GATEWAY0=172.16.0.1
          
 注意: 2种风格不能混合使用,都要service network restart重启网络服务
 
 

2)对ubuntu来说,是修改/etc/network/interfaces,添加路由格式如下

up route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.1.1
 
其实就是命令行的形式多了个up,其他都一样。
 
 
 

四. 路由参数说明

我们在修改ip前先查看一下主机路由:route -n
 
参数列解释:
Destination \ Genmask分别是network \ netmask,它们两个组合成了一个网络。
Gateway就是网关,如果显示0.0.0.0表示该路由是直接由本机传送;如果显示ip,表示该路由需要经过路由器的帮助才能发出。
Iface 就是网卡接口名称。
 
Flags:
U(route is up)该路由是启动的
H(target is a host) 特定主机路由
G(use Gateway) 需要通过外部的主机传递数据包
 

centos和ubuntu配置路由的三种方式的更多相关文章

  1. 【转】Apache 配置虚拟主机三种方式

    Apache 配置虚拟主机三种方式  原文博客http://www.cnblogs.com/hi-bazinga/archive/2012/04/23/2466605.html 一.基于IP 1. 假 ...

  2. 配置数据源的三种方式和sql心跳的配置

    三种方式配置数据源连接池: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns=" ...

  3. Spring配置dataSource的三种方式 数据库连接池

    1.使用org.springframework.jdbc.dataSource.DriverManagerDataSource 说明:DriverManagerDataSource建立连接是只要有连接 ...

  4. python之配置日志的三种方式

    以下3种方式来配置logging: 1)使用Python代码显式的创建loggers, handlers和formatters并分别调用它们的配置函数: 2)创建一个日志配置文件,然后使用fileCo ...

  5. Apache 配置虚拟主机三种方式

    一.基于IP 1. 假设服务器有个IP地址为192.168.1.10,使用ifconfig在同一个网络接口eth0上绑定3个IP: [root@localhost root]# ifconfig et ...

  6. ***阿里云ECS实战配置虚拟主机 + Apache 配置虚拟主机三种方式

    阿里云ECS实战配置虚拟主机 买了一台ECS阿里云服务器,性能感觉有点富余,想着可以陪着虚拟主机多一些WWW目录好放一些其他的程序.比如DEMO什么的. 今天研究了下,主要是就是做基于不同域名的虚拟主 ...

  7. [转]Apache 配置虚拟主机三种方式

    转自: http://www.cnblogs.com/hi-bazinga/archive/2012/04/23/2466605.html 一.基于IP 1. 假设服务器有个IP地址为192.168. ...

  8. Tomcat下配置JNDI的三种方式

    最近在整理项目上的配置文件,正好看到了数据源配置,想着配置方式有多种,便趁热打铁,记录下常规的Tomcat配置数据源的方式 1.单个工程配置 找到Tomcat下的server.xml文件,在Conte ...

  9. linux 配置环境变量三种方式

    一:用于当前终端: export PATH=$PATH:<你的要加入的路径> 此方式仅用于当前终端,一旦该终端关闭,则配置失效 二:用于当前用户: vi ~/.bashrc 然后加入:ex ...

随机推荐

  1. SOCKET, TCP/UDP, HTTP, FTP 浅析

    SOCKET, TCP/UDP, HTTP, FTP (一)TCP/UDP,SOCKET,HTTP,FTP简析   TCP/IP是个协议组,可分为三个层次:网络层.传输层和应用层: 网络层:IP协议. ...

  2. QByteArray to QString

    QByteArray => QString void BarEngine::ByteArrayToString(QByteArray &ba, QString &str) { i ...

  3. jave 逻辑运算 vs 位运算 + Python 逻辑运算 vs 位运算

    JAVA中&&和&.||和|(短路与和逻辑与.短路或和逻辑或)的区别 博客分类: 面试题目 Java.netBlog  转自 :http://blog.csdn.net/web ...

  4. vs与qt

    http://blog.csdn.net/woniuye/article/details/54928477 1. #include "qmessagebox.h" QMessage ...

  5. Solr分词搜索结果不准确

    Solr的schema.xml默认配置分词后条件取 OR 例如:大众1.6T  系统会自动分词为  [大众] [1.6T](ps:不同分词器分词效果不同)   会搜索出包含 [大众 OR  1.6T] ...

  6. C#使用互斥量(Mutex)实现多进程并发操作时多进程间线程同步操作(进程同步)的简单示例代码及使用方法

    本文主要是实现操作系统级别的多进程间线程同步(进程同步)的示例代码及测试结果.代码经过测试,可供参考,也可直接使用. 承接上一篇博客的业务场景[C#使用读写锁三行代码简单解决多线程并发写入文件时线程同 ...

  7. UVa 247 Calling Circles (DFS+Floyd)

    题意:如果两个人互通电话,那么他们就在一个电话圈里,现在给定 n 个人,并且给定 m 个通话记录,让你输出所有的电话圈. 析:刚开始没想到是Floyd算法,后来才知道是这个算法,利用这个算法进行连通性 ...

  8. lnmp 一键安装包 nginx配置tp5 phpinfo模式 隐藏index.php

    tp5 url 线上访问 在nginx 上 出现404错误 那是因为pathinfo没有被支持 修改如下:找到   /usr/local/nginx/config/vhost/项目名.config s ...

  9. kalilinux、parrotsecos没有声音

    Kali Linux系统默认状态下,root用户是无法使用声卡的,也就没有声音.启用的方法如下: (1)在终端执行命令:systemctl --user enable pulseaudio (2)在/ ...

  10. HBase & thrift & C++编程

    目录 目录 1 1. 前言 1 2. 启动和停止thrift2 1 2.1. 启动thrift2 1 2.2. 停止thrift2 1 2.3. 启动参数 2 3. hbase.thrift 2 3. ...