静态路由与默认路由和实验以及ARP工作原理

2024-08-20 17:52

本文主要是介绍静态路由与默认路由和实验以及ARP工作原理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

1.静态路由和默认路由

1.1 静态路由

1.2 默认路由

1.3 主要区别总结

2.实验

2.1 实验

2.1.1 实验top

2.1.2 实验要求

2.2 实验配置

2.2.1 ip信息配置

2.2.2 配置静态

2.2.3配置默认

2.3 实验结果查看

3.为什么第一个ping会显示丢包?

3.1 ARP 工作机制

3.2 丢包原因

3.3 解决办法

3.4 总结


1.静态路由和默认路由

1.1 静态路由

(1)定义: 静态路由是手动配置的路由,网络管理员明确指定从一个网络到另一个网络的路径。

(2)配置方式: 需要手动在路由器上输入具体的路由命令,指定目标网络和下一跳(下一台路由器的地址)。

(3)优点:

  • 安全: 由于手动配置,不容易受到外部影响。
  • 控制: 管理员可以完全控制流量路径。
  • 简单: 在小型网络中配置简单。

(4)缺点:

  • 管理复杂: 对于大型网络,管理和维护变得复杂。
  • 灵活性差: 网络拓扑变化时需要手动更新路由表。

(5)示例:

  • ip route-static 192.168.2.0 24 192.168.1.1
  • 这里,192.168.2.0 24 是目标网络,192.168.1.1 是下一跳路由器的地址。

1.2 默认路由

(1)定义: 默认路由是一种特殊的静态路由,指明数据包在路由表中没有匹配项时应该发送到的路径。

(2)配置方式: 需要手动配置,通常用于将未知目的地的数据包发送到一个上级路由器或网关。

(3)优点:

  • 简单: 只需要配置一条默认路由即可覆盖所有未知的目的地。
  • 灵活: 适用于网络中的边缘路由器,连接外部网络(如互联网)。

(4)缺点:

  • 安全风险: 可能会将不必要的流量发送到默认路由指定的网关,增加潜在的安全风险。
  • 依赖性: 默认路由依赖于上级路由器的配置和性能。

(5)示例:

  • ip route-static 0.0.0.0 0 192.168.1.1
  • 这里,0.0.0.0 0表示所有没有在路由表中匹配到的目的地,192.168.1.1 是默认网关的地址(下一跳)。

1.3 主要区别总结

  • 配置方式: 静态路由需要为每个目标网络手动配置,而默认路由只需配置一条用于所有未匹配的目的地。
  • 应用场景: 静态路由多用于网络内部的特定路径控制,默认路由常用于将外部流量引导至一个网关或上级路由器。
  • 管理难度: 静态路由在大型网络中管理复杂,默认路由相对简单。

注意:默认的静态路由只能设置一条,2条的话将导致数据不通。

2.实验

2.1 实验

2.1.1 实验top

2.1.2 实验要求

(1)参考top图,为每个设备配置ip地址。

(2)AR1,AR2,AR3配置静态路由,AR4配置静态,使3个PC互通。

(2)AR1,AR2,AR3更换为默认路由,AR4保持不变,使3个PC互通。

2.2 实验配置

2.2.1 ip信息配置

pc1

pc2

pc3

AR1

<Huawei>system-view

[Huawei]sysname AR1

[AR1]undo info-center enable

[AR1]int g0/0/1

[AR1-GigabitEthernet0/0/1]ip add 192.168.0.254 24

[AR1-GigabitEthernet0/0/1]int g0/0/0

[AR1-GigabitEthernet0/0/0]ip add 100.1.1.1 30

AR2

<Huawei>system-view

[Huawei]sysname AR2

[AR2]int g0/0/0

[AR2-GigabitEthernet0/0/0]ip add 192.168.1.254 24

[AR2-GigabitEthernet0/0/0]int g0/0/1

[AR2-GigabitEthernet0/0/1]ip add 101.1.1.1 30

AR3

<Huawei>sys

Enter system view, return user view with Ctrl+Z.

[Huawei]sys AR3

[AR3]int g0/0/0

[AR3-GigabitEthernet0/0/0]ip add 192.168.2.254 24

[AR3-GigabitEthernet0/0/0]int g0/0/2

[AR3-GigabitEthernet0/0/2]ip add 102.1.1.1 30

AR4

<Huawei>sys

[Huawei]sys AR4

[AR4]int g0/0/0

[AR4-GigabitEthernet0/0/0]ip add 100.1.1.2 30

[AR4-GigabitEthernet0/0/0]int g0/0/1

[AR4-GigabitEthernet0/0/1]ip add 101.1.1.2 30

[AR4-GigabitEthernet0/0/1]int g0/0/2

[AR4-GigabitEthernet0/0/2]ip add 102.1.1.2 30

2.2.2 配置静态

[AR1]ip route-static 0.0.0.0 0 100.1.1.2

[AR2]ip route-static 0.0.0.0 0 101.1.1.2

[AR3]ip route-static 0.0.0.0 0 102.1.1.2

[AR4]ip route-static 192.168.0.0 24 100.1.1.1

[AR4]ip route-static 192.168.1.0 24 101.1.1.1

[AR4]ip route-static 192.168.2.0 24 102.1.1.1

配置完成,做连通性测试,到2.3。

2.2.3配置默认

删除上面配置信息,在前面加undo即可删除。

[AR1]ip route-static 101.1.1.0 255.255.255.252 100.1.1.2

[AR1]ip route-static 102.1.1.0 255.255.255.252 100.1.1.2

[AR1]ip route-static 192.168.1.0 255.255.255.0 101.1.1.2

[AR1]ip route-static 192.168.2.0 255.255.255.0 101.1.1.2

[AR2]ip route-static 100.1.1.0 255.255.255.252 101.1.1.2

[AR2]ip route-static 102.1.1.0 255.255.255.252 101.1.1.2

[AR2]ip route-static 192.168.0.0 255.255.255.0 101.1.1.2

[AR2]ip route-static 192.168.2.0 255.255.255.0 101.1.1.2

[AR3]ip route-static 100.1.1.0 255.255.255.0 102.1.1.2

[AR3]ip route-static 101.1.1.0 255.255.255.0 102.1.1.2

[AR3]ip route-static 192.168.0.0 255.255.255.0 102.1.1.2

[AR3]ip route-static 192.168.1.0 255.255.255.0 102.1.1.2

配置完成,做连通性测试,到2.3。

2.3 实验结果查看

在pc2 ping pc1和pc3做连通测试

pc1 ping pc3

3.为什么第一个ping包会显示丢包?

因为第一个包ARP解析未完成

3.1 ARP 工作机制

        当 PC2 发送一个数据包到一个目标 IP 地址(如 192.168.2.1),但它的 ARP 缓存中还没有目标 IP 地址对应的 MAC 地址时,PC2 需要先发送一个 ARP 请求来获取目标的 MAC 地址。这个过程如下:

(1)发送 ARP 请求:

        PC2 发送一个广播 ARP 请求,询问网络中哪台设备拥有 192.168.2.1 的 IP 地址,并要求返回其 MAC 地址。

(2)等待 ARP 响应:

        目标设备(192.168.2.1)收到 ARP 请求后,回应其 MAC 地址。

(3)缓存 ARP 结果:

        PC2 接收到 ARP 响应后,会将 IP-to-MAC 对应关系缓存到 ARP 表中。

(4)继续发送数据包:

        在获取到目标 MAC 地址后,PC2 才能继续将 ICMP(ping)数据包发送到目标设备。

3.2 丢包原因

        在上述过程中,ARP 请求和响应的完成需要时间。如果 PC2 在发送第一个 ping 数据包时还没有完成 ARP 解析,那么这个数据包可能会丢失,因为没有有效的 MAC 地址来发送。

        因此,第一次 ping 出现丢包是因为 ARP 解析过程还未完成,而后续的 ping 请求则由于 ARP 缓存已建立,因此能够正常通信。

3.3 解决办法

(1)忽略首次丢包:

        这是一个正常现象,通常可以忽略首次 ping 的丢包,因为后续的通信将正常进行。

(2)提前触发 ARP:

        如果需要确保没有丢包,可以在测试之前通过其他方式(如手动 ping)触发 ARP 解析,确保 ARP 缓存已建立。

(3)延长超时时间:

        在一些严格的网络环境中,可以调整 ping 的超时时间,以便在 ARP 解析完成后重新发送请求。

3.4 总结

        第一次 ping 丢包通常是由于 ARP 解析未完成这是正常的网络行为。如果这仅在第一个包上发生,而且后续通信正常,这说明网络配置和通信是正常的。你可以放心继续使用网络而无需进一步担心这个现象。

这篇关于静态路由与默认路由和实验以及ARP工作原理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1090767

相关文章

Nginx中配置使用非默认80端口进行服务的完整指南

《Nginx中配置使用非默认80端口进行服务的完整指南》在实际生产环境中,我们经常需要将Nginx配置在其他端口上运行,本文将详细介绍如何在Nginx中配置使用非默认端口进行服务,希望对大家有所帮助... 目录一、为什么需要使用非默认端口二、配置Nginx使用非默认端口的基本方法2.1 修改listen指令

Python中的filter() 函数的工作原理及应用技巧

《Python中的filter()函数的工作原理及应用技巧》Python的filter()函数用于筛选序列元素,返回迭代器,适合函数式编程,相比列表推导式,内存更优,尤其适用于大数据集,结合lamb... 目录前言一、基本概念基本语法二、使用方式1. 使用 lambda 函数2. 使用普通函数3. 使用 N

MyBatis-Plus 与 Spring Boot 集成原理实战示例

《MyBatis-Plus与SpringBoot集成原理实战示例》MyBatis-Plus通过自动配置与核心组件集成SpringBoot实现零配置,提供分页、逻辑删除等插件化功能,增强MyBa... 目录 一、MyBATis-Plus 简介 二、集成方式(Spring Boot)1. 引入依赖 三、核心机制

Go语言使用Gin处理路由参数和查询参数

《Go语言使用Gin处理路由参数和查询参数》在WebAPI开发中,处理路由参数(PathParameter)和查询参数(QueryParameter)是非常常见的需求,下面我们就来看看Go语言... 目录一、路由参数 vs 查询参数二、Gin 获取路由参数和查询参数三、示例代码四、运行与测试1. 测试编程路

redis和redission分布式锁原理及区别说明

《redis和redission分布式锁原理及区别说明》文章对比了synchronized、乐观锁、Redis分布式锁及Redission锁的原理与区别,指出在集群环境下synchronized失效,... 目录Redis和redission分布式锁原理及区别1、有的同伴想到了synchronized关键字

通过配置nginx访问服务器静态资源的过程

《通过配置nginx访问服务器静态资源的过程》文章介绍了图片存储路径设置、Nginx服务器配置及通过http://192.168.206.170:8007/a.png访问图片的方法,涵盖图片管理与服务... 目录1.图片存储路径2.nginx配置3.访问图片方式总结1.图片存储路径2.nginx配置

更改linux系统的默认Python版本方式

《更改linux系统的默认Python版本方式》通过删除原Python软链接并创建指向python3.6的新链接,可切换系统默认Python版本,需注意版本冲突、环境混乱及维护问题,建议使用pyenv... 目录更改系统的默认python版本软链接软链接的特点创建软链接的命令使用场景注意事项总结更改系统的默

Linux中的HTTPS协议原理分析

《Linux中的HTTPS协议原理分析》文章解释了HTTPS的必要性:HTTP明文传输易被篡改和劫持,HTTPS通过非对称加密协商对称密钥、CA证书认证和混合加密机制,有效防范中间人攻击,保障通信安全... 目录一、什么是加密和解密?二、为什么需要加密?三、常见的加密方式3.1 对称加密3.2非对称加密四、

setsid 命令工作原理和使用案例介绍

《setsid命令工作原理和使用案例介绍》setsid命令在Linux中创建独立会话,使进程脱离终端运行,适用于守护进程和后台任务,通过重定向输出和确保权限,可有效管理长时间运行的进程,本文给大家介... 目录setsid 命令介绍和使用案例基本介绍基本语法主要特点命令参数使用案例1. 在后台运行命令2.

Django中的函数视图和类视图以及路由的定义方式

《Django中的函数视图和类视图以及路由的定义方式》Django视图分函数视图和类视图,前者用函数处理请求,后者继承View类定义方法,路由使用path()、re_path()或url(),通过in... 目录函数视图类视图路由总路由函数视图的路由类视图定义路由总结Django允许接收的请求方法http