IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 网络通信安全部分笔记——静态路由及实验 -> 正文阅读

[网络协议]网络通信安全部分笔记——静态路由及实验

EVE的具体使用

添加新的图

名字自己随便取一个

close lab关掉图

?文件管理中可以找到我们刚刚创建的图,点开它

?可以对我们创建的图进行打开编辑删除

打开图之后空空白白,怎么添加设备呢?直接右键找到Node。

有一大堆设备任你选择,我们这里比如添加思科的设备,Cisco?IOL是思科所有产品的代称,选择Cisco IOL之后既可以配置相应的镜像和

?

?image是镜像的意思,L3和倒数第二个i86是路由器的镜像,L2和i最后一个i86是三层交换机的镜像,这里没有二层交换机的镜像。

Number of nodes to add表示你所需要添加的设备数量

Name就是给这个设备取名

Icon就是更换图标?

比如Switch就表示二层交换机的图标,Switch L3就表示三层交换机的图标。?

我们添加了一台交换机和一台路由器,鼠标靠近设备自动就会有端口可以连线。?

这里可以选择连接的接口。选择好之后点击save?

全选右键开机。

注意!!!在close lab关闭图之前,一定要把所有的设备都关机才能退出(右键stop selected)

静态路由

通信设备:路由器、交换机

交换机分为——二层交换机和三层交换机

路由器和三层交换机都可以认为是三层设备。

在TCP/IP协议中,三层是网络层,二层是数据链路层(之前笔记有)

三层设备:路由器、三层交换机、安全设备(防火墙、防病毒网关、IPS、IDS、waf)

三层路由:

路由是什么?路由有什么作用?

路由决定了通信过程中,数据包如何进行交互

在路由器上面都会有一张表——路由表,路由表上有路由。

路由:理解为一张地图中的一条路径,告诉你数据包在进行交互的过程中,走的到底是哪一条路径。

路由表:理解为一张地图

三层设备中,都有一张路由表,路由表中存储的就是本台设备获取到的路由信息

既然有了路由,也会有相对应的协议

路由协议:静态路由、动态路由

路由协议其实就是路由器进行信息获取的一种方式

路由分类:

①直连路由:三层设备本身自己有的网段

两台路由器直连,建立起来的路由叫做直连路由。
②静态路由: 由管理员或者用户自己手动添加到三层设备上的路由信息
③动态路由:由三层设备之间进行交换得到的路由信息?

三层设备收到一个数据包之后,将会如何处理这个数据包呢?

首先查看该数据包中的地址,拿着目标MAC地址去查找三层设备的路由表,如果路由表中没有目标地址,就把数据包丢弃。如果路由表中有目标地址相关的路由信息,那么就会按照路由表的提示进行数据包的转发。

为什么静态路由是手动添加的,没有很智能,我们还要学习呢?

因为静态路由在小型网络当中比较好用,一旦设备多了起来,手动配置就会显得杂乱繁琐。

所以在大型网络当中基本上是用动态路由。

静态路由的配置(华为/华三)

取三个交换机连接。?

开始配置相关信息

?[Huawei]un in en——关闭日志消息(不然每输入一个命令会弹出很多的消息)

?配置R2左右两个端口的IP地址(小tip1:如图华为设备可以从一个端口模式下直接跳转到另一个端口模式下,如果是思科/锐捷设备是跳不过来? ? ? 小tip2:华为的有些设备是无法识别缩写的,如图进入接口int e0/0/0,有些设备是进不去的,这个时候需要打接口的全称也就是int Ethernet 0/0/0)

同理配置R1,R3(注意配置的时候直连端口必须在同一个网段)

R1和R2所在网段为12.12.12.0,R2和R3所在网段为23.23.23.0,R1和R3不在同一个网段,理论上来说R1是访问不了R3的。(直连网段才可以通信)?

那我们该怎么实现不同网段之间的通信呢?——静态路由

配置命令

ip route-static x.x.x.x y.y.y.y 下一跳IP/出接口(如果是思科/锐捷设备则就ip route没有static)

x.x.x.x:目标网段/地址
y.y.y.y:目标网段的子网掩码

子网掩码A类8位,B类16位,C类24位

现在我们要是实现R1去访问R3,目标网段就是R2和R3所在的网段。

ip route-static 23.23.23.0 255.255.255.0?下一跳IP/出接口

子网掩码是针对目标网段进行一个限制,比如这里匹配的是子网掩码是255.255.255.0,那么只要目标地址处于23.23.23.0这个网段之间就可以了,在一个网段/网络号中,第一个地址被称为网络地址,最后一个地址被称为广播地址,所以0和255不能用,能用的范围是1——254,所以你的目标IP地址只要是23.23.23.1——254都可以。如果子网掩码是4个255,那针对的就不是一个网段,而是一个地址,这个地址就是目标地址。

那么下一跳IP/出接口是什么呢?

下一跳IP:比如我们R1要去访问R3,那么我们R1的下一跳就来到了R2左边的这个接口,?所以12.12.12.2表示的就是R2左边与R1相连接口的地址。

ip route-static 23.23.23.0 255.255.255.0 12.12.12.2(下一跳IP)

出接口:R1向R3发送数据包,数据包最开始出去的接口就是R1的接口

ip route-static 23.23.23.0 255.255.255.0 e0/0/0(出接口)

注意这里写的是接口名,而不是对应的IP地址。

其实华为设备还有一种写法,就是子网掩码可以缩写

ip route-static 23.23.23.0 24?12.12.12.2

?R1配置完成,现在尝试R1去ping R3

?发现还是通不了,为什么还是通不了呢?

因为数据通信是双向的,R1写了R3的路由信息,R1把数据包往下发发给R2,R2有没有R3的路由信息呢?当然有,因为R2和R3是直连的,所以R2不需要去写静态路由。主要问题出在哪里呢,出在R3没法回复R1,因为R3上没有R1的路由信息,所以要在R3上写指向R1的静态路由。我们开始配置R3

?注意配置ip route-static的时候,这里的下一条ip地址是R2的右边接口,对于R3来说要发数据包给R1,它的下一条是R2右边的接口。

这个时候我们再来尝试用R1去pingR3看看

显示通信成功。

如何查看路由表信息呢?

[Huawei]display ip routing-table ? ?//查看路由表 (思科/锐捷查看是show)

?Direct表示直连,Static表示静态,Pre表示度量值(优先级),Cost表示开销值

127.0.0.1本地地址

华为静态路由的优先级/ad值 默认是60?

思科/锐捷中删除信息是用no,华为中是用undo,删除配置的信息?

?刚刚我们都是用下一条IP地址来配置信息,我们现在来尝试全部换成出接口

?R1和R3配置完毕,我们来尝试两者是否能通信。

结果发现还是都通不了?奇了怪了,问题出在哪里呢?

如果是思科/锐捷的设备的话,这种情况下就已经通了,但是华为不行。

如果我们使用的是下一条IP,R1就知道数据直接传输给R2,然后又因为R2和R3是直连的,所以完成通信

如果我们使用的是出接口呢,数据包从R1右边端口出来,给谁呢?给谁不知道了,数据包只知道从R1端口出来,但不知道要发给R2的左边端口,这就是问题所在。

那我们想用接口的方式来实现通信,该怎么做呢???我们来介绍arp代理

arp代理(华为面试题)

配置R2左右两个端口的信息

[Huawei-Ethernet0/0/0]arp-proxy enable ?

开启arp代理之后,再次尝试,通信成功。

所以,最好用下一条IP地址来配置信息,用出接口有点麻烦。


特殊的静态路由:默认路由/缺省路由

使用场景:内网想去访问外网,配置在边界网关路由器上,因为边界网关路由器一边连接这内网,一边连接这外网。

ip route-static 0.0.0.0 0.0.0.0 下一跳IP地址/出接口

当我们像访问的对象具体的IP地址不清楚的时候,我们就可以用默认路由,0.0.0.0 0.0.0.0表示发送给全部,跟上我们的下一跳IP地址。如果我们连下一跳IP地址都不知道该怎么办呢,那就写上我们的出接口,注意,使用出接口华为设备还要开启arp代理。

回环口:测试接口/虚拟接口(不是真实的物理接口)


回环口:测试接口/虚拟接口
[Huawei]int LoopBack 0
[Huawei-LoopBack0] ip add 1.1.1.1 24
用于测试,并且回环口配置完默认是开启的,除非人为shutdown

[Huawei]display ip int br ?查看接口状态

注意:所有设备自带127.0.0.1的回环口

浮动路由

?R5和R6后接了同一台设备假设是R7,为什么要有浮动路由呢,R4去访问R7有两条线路,要么从从上面走,要么从下面走,假设上面那条路出现了故障,那我们就希望通过这条路径去访问R7。浮动路由起的是一个备份的功能。

?配置两次R4路由器,后面分别接R5的左端口和R6的左端口,两个下一跳端口

但注意:既然浮动路由起到的是一个备份的功能,我们应该注意其主从关系,我们要知道哪一台设备是主路由,哪一台设备是备路由,当主路由挂掉之后我们才去启用备路由。

前面提到静态路由默认的ad值是60,我们想让主从关系体现出来,我们可以采用修改优先级的方式。

[Huawei]ip route-static 10.10.10.10 32 46.46.46.6 preference 100 ?修改静态路由优先级

如图这里把ad值修改成了100,注意,ad值是越小越优先,这样修改意味着,把这条线路改成了备路由,同时另外一条线路也就自然成为了主路由。?

[Huawei]display ip routing-table protocol static——显示静态路由配置信息

如果是[Huawei]display ip routing-table的话是所有的都查看

?RD表示正在使用,R表示还没使用

?我们尝试把主路由shutdown掉,我们会发现之前的备路由现在flags变成了RD也就是成为了主路由

静态路由实验

拓扑结构:

实验需求:

?完成个路由器的基本配置,实现各直连设备之间可以互ping对方

?手动配置PC1和PC2

?注意在整个网络中,PC的网关是一定要配置的,写网关的时候默认是一条静态路由,网关其实就是指向数据包传输的方向。PC1的网关就是R1左边端口的IP地址。

测试PC1与PC2两主机之间的连通性

?PC1和PC2连网段都不同,肯定是不能通信的,所以需要写路由

来思考一个问题,要想实现PC1与PC2的通信,至少要写几条静态路由???

?PC1想去ping PC2,PC1与R1直连,把数据包发给了R1,R1也想把数据包发给PC2,但R1上面没有PC2的目标地址,所以得写一条静态路由指向PC2的网段,R1就把包继续往下转发,发给了R2,R2也没有PC2的网段信息,所以R2也得写一条静态路由指向PC2,R2把包往下转发给R3,因为R3跟PC2直连,有PC2的路由信息,所以不用写路由。因为通信是双向的,同理PC2回复也需要配置R3,R2,所以过去要写R1,R2回来要写R3,R2,加起来一共四条静态路由。所以要实现PC1与PC2的通信,至少要写四条静态路由。(PC是没有办法写路由的,PC的网关默认就相当于是一条静态路由)

在R1上创建一条到达对端主机PC2所在网络的静态路由,要求使用下一条方式实现

在R3上创建一条到达主机PC1所在网络的静态路由,要求使用出接口方式实现

观察R1和R3上的路由表,仔细观察使用出接口与使用下一跳方式的静态路由表项的不同

我们发现两者的flags是不同的,R1使用的是下一跳的方式,flags是RD,表示有调用,R2使用的是出接口的方式,flags是D,表示没有调用。?

添加合适的配置,实现PC1与PC2之间的连通性,使用ping进行测试

刚刚写了R1到PC2的静态路由,R3到PC1的静态路由,现在还需要写R2到PC1和PC2的两条静态路由才行。

?这个时候还是不能通信,因为我们R3上的静态路由使用的是出接口的方式,我们还需要在R2右边的e0/0/1接口开启arp代理,arp代理的作用就是帮数据包进行寻址。

再次尝试PC1能不能ping通PC2,发现成功。

分别在PC1和PC2上使用tracert观察两主机通信过程的传输路径

PC1:?

显示的是进入的端口

tracert ip地址——常用来排错

假设R2连接R3网段关掉

?添加合适的配置,实现PC1和PC2都可以远程登陆到各个路由器上

请问:如上配置完之后,是否能够实现PC1和R3的通信?

测试结果发现又通不了 ——原因是PC1将数据包发送给R1,但是R1只有PC2的路由信息,并没有R3的路由信息,既然没有R3的路由信息,只能丢弃数据包,无法实现通信。

配置R1:

配置R3:

?注意看这里R3的配置的目标网段是R1和R2之间的网段,为什么类?因为之前在R3上配过pc1和R1之间的网段了。这里只需要配R1和R2之间的网段就好。

所以,如果想实现全网通信,需要配置六条静态路由。

添加合适的配置,实现PC1和PC2都可以远程登录到各个路由器上

华为设备远程登陆?

[Huawei]user-interface vty 0 4 就相当于思科Switch(config)#line vty 0 4 ? -- 进入虚拟线路0-4

华为有两个认证方式,一个是password认证,一个是3a认证

3a认证,空认证,password认证?

[Huawei-ui-vty0-4]authentication-mode 选择认证模式(authentication认证,mode模式)

password认证:

[Huawei-ui-vty0-4]authentication-mode password

[Huawei-ui-vty0-4]set authentication password ciphor XXX(密码) 设置认证password的密码为XXX

[Huawei-ui-vty0-4]user privilege level 3 设置用户权限等级为3

配置完成

用R2尝试远程登陆R1

成功 ——输入密码之后就可以登陆了实现远程登陆了

删除R1和R3上的静态路由条目,使用默认路由实现PC1与PC2之间的连通性

先来删除R1、R2、R3上的静态路由条目

这个时候尝试PC1去pingPC2肯定是通不了的。

?使用默认路由实现PC1与PC2之间的连通性——配置R1和R3

?继续尝试通信发现还是通信不了,为什么呢??

因为我们刚刚把R2的静态路由也删掉了(吃饱了闲的不看实验要求)

为什么R2是写静态路由不能写两条默认路由来配置呢?——因为数据包如果从一个方向传入,R2不仅会将数据往下传递也可能往回传递那就形成了环路,导致链路的瘫痪。

R1有默认路由,指向所有,但是不管指向哪里,数据包都要发给R2,R2需要你指向网段的路由信息,所以R2上的两条静态路由是不能缺少的。

使用思科设备完成实验(EVE环境)

静态路由实验的图已经搭好

注意图中有一台华三设备

PC设备注意点:?

设置IP地址:

自动显示IP地址和子网掩码——缺少了网关

如果在ip地址的后面再跟上网关,就自动显示ip地址,子网掩码和网关?

?

?

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-10-03 17:24:00  更:2021-10-03 17:24:47 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 2:52:15-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码