1. 网络路由:将网络连接起来并将网络信息导向其他网络上,通常网络信息全自动寻找多个路由器,并选择效率最高的路由。
2. 路由表
① 目标网络的网络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 显示内核路由表
(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(思科专有)
结语:好了,小实验做完了,虽然实验很简陋,但是其中的原理还是很值得学习的,当然,做实验的过程中会有很多各种各样的错误,有什么搞不定,可以评论一起讨论~
- 在Linux虚拟机下配置jdk的环境变量
1.到Oracle公司的官网里下载好jdk,网址 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133 ...
- 虚拟机Linux系统下配置网络
虚拟机上安装Redhat9.0后是没有网络的,而本来的Windows系统是可以上网的,此时想在Redhat上网就需要在Linux系统上配置网络,以下是笔者自己配置的一点心得. 1.电脑本机系统打开网络 ...
- Windows下Linux虚拟机的配置以及Win10 linux子系统开启
本文所用资料下载地址为: 链接:链接:https://pan.baidu.com/s/1iiI2ebAnomKrBpvSg05w2A 提取码:7giz 复制这段内容后打开百度网盘手机App,操作更方便 ...
- Ubuntu Linux下如何配置Android开发环境
下载和安装Win7系统Android开发环境中讲了怎样在Win7系统中安装Android开发环境,那么怎样在Linux系统中配置Android开发环境呢?本篇文章就将演示如何使用Eclipse.And ...
- Linux 使用nmcli配置网络
Linux 使用nmcli配置网络 前提: 在虚拟机中添加一张桥接模式的网卡,如果是VirtualBox虚拟机中要shutdown才能添加. 1.启动NetworkManager工具,安装nmcli命 ...
- 在Linux虚拟机下配置tomcat
1.到Apache官网下载tomcat http://tomcat.apache.org/download-80.cgi 博主我下载的是tomcat8 博主的jdk是1.8 如果你们的jdk是1.7或 ...
- Linux系统下配置网络、JAVA环境,配置tomcat,mysql
一.配置网络 1.进入自己的系统,并跳转到network-scripts 2.编辑 3.查看系统的信息 4.将其添加到刚刚的if-cfg-eth0中 5.重启网络 6.这个时候ping百度还是ping ...
- Linux虚拟机与主机网络连接配置与文件传输
网络配置 对于VMware虚拟机 1. 设置linux系统的网络配置,如下(NAT为默认配置,这里采用这一配置) 2. 主机中配置本地连接-属性-共享-勾选红框配置项,如下: 3.重启虚拟机. ...
- linux(CentOS7) 之 克隆虚拟机并配置网络(固定ip)
克隆机器 原机关机状态下,克隆. 下一步 选择当前状态,下一步 选择创建完整克隆,下一步 设置虚拟机名称(完成后可以修改).克隆机安装位置,下一步 等待克隆完成 克隆完成 配置网络 添加网卡(因为物理 ...
- 走进Spark生态圈:环境的安装与配置
什么是Spark? Apache Spark 是一种大规模数据处理的快速通用引擎,使用基于内存的处理方式,较与MapReduce而言,解决了其shuffle多次IO操作带来的效率低问题,从而达到快速的 ...
- SimpleMembership
最近2个月以来,一直在学习MVC,从最开始的2,一直到最新的4.从原来的aspx到现在的Razor引擎,越学越开心,越学越上瘾. 最近为新项目做准备,打算用MVC4,VS2012+SQL2012,反正 ...
- [转载] 谷歌技术"三宝"之谷歌文件系统
转载自http://blog.csdn.net/opennaive/article/details/7483523 题记:初学分布式文件系统,写篇博客加深点印象.GFS的特点是使用一堆廉价的商用计算机 ...
- [转]Spring.Net介绍
转自:http://www.cnblogs.com/cilence/archive/2013/02/21/2920478.html Spring.NET下载地址:http://www.springfr ...
- ssm+maven 框架整合
开篇简言:maven的存在让ssm框架简单了一个量级,BaseDao的存在又让项目简化了一个量级,希望看到这篇文章的都能深入的了解上面两项,好了,进入主题,构造一个ssm框架 1.准备工具 mave ...
- [树莓派(raspberry pi)] 01、在linux环境下给树莓派安装系统及入门各种资料
1.预准备 进入帮助页面https://www.raspberrypi.org/help/,可以直接看到GET START WITH PASPBERRY PI,点击进入: 接下来会引导你检查配件是否齐 ...
- OC语言的Block与Protocol(协议)
Block ● Block封装了一段代码,可以在任何时候执⾏行 ● Block可以作为函数参数或者函数的返回值,⽽而其本⾝身又可以带输⼊入参数或返回值. ● 苹果官⽅方建议尽量多⽤用block.在多线 ...
- 数字三角形-poj
题目要求: 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 在上面的数字三角形中寻找在上面的数字三角形中寻找一条从顶部到底边的路径,使得路径上所经过的数字之和最大.路径上的每一步都只能往左 ...
- 对java多线程里Synchronized的思考
Synchronized这个关键字在多线程里经常会出现,哪怕做到架构师级别了,在考虑并发分流时,也经常会用到它.在本文里,将通过一些代码实验来验证它究竟是"锁"什么. 在启动多个线 ...
- Web Mining and Big Data 公开课学习笔记 ---lecture0
0.1 课程主要内容:Big data technologies , Machine Learning and AI 0.6 OUTLINE: predict the future using ...