• linux 虚拟机模拟配置网络路由环境-简版


    前言:网络路由不管是平常在家里,还是在公司中,都是必需配置的,所以还是非常重要的,今天小编就给大家做个配置网络路由配置的小实验,仅供大家参考。
     
    一、首先,来简单介绍一下网络路由。
    1. 网络路由:将网络连接起来并将网络信息导向其他网络上,通常网络信息全自动寻找多个路由器,并选择效率最高的路由。
     网络路由器,工作在OSI的第三层络层,连接广域网,外部互联网,分隔广播域,最重要的是它其中的路由表。
    2. 路由表
    (1)路由表:逻辑地址路径问题,选择路由表中到达目标最好的路径转发数据,由多个路由记录组成
    (2)路由表构成:由4项组成部分
    ① 目标网络的网络ID netid ,由此分为三种路由
      主机路由:主机地址
      网络路由:网络ID
      默认路由:未知地址
    ② 子网掩码 netmask 
    ③.接口 interface,发往目标,从哪个接口发出去
    ④.网关 gateway:下一个路由器的临近本路由器的接口的IP
    二、查询、添加、删除路由记录的几个命令
     route(旧命令) 路由管理命令,没保存到配置文件中时,开机无效
    route -n 查看路由信息
    route add -net[/-host] IP/子网 gw gateway 添加网络[/主机]路由
      例:route add -net 10.1.0.0/16 gw 10.2.0.200
    route add default gw gateway 添加默认路由
      例:route add default gw 10.2.0.200
    或route add -net 0.0.0.0 netmask 0.0.0.0 gw gateway 添加默认路由
      例:route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.2.0.200
    route del -net[/-host] IP/子网 删除网络[/主机]路由
      例:route del  -net 10.1.0.0/16
    route del default gw gateway删除默认路由
     
    ② ip route(新命令)
    ip route [show|list] 查看路由信息
    ip route add 选项 via gateway 添加路由
      网络路由:NETWORK/MASK
      主机路由:IP
    例:ip route add 192.168.0.0/24 via 172.16.0.1 加网络路由
      ip route add 192.168.1.13 via 172.16.0.1 加主机路由
      ip route add default via GW  加默认路由,用于路由的边界处
       例:ip route add default via 172.16.0.1
    ip route del TARGET 删除路由
    ip route flush [dev IFACE] [via PREFIX] 清空路由表
    例:ip route flush dev eth0
     
    ③ /etc/sysconfig/network-scripts/route-接口(eth0)(系统默认没有) route加的路由记录的配置文件
    • 注意:需service network restart 生效
    • 两种风格:不能混用
    (a)TARGET via GW (多用)
    如:10.0.0.0/8 via 172.16.0.1
    (b)每三行定义一条路由 (少用)
    ADDRESS#=TARGET
    NETMASK#=mask
    GATEWAY#=GW
     
    ④ netstat -nr  显示内核路由表
     windows查询路由表:route print
     
    三、实验:配置路由环境
    • 实验工具:4台虚拟机(可以克隆虚拟机来完成这个实验,克隆后记得修改MAC地址)
    A机器 R1路由器 R2路由器 B机器
    • 实验过程:
    (1)构思路由环境
     

    (2)准备工作:把4台机器“物理的连到一起”
    ① 根据上图,我们需要分三个网段:VMnet11、VMnet12、VMnet13
     

    ② 分别把A机器、R1路由器两个接口、R2路由器两个接口、B机器放到对应的网段:
    A—>VMnet11
    R1的eth0接口—>VMnet11 
    R1的eth1接口—>VMnet12 
    R2的eth0接口—>VMnet12
    R2的eth1接口—>VMnet13
    B—>VMnet13
    (3)查询接口名,若错误(不是我们习惯的eth0、eth1),修改。
    ① 为了标准化,把centos 7 改为传统命名方式(eth0、eth1)(这一步可以不需要)
    编辑 /boot/grub2/grub.cfg,在第一个linux16的行尾加上net.ifnames=0,重启才有效
     
    ② vim /etc/udev/rules.d/70-persistent-net.rules  编辑网络接口配置文件
    ③ 修改完配置文件一般都不会生效,所以需要下面的操作
    ethtool -i ethX     查询接口对应的网卡驱动名,第一行就是对应的网卡名
    rmmod 网卡名    卸载对应的网卡
    modprobe 网卡名     重启网卡,接口名就改好了
     
    (4)添加需要的IP地址,注意:A、B两个机器需要配置网关,两个路由R1、R2不需要设置网关。
    1.centos 6 中修改IP方法
    vim /etc/sysconfig/network-scripts/ifcfg-ethX  修改网卡配置文件
    重启服务 service network restart 生效
     
    2.centos 7 中修改IP方法
    ① 当然也可以修改配置文件,不推荐,因为7中有很好的命令
    ② nmcli 命令,直接生效,因为该命令用法太多,就不详讲了,大家可以根据下面的命令把IP地址设置好
    nmcli connection add type ethernet con-name eth0 ifname eth0 ipv4.method manual ipv4.addresses 6.1.0.100/16 ipv4.gateway 6.1.0.200  
    添加eth0的ip为6.1.0.100/16,网关为6.1.0.200
    nmcli connection modify eth0 ipv4.method manual ipv4.addresses 6.1.0.100 ipv4.gateway 6.1.0.200
    修改eth0的ip为6.1.0.100/16,网关为6.1.0.200
    nmcli connection up eth0  启用eth0
     
    (5)添加两个路由器的路由记录,可以用上面介绍的命令,根据(1)的构思表添加
    R1:route add default gw 6.2.0.201
    R2:route add default gw 6.2.0.200
    route -n 查询一下
     
    (6)开启两个路由的路由功能,因为是用linux虚拟机作为路由器,所以需打开路由功能。
    echo 1 > /proc/sys/net/ipv4/ip_forward
     
    (7)关闭防火墙
    iptables -vnL 查看防火墙策略
    centos6
    chkconfig iptables off 设置开机不开启防火墙
    servcie iptables stop 关闭防火墙
     
    centos7
    systemctl disable firewalld 设置开机不开启防火墙
    systemctl stop firewalld 关闭防火墙
     
    (8)实验检测
     用ping 命令检测,各段都能ping通。
    A—>VMnet12:ping 6.2.0.201
    A—>VMnet13:ping 6.3.0.100
     
    四、路由协议
    小型网络的配置,可以手动自己设置;大型网络,可以通过路由协议自动生成
    路由协议:R2P(路近,经过路由器越少) OSPF(速度快,综合考虑) BGP EIERP(思科专有)
     
    结语:好了,小实验做完了,虽然实验很简陋,但是其中的原理还是很值得学习的,当然,做实验的过程中会有很多各种各样的错误,有什么搞不定,可以评论一起讨论~
     
  • 相关阅读:
    sql语句常考知识点总结
    服务器搭建
    软件测试面试题
    linux常用命令
    kibana常用查询删除语法
    python从kafka消费数据
    foxmail客户端,写邮件窗口弹不出来
    JMeter学习——测试文件下载
    python中取两个列表中不同的元素
    MySQL主从复制
  • 原文地址:https://www.cnblogs.com/along21/p/7497106.html
Copyright © 2020-2023  润新知