配置策略路由实战 附带基础网络知识

2024-08-22 18:52

本文主要是介绍配置策略路由实战 附带基础网络知识,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

背景

作为一个软件开发人员,不可能做到只负责业务开发工作,一旦功能上线或者系统切换就会遇到非常多考验开发人员个人能力的场景,网络调整就是非常重要的一个方面,如果你在系统上线的过程中无法处理一些简单的网络问题或者听不懂网工在说什么,那么就会导致自己负责的工作很难推进,因此我个人觉得 应该去掌握一些基础的网络知识来帮助自己更好的应对除了开发工作外的一些其他工作内容。

目标

当客户定点 拥有一个相对复杂的网络环境 如何让私有化部署的服务器正确的访问你想要访问的网络。

基础知识

路由器(Router)

功能:

  • 连接不同的网络(如局域网和广域网),转发数据包到目的地。
  • 选择最佳路径来传输数据包。
  • 提供网络地址转换(NAT)功能,将内部网络地址转换为公共地址。
  • 可以提供防火墙和安全功能。

工作原理:

  1. 数据包转发: 路由器使用路由表决定数据包的最佳转发路径。路由表包含目的地址和下一跳的映射信息。
  2. 路径选择: 路由器通过各种路由协议(如RIP、OSPF、BGP)动态更新路由表,选择最佳路径。
  3. 网络地址转换(NAT): 路由器可以将内网地址转换为公网地址,从而使多个设备共享一个公网IP。
  4. 数据包处理: 路由器接收数据包,根据目标IP地址查找路由表,然后将数据包转发到下一跳的路由器或最终目标。

路由器工作在网络层  数据段包含着 目标ip地址 和 源ip 地址 同步路由表匹配下一跳的位置,它通常用来连接不同网络 可以比作内局域网 到 互联网 或者其他内网的出口。

交换机(Switch)

功能:

  • 连接同一网络中的设备(如计算机、打印机),使它们能够相互通信。
  • 根据MAC地址转发数据包,提高网络效率。

工作原理:

  1. 数据包转发: 交换机根据数据包中的MAC地址来决定如何转发数据。它维护一个MAC地址表(也称为转发表),记录每个MAC地址对应的端口。
  2. 学习: 当交换机收到一个数据包时,它会读取数据包的源MAC地址,并将其与接收到数据包的端口关联,更新MAC地址表。
  3. 广播和多播: 如果交换机不知道目标MAC地址,它会将数据包广播到所有端口,直到找到目标设备。对于多播流量,交换机会转发数据包到相关的多个端口。
  4. 帧过滤: 交换机只将数据包发送到目的设备所在的端口,而不是广播到所有端口,从而减少网络拥堵,提高效率。

工作在数据链路层,数据帧包含 目标mac地址和源mac地址 交换机会维护一个mac地址表,通过广播到所有端口来获取未知的mac地址并缓存起来,交换机会自动更新mac地址,由于它无法根据ip来进行转发 因此它使用在局域网内部的数据包转发

网络协议相关

IP 地址: 互联网协议地址(IP 地址)是分配给网络设备的唯一标识符,用于在网络中定位和识别设备。IPv4 地址是32位的,通常表示为四个由点分隔的十进制数(如192.168.1.1)。

子网掩码: 子网掩码用于确定IP地址的网络部分和主机部分。它通过将IP地址与子网掩码进行与运算,帮助路由器识别网络的范围和设备的具体位置(如255.255.255.0)(用来广播确定哪些ip是属于同一个网段的)。

网关: 网关是网络设备的接口,用于将数据从一个网络转发到另一个网络,通常是连接内部网络和外部网络的设备。它通常是一个路由器,用于处理不同网络之间的通信。

DNS 服务器: 域名系统(DNS)服务器将域名(如www.example.com)转换为IP地址(如192.0.2.1),使得用户可以通过易记的域名访问互联网资源,而不需要记住复杂的IP地址。

认识企业路由器

[无线企业路由器] 地址组的设置与管理 - TP-LINK商用网络

[无线企业路由器] 策略选路功能设置指导 - TP-LINK商用网络

[R系列企业VPN路由器] 策略路由(选路)功能设置指导 - TP-LINK商用网络

[TL-ER6520G V1] 某企业网络配置实例 - TP-LINK商用网络

实战

我们假设定点 需要同时连接  医保网 公卫网 互联网 以及卫健委网络

他们的网段都是不同的 分别连接到一个企业路由器的四个wan口

我们先进入路由器的管理页面

进入对象管理 地址管理 地址 创建地址段对象 上面定义了一个客户端的地址段 ,假设我们有一个公卫网ip 10.10.100.100 要访问  因此我们可以在创建一个地址对象 IP段为 10.10.100.2 - 10.10.100.253  起个名称 gw 

然后关联地址组 创建地址组对象  并关联地址对象 对这个地址组设置策略相当于这个地址段全部生效

组名称 自己起一个能代表的   地址名称是上面创建的地址独享也就是关联的地址段,这样设置完成之后 就可以直接个地址组设置策略路由。

策略路由 自上而下依次匹配 匹配到一个生效的策略后 下面的策略将不会在生效。

首先先匹配源地址 这里可以写任意组 或者 你自己定义的表示本地连接路由器设备的地址组,这里可能会匹配到多个 然后 因为任意组 每个都会匹配 但是 你的目的地址是不同的 上面创建了公卫地址 在给公卫地址创建一个组 这里的目的地址就可以设置为公卫组。

这样当你在ip为 192.168.20.2-192.168.20.253的地址上 去访问10.10.100.100就会匹配到这个策略上去,然后呢 生效接口 就是请求的出口。

上面举的例子是 四个wan口 假设 wan4 被分配的地址是 公卫这个网段的 那么我们就设置生效接口为wan4口  流量就会被路由器转发到wan4口 出去了 这就是一个简单策略路由设置过程。

概念解释

1. 静态路由(Static Routing)

定义

静态路由是手动配置的路由规则,网络管理员手动输入路由条目来指定数据包的转发路径。每个路由条目都明确指定了目的地和下一跳路由器(或网关)。

特点
  • 固定性:路由规则是固定的,除非管理员手动更改,路由不会自动调整。
  • 简单性:配置简单,适用于网络拓扑较小或变化不频繁的环境。
  • 管理:适合在网络规模较小或流量模式稳定的情况下使用。需要手动添加和更新路由信息。
  • 不支持基于流量的决策:静态路由无法根据流量的不同特征(如源 IP、目的 IP、端口等)做出动态的路由决策。
使用场景
  • 网络拓扑简单,网络变化不频繁。
  • 小型或家庭网络。
  • 对于特定目的地或网络路径有固定需求的环境。

2. 策略路由(Policy-Based Routing, PBR)

定义

策略路由是一种基于流量的决策机制,通过设置策略来决定数据包的转发路径。路由决策不仅依赖于目的地 IP 地址,还可以基于源 IP 地址、流量类型、协议类型、端口号等多个因素。

特点
  • 灵活性:可以根据流量特征(如源 IP、目的 IP、应用协议等)配置复杂的路由规则。
  • 动态性:支持动态路由决策,可以根据实时流量和网络条件做出调整。
  • 复杂性:配置较为复杂,需要精确设置策略规则,适用于大规模和动态变化的网络环境。
  • 负载均衡:可以实现流量负载均衡,将流量根据策略分配到多个路径上,提高带宽利用率和网络冗余性。
使用场景
  • 网络拓扑复杂,流量模式多样化。
  • 需要根据应用、用户、服务质量等因素灵活配置路由。
  • 需要负载均衡或优化网络流量的环境。
  • 例如,业务流量需要通过不同的 ISP 提供商以实现负载均衡或冗余备份。

总结

  • 静态路由:简单、固定,适合网络拓扑简单且变化不大的场景,配置和维护较为简单。
  • 策略路由:灵活、动态,适合网络环境复杂、多变的场景,支持基于流量特征的路由决策和负载均衡。

测试 命令

tracert -d 命令的结果有助于网络诊断和故障排除,具体用途包括:

  1. 确定网络路径:显示数据包从你的计算机到达目标主机所经过的每一个中转节点(路由器)的 IP 地址。这有助于了解数据包在网络中的流动路径。

  2. 诊断网络延迟:每个中转节点的响应时间会被显示出来,帮助你识别在网络路径中是否存在延迟或瓶颈。这样可以确定延迟是出现在你的本地网络、ISP 还是远程服务器之间。

  3. 定位网络问题:如果你遇到连接问题,tracert -d 可以帮助你确定是否在网络路径中的某个节点上发生了故障或延迟。例如,如果某个中转节点的响应时间异常高或没有响应,这可能是网络问题的来源。

  4. 优化网络配置:网络管理员可以使用 tracert -d 来检查数据流的路径,帮助优化网络配置或解决配置问题。

Tracing route to www.example.com [93.184.216.34]
over a maximum of 30 hops:1     1 ms     1 ms     1 ms  192.168.1.12    10 ms    10 ms    10 ms  203.0.113.13    20 ms    20 ms    20 ms  203.0.113.104    30 ms    30 ms    30 ms  93.184.216.34Trace complete.

可以用上面的命令 来追踪每一跳的详细信息。

这篇关于配置策略路由实战 附带基础网络知识的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

MyBatis分页查询实战案例完整流程

《MyBatis分页查询实战案例完整流程》MyBatis是一个强大的Java持久层框架,支持自定义SQL和高级映射,本案例以员工工资信息管理为例,详细讲解如何在IDEA中使用MyBatis结合Page... 目录1. MyBATis框架简介2. 分页查询原理与应用场景2.1 分页查询的基本原理2.1.1 分

mybatis映射器配置小结

《mybatis映射器配置小结》本文详解MyBatis映射器配置,重点讲解字段映射的三种解决方案(别名、自动驼峰映射、resultMap),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定... 目录select中字段的映射问题使用SQL语句中的别名功能使用mapUnderscoreToCame

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解

《使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解》本文详细介绍了如何使用Python通过ncmdump工具批量将.ncm音频转换为.mp3的步骤,包括安装、配置ffmpeg环... 目录1. 前言2. 安装 ncmdump3. 实现 .ncm 转 .mp34. 执行过程5. 执行结

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

Vite 打包目录结构自定义配置小结

《Vite打包目录结构自定义配置小结》在Vite工程开发中,默认打包后的dist目录资源常集中在asset目录下,不利于资源管理,本文基于Rollup配置原理,本文就来介绍一下通过Vite配置自定义... 目录一、实现原理二、具体配置步骤1. 基础配置文件2. 配置说明(1)js 资源分离(2)非 JS 资

MySQL8 密码强度评估与配置详解

《MySQL8密码强度评估与配置详解》MySQL8默认启用密码强度插件,实施MEDIUM策略(长度8、含数字/字母/特殊字符),支持动态调整与配置文件设置,推荐使用STRONG策略并定期更新密码以提... 目录一、mysql 8 密码强度评估机制1.核心插件:validate_password2.密码策略级

ShardingProxy读写分离之原理、配置与实践过程

《ShardingProxy读写分离之原理、配置与实践过程》ShardingProxy是ApacheShardingSphere的数据库中间件,通过三层架构实现读写分离,解决高并发场景下数据库性能瓶... 目录一、ShardingProxy技术定位与读写分离核心价值1.1 技术定位1.2 读写分离核心价值二

Three.js构建一个 3D 商品展示空间完整实战项目

《Three.js构建一个3D商品展示空间完整实战项目》Three.js是一个强大的JavaScript库,专用于在Web浏览器中创建3D图形,:本文主要介绍Three.js构建一个3D商品展... 目录引言项目核心技术1. 项目架构与资源组织2. 多模型切换、交互热点绑定3. 移动端适配与帧率优化4. 可