配置Linux实现静态路由

  1. 背景和原理

    路由器的功能是实现一个网段到另一个网段之间的通信,路由分为静态路由、动态路由、

默认路由和直连路由。静态路由是手工指定的,使用静态路由的好处是网络安全保密性高。动态路由因为需要路由器之间频繁地交换各自的路由表,而对路由表的分析可以揭示网络的拓扑结构和网络地址等信息。因此,网络出于安全方面的考虑也可以采用静态路由。不占用网络带宽,因为静态路由不会产生更新流量。

  1. 网络规划模拟

    模拟使用四台Linux机器,分别命名为Linux1、Linux2(router1)、Linux3(router)

和Linux4,其中Linux2和Linux3当做路由器来配置静态路由功能,每两台机器之间的通信使用不同的网段和网络模式

  1. 环境模拟

克隆四台Linux机器并命名,分别按照网络规划图配置每台机器的网卡,只使用静态ip和子网掩码,克隆的机器需要执行命令>/etc/udev/rules.d/70-persistent-net.rules清空网卡相关信息文件,配置完后查看ip并检验同网段设备之间的通信

Linux1

Linux2

Linux3

Linux4

  1. 配置静态路由

4.1 添加静态路由:

常用参数:

add 增加路由

del 删除路由

-net 设置到某个网段的路由

-host 设置到某台主机的路由

gw     出口网关 IP地址

dev 出口网关 物理设备名

第1步

Linux1:route add –net 192.168.1.0/24 gw 10.0.0.129        (从1到3)

Linux3:route add –net 10.0.0.0/24 gw 192.168.1.129        (从3到1)

此时,Linux1和Linux3可以相互ping通

第2步

Linux4:route add –net 192.168.1.0/24 gw 192.168.2.130    (从4到2)

Linux2:route add –net 192.168.2.0/24 gw 192.168.1.130    (从2到4)

此时,Linux2和Linux4可以相互ping通

第3步:

Linux1:route add –net 192.168.2.0/24 gw 10.0.0.129        (从1到4)

Linux4:route add –net 10.0.0.0/24 gw 192.168.2.130        (从4到1)

至此,Linux1、Linux2、Linux3、Linux4之间可以互相通信

4.2 在配置时如有涉及Linux2和Linux3这两台机器则需要开启内核转发功能

方法一:echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf(临时开启)

方法二:vi /etc/sysctl.conf --> net.ipv4.ip_forward=1 (永久开启)

sysctl –p    载入 sysctl 配置文件

  1. 检验静态路由

5.1 查看各自机器的路由表

5.2 在Linux1机器上执行ping命令,进行两两通信

5.3 在其他机器上使用tcpdump抓取每两两通信之间的icmp报文包进行检验

ping 10.0.0.129 –c3

ping 192.168.1.130 –c3

ping 192.168.2.131 –c3

  1. 上述配置若在重启网络服务或者重启系统时都会失效。若想实现永久生效,有以下几种

方法

以Linux1为例

方法一:利用route-eth0文件

vi /etc/sysconfig/network-scripts/route-eth0    #默认不存在此文件,需要手动创建

加入如下内容

192.168.1.0/24 via 10.0.0.129

192.168.2.0/24 via 10.0.0.129

#有两块网卡时,配置该条路由的原则是网卡所在网段为该路由出口

#写到配置里,重启网络服务和重启系统都会生效

 

方法二:利用static-route文件

vi /etc/sysconfig/static-routes    #默认不存在此文件,需要手动创建

加入如下内容

any net 192.168.1.0/24 gw 10.0.0.129

any net 192.168.2.0/24 gw 10.0.0.129

#写到配置里,重启网络服务和重启系统都会生效

 

方法三:利用rc.local文件

vi /etc/rc.local

加入如下内容

route add –net 192.168.1.0/24 gw 10.0.0.129

route add –net 192.168.2.0/24 gw 10.0.0.129

#写到配置里,重启重启系统会生效

 

博主原创文章,转载请务必注明出处

配置Linux实现静态路由的更多相关文章

  1. linux 添加静态路由

    Linux下静态路由修改命令方法一:添加路由route add -net 192.168.0.0/24 gw 192.168.0.1route add -host 192.168.1.1 dev 19 ...

  2. Linux服务器静态路由配置

    转载自:点击打开链接 静态路由是在路由器中设置的固定的路由表.除非网络管理员干预,否则静态路由不会发生变化.由于静态路由不能对网络的改变作出反映,一般用于网络规模不大.拓扑结构固定的网络中.静态路由的 ...

  3. linux添加静态路由

    1.使用route命令,查看本机路由直接输入route回车即可.route 命令参数: add     增加路由 del     删除路由 -net    设置到某个网段的路由 -host   设置到 ...

  4. 路由器基本配置实验,静态路由和动态RIP路由

    实验涉及命令以及知识补充 连线 PC和交换机FastEtherNet接口 交换机和路由器FastEtherNet接口 路由器和路由器Serial接口 serial是串行口,一般用于连接设备,不能连接电 ...

  5. 路由器静态IP的配置及其备份静态路由缺省路由

    静态路由时管理员手动配置并维护的路由.静态路由配置简单,被广泛应用于网络中.静态路由还可以实现负载均衡和路由备份.学习掌握好静态路由的配置是很重要的. 如下图, 首先进入路由器的命令视图,(sys) ...

  6. 路由与交换,cisco路由器配置,浮动静态路由

    设置浮动静态路由的目的就是为了防止因为一条线路故障而引起网络故障.言外之意就是说浮动静态路由实际上是主干路由的备份.例如下图: 假如我们设路由器之间的串口(seria)为浮动静态路由(管理距离为100 ...

  7. ubuntu配置网络和静态路由(界面配置形式)

    目录 网卡配置 静态ip配置 静态路由 外网ip配置(动态获取DHCP) 内网ip和静态路由配置 本文主要针对ubuntu18.0系统进行界面形式配置网络.并配置静态路由. 网卡配置 静态ip配置 打 ...

  8. 《Linux系统静态路由和火墙路由》

    本篇主要写的是关于静态路由表的添加,和如何让你不能上网的主机通过火墙路由表实现上网的功能. 静态路由表: 要是你的主机是2块网卡,并且做了网卡的绑定,依照我下面的方法是成功不了的,你可以去编辑: # ...

  9. Linux 实现静态路由实验

    环境: 四台主机: A主机:eth0 NAT模式 R1主机:eth0 NAT模式,eth1 仅主机模式 R2主机:eth0 桥接模式,eth1仅主机模式 B主机:eth0 桥接模式 手动修改IP地址 ...

随机推荐

  1. h5 Visibility API总结

    最近活动中的小游戏,有涉及页面隐藏或app后台运行时候,暂停游戏的功能,使用了h5的Visibility API,在此总结如下: 两个属性 document.hidden (Read only) 如果 ...

  2. bzoj 2618 半平面交模板+学习笔记

    题目大意 给你n个凸多边形,求多边形的交的面积 分析 题意\(=\)给你一堆边,让你求半平面交的面积 做法 半平面交模板 1.定义半平面为向量的左侧 2.将所有向量的起点放到一个中心,以中心参照进行逆 ...

  3. AE中实现Control中的各种图形工具的方法

    添加命名空间 using ESRI.ArcGIS.SystemUI;using ESRI.ArcGIS.Controls; A类:前面有Controls 后面有tool的工具都可以用同一类的代码实现( ...

  4. 《c程序设计语言》读书笔记-4.1-判断字符串在另一个字符串中的位置

    #include <io.h> #include <stdio.h> #include <string.h> #include <stdlib.h> # ...

  5. 一元多项式的表示及相加(抽象数据类型Polynomial的实现)

    // c2-6.h 抽象数据类型Polynomial的实现(见图2.45) typedef struct // 项的表示,多项式的项作为LinkList的数据元素 { float coef; // 系 ...

  6. webpack最佳入门实践系列(3)

    6.使用图片 6.1.尝试在css中引入图片 在src目录下新建css文件夹,并且在css文件夹下创建app.css文件,在src目录下新建images文件夹,放入一张图片,在app.css中引入这张 ...

  7. webservice soapheader验证方法

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  8. UVA 10205 Stack 'em Up

    直接模拟就好. #include <map> #include <set> #include <list> #include <cmath> #incl ...

  9. Windows基础-使用XAudio2播放音频(本质是WASAPI)

    对于常见的音频播放,使用XAudio2足够了. 时间是把杀猪刀,滑稽的是我成了猪 早在Windows Vista中,M$推出了新的音频架构UAA,其中的CoreAudio接替了DSound.WaveX ...

  10. 利用Com组件产Excel完整操作

    最近公司要批次产出报表,是利用控制台应用程序操作Excel,并设置各种样式. 在网上搜索此类的例子,但是感觉一些用法都已经发生了变化,我用的.net 4.0 ,Microsoft.Office.Int ...