使用虚拟机搭建路由环境

简介:

 学习关于网络的内容,离不开路由,所以博主分享一下如何利用虚拟机搭建具有三个路由器和两个主机的路由环境。

  当然了需要开启五个centos系统,如果虚拟机里没有添加这么多系统,可以复制现有的来打开,具体实现如下:

     1、打开现有cengos所在文件夹,复制所有内容到新文件夹,然后在虚拟机中打开这个文件夹中的CentOS系统。

 

wKiom1mzShWhFqXMAABJVWwZLHs336.jpg

wKiom1mzShaByqXDAADCQjjHRWc027.jpg


     2、由于复制过来的系统与原来的一模一样,所以需要改一下网卡的mac地址再启动虚拟机。设置--》网络适配器--》高级--》生成--》确定

      说明: 如果你的计算机运行内存不是很大,最好把内存改的小一点再启动,要不然同时开五个,根本卡的跑不动


wKioL1mzSfPREKZgAAD5CkmiiYg063.jpg

wKioL1mzSfOg83mxAABifDgPsPE545.jpg


那么接下来就可以开始搭建环境了:

 

一、规划网络(需要四个网络)

    1、五个终端每个对应一个设备,改一下名字方便实验:设置-->选项 即可改名,分别改为A route1 route2 route3 B

wKiom1mzTyWgsNGXAAECsLwAC7E711.jpg  

    2、A和B都只需要一个网卡就行了(移除一个网卡,或者单击虚拟机右下角的小图标断开一个连接)。

    路由器需要两个网卡。

    3、自定义网络

     虚拟网络编辑器-->添加网络-->VMnet11/VMnet12/VMnet13/VMnet14

    将主机A另一个网卡改成自定义VMnet11

    将主机B另一个网卡改成自定义VMnet14

    route1  一个网卡自定义成VMnet11,另一个自定义成VMnet12

    route2  一个网卡自定义成VMnet12,另一个自定义成VMnet13

    route3  一个网卡自定义成VMnet13,另一个自定义成VMnet14

wKioL1mzTwKRFwD3AAEUgAhr_JE987.jpg

二、虚拟机网卡配置:都要关闭NetworkManager服务,避免干扰。

             service NetworkManager stop 临时关闭

             chkconfig NetworkManager off 永久关闭

  主机A:

     centos7:

     vim /etc/sysconfig/network-scripts/ifcfg-ens33  

          BOOTPROTO=none

      IPADDR=10.1.111.111

      PREFIX=16

      GATEWAY=10.1.111.112

      启动:

        systemctl network restart 有时候会出错不生效,可以使用nmcli connection down ens33;nmcli connection up ens33



     centos6:

     vim /etc/sysconfig/network-scripts/ifcfg-eth0

            BOOTPROTO=none

      IPADDR=10.1.111.111

      PREFIX=16

      GATEWAY=10.1.111.112

      启动:service restart network



  主机B:

      同A,只是文件内容的IPADDR、NETWORK、GATEWAY不一样

         

        vim /etc/sysconfig/network-scripts/ifcfg-eth0

            BOOTPROTO=none

      IPADDR=10.4.111.112

      PREFIX=16

      GATEWAY=10.4.111.111

      启动:service restart network

  R1:

       vim /etc/sysconfig/network-scripts/ifcfg-eth0

            BOOTPROTO=none

       IPADDR=10.1.111.112

       PREFIX=16

      路由器不需要配网关,因为之后需要手动添加路由,相当于网关的功能。


      vim /etc/sysconfig/network-scripts/ifcfg-eth1

          BOOTPROTO=none

     IPADDR=10.2.111.111

     PREFIX=16


      配置完之后重启服务service network restart


  R2:

       

       vim /etc/sysconfig/network-scripts/ifcfg-eth0

          BOOTPROTO=none

     IPADDR=10.2.111.112

     PREFIX=16

          


      vim /etc/sysconfig/network-scripts/ifcfg-eth1

          BOOTPROTO=none

     IPADDR=10.3.111.111

     PREFIX=16


      配置完之后重启服务service network restart


  R3:

       

       vim /etc/sysconfig/network-scripts/ifcfg-eth0

          BOOTPROTO=none

     IPADDR=10.3.111.112

     PREFIX=16

         


      vim /etc/sysconfig/network-scripts/ifcfg-eth1

          BOOTPROTO=none

     IPADDR=10.4.111.111

     PREFIX=16


      配置完之后重启服务service network restart


三、添加/删除 路由记录  配置完给防火墙关了: 

         centos6

                chkconfig iptables off  开机即关闭

                servcie iptables stop   当前关闭

         centos7

                systemctl disable firewalld

                systemctl stop firewalld

     

    缺少到达哪个网络的路由记录就添加哪个

    A、B :

          要有默认网关,一般是自动生成的

   R1:

      添加到达VMnet13和VMnet14的路由,语法如下: 

          

          route add -net 目标网络 netmask 子网掩码 gw 网关 dev 接口

              或者route add -net 目标网络/子网掩码 gw 网关 dev 接口

     

   R2 R3  用法同R1,只是添加的路由记录的内容不同,

            R1添加到达VMnet13和VMnet14网络的路由

            R2添加到达VMnet11和VMnet14网络的路由 

            R3添加到达VMnet11和VMnet12网络的路由

   但是对于边界路由器,可以在原本基础上直接只添加默认路由,所以

            R1:

               route add default gw 网关   

            R3:

               route add default gw 网关

   

说明:

    如果主机A只有到达4网络的路由记录,没有到达3的,那么仍然能ping通4,但是不能ping通3,因为它只关心有没有到达目标的路由,而不关心中间经过谁。     


四、开启路由器转发功能

  系统不是直接就能当路由器的,还需要开启一个转发功能。所以R1、R2、R3都需要开启。

      echo 1 > /proc/sys/net/ipv4/ip_forward  这个功能在重启服务后就失效,所以在所有网卡都配置完之后先重启服务,再设置这个功能。

                         j_0080.gif

     如果想要了解更多关于配置网卡及路由的信息,请参照博主的另外一篇文章:

    链接:http://13150617.blog.51cto.com/13140617/1963833
















本文转自lc0108131451CTO博客,原文链接:http://blog.51cto.com/13150617/1963878 ,如需转载请自行联系原作者


相关文章
|
安全 IDE KVM
[ 云计算相关 ] KVM虚拟化平台windows虚拟机迁移到openstack虚拟化平台(KVM虚拟化环境中Windows虚拟机安装Virtio驱动程序)
KVM虚拟化平台windows虚拟机迁移到openstack虚拟化平台(KVM虚拟化环境中Windows虚拟机安装Virtio驱动程序) 因为这也不是我的本职工作,只是这次恰巧碰到了,帮着解决了以下,我就没深究原理了,问我原理可能我也不知道,只是这个操作步骤吧,亲测有效。
457 0
[ 云计算相关 ] KVM虚拟化平台windows虚拟机迁移到openstack虚拟化平台(KVM虚拟化环境中Windows虚拟机安装Virtio驱动程序)
|
2月前
|
Ubuntu Linux 数据安全/隐私保护
如何在windows电脑上搭建Linux环境(手把手教安装虚拟机软件和使用云服务器)
如何在windows电脑上搭建Linux环境(手把手教安装虚拟机软件和使用云服务器)
|
3月前
|
Ubuntu Linux Windows
window10 虚拟机 linux ubuntu 环境下samba服务器配置
本文的目的是在windows 10 系统,使用samba服务实现 windows 10共享虚拟机ubuntu系统的文件。
44 0
|
3月前
|
机器学习/深度学习 Shell 数据安全/隐私保护
深度学习-虚拟机当服务器的安装环境
深度学习-虚拟机当服务器的安装环境
|
3月前
|
Kubernetes Linux 数据安全/隐私保护
k8s安装环境准备:Virtualbox安装CentOS;复制多个CentOS虚拟机
k8s安装环境准备:Virtualbox安装CentOS;复制多个CentOS虚拟机
56 0
|
4月前
|
安全 Ubuntu 虚拟化
VMware12下安装Windows7虚拟机---详细多图教程(沙盒环境)
VMware12下安装Windows7虚拟机---详细多图教程(沙盒环境)
79 0
|
4月前
|
Oracle 关系型数据库 Linux
Vagrant 搭建虚拟机环境
Vagrant 搭建虚拟机环境
43 0
|
5月前
|
NoSQL Linux Redis
linux虚拟机环境快速搭建redis5.x版本的主从集群总结
我在阿里云服务器上曾参与过公司redis集群的搭建,但时间久了,都快忘记当时的搭建过程了,故而决定在虚拟机centOS 7的环境,自行搭建一套redis5.x版本的集群,该版本集群的搭建比较方便,不用再像以前版本那样还得再搞一个 Ruby,5.x版本可直接使用 redis-cli的方式来构建集群。
67 0
|
7月前
|
机器学习/深度学习 Ubuntu 算法
操作系统原理实验2:进程调度(在Ubuntu虚拟机gcc编译环境下
操作系统原理实验2:进程调度(在Ubuntu虚拟机gcc编译环境下
100 0
|
8月前
|
大数据 Linux
【大数据环境准备】(一)VM虚拟机环境准备
装机环境安装,准备3台vm虚拟机,内存配置在4c8u 基础配置
122 0

热门文章

最新文章