当前位置: 首页 > news >正文

HCIP-7.2VLAN间通信单臂、多臂、三层交换方式学习

VLAN间通信单臂、多臂、三层交换方式学习

  • 1、单臂路由
  • 2、多臂路由
  • 3、三层交换机的SVI接口实现VLAN间通讯
    • 3.1、VLANIF虚拟接口
    • 3.2、VLAN间路由
      • 3.2.1、单台三层路由VLAN间通信,在一台三层交换机内部VLAN之间直连。
      • 3.2.2、两台三层交换机的之间的VLAN通信。
      • 3.2.3、将物理接口直接变成三层接口
    • 3.3、VLAN Maping,主要运用在运营商环境里。
    • 3.4、VLAN switch

1、单臂路由

单臂路由(router-on-a-stick)是指在路由器的一个接口上通过配置子接口(或“逻辑接口”,并不存在真正物理接口)的方式,实现原来相互隔离的不同VLAN(虚拟局域网)之间的互联互通。

注意:子接口与vlan if的不同。子接口是在物理端口下开设虚拟子接口。而vlanif是交换机虚拟接口。

虚拟子接口:路由器的物理接口可以被划分为多个逻辑接口,每个子接口对应一个VLAN网段的网关。
单臂路由

带标签的单臂路由
PC1发送数据帧经过交换机的G0/0/1接口,加上vlan10的标识, MAC条目上有Route标记,则进行硬件三层转发。
路由器子接口G0/0/1.10接收到该数据帧,查找目的IP的网段路由,存在,查找下一跳的ARP表,如果ARP不存在,进行ARP学习。学习到ARP后,发现该路由对应子接口F0/0.2进行报文转发,并将转发信息写入硬件主机路由表,进行硬件三层转发。

主干链路里面传输的是有标签的数据,那么在路由端,路由端必须要能识别带标签的数据

路由器接口充当网关,但是路由器就只有一个接口和交换机相连,这时引入子接口也是逻辑接口逻辑接口是基于物理接口的,每个物理接口可以逻辑成大概42亿万个逻辑接口。
子接口处理流程

我们用模拟出来的逻辑接口充当网关,由于要传输trunk干道链路的带tag数据,所以,要封装802.1Q接口。

[Huawei]interface GigabitEthernet 0/0/1.10          \\进入0/0/1的子接口10 
[Huawei-GigabitEthernet0/0/1.10]dot1q termination vid 10     \\封装802.1Q接口剥掉tag 10标签,传输去掉标签的数据。
[Huawei-GigabitEthernet0/0/1.10]arp broadcast enable     \\开启广播
[Huawei-GigabitEthernet0/0/1.10]ip address 10.0.0.1 24
[Huawei]interface GigabitEthernet 0/0/0.20
[Huawei-GigabitEthernet0/0/1.20]dot1q termination vid 20
[Huawei-GigabitEthernet0/0/1.20]arp broadcast enable
[Huawei-GigabitEthernet0/0/1.20]ip address 10.0.0.1 24

配置中易错点:

  1. 交换机和路由器相连的端口属性要设置为Trunk且运行所有vlan通过;
  2. 和路由器直接相连的接口(不是子接口)不能设置IP;
  3. 路由器的子接口要记得开启arp广播请求;
    (不是子接口)不能设置IP;
  4. 主机ip和子接口ip地址(所对应的网关地址)不能重复。

单臂路由的缺点:

  • “单臂”为网络骨干链路,容易形成网络瓶颈(单点故障:如果物理接口出现故障,那所有的VLAN间通信都断开了。)
  • 子接口依然依托于物理接口,应用不灵活
  • VLAN间转发需要查看路由表,严重浪费设备资源

2、多臂路由

使用路由器物理接口通信,这种方法面临着一个主要的问题:每一个VLAN都需要占用路由器上的一个物理接口,如果VLAN数目众多,就需要占用大量的路由器接口。所以,在实际的网络部署中,几乎都不会通过多臂路由器来实现VLAN间的三层通信。
多臂路由

PC1数据进入access接口时,会给该数据帧添加一个带有vlan10的标签,从另一个access接口出去时,access接口会脱掉该数据的标签;

进入路由器后,寻找该数据帧的目的IP地址,查询路由表后,从关联目标网段的接口发送数据包;

数据包进入交换机时,交换机接收的二层数据包含目的MAC和vlan ID是20的客户机,先将无标签数据打上vlan20的标签,在VLAN 20的广播域查找目标客户机的MAC地址。

查找到客户机后,将数据帧发送给目标客户机,从交换机的另一个access接口发出,在该接口又会把vlan20的标签脱掉,然后发送给PC4。

交换机配置:

sys
sysname sw1
vlan batch 10 20
int e0/0/1
port link-type access
port default vlan 10
int e0/0/2
port link-type access
port default vlan 10
int e0/0/3
port link-type access
port default vlan 20
int e0/0/4
port link-type access
port default vlan 20

路由器配置:

sys
sysname R1
int g0/0/0
ip address 10.0.0.1 24
int g0/0/1
ip address 20.0.0.1 24

3、三层交换机的SVI接口实现VLAN间通讯

三层交换机在原有二层交换机的基础之上增加了路由功能,同时由于数据没有像单臂路由那样经过物理线路进行路由,很好地解决了带宽瓶颈的问题,为网络设计提供了一个灵活的解决方案。

三层交换机拥有一些混合口,既具有二层口的行为而特征,同时又具有三层口的行为特征。一台三层交换机上,不同的混合口之间同时存在一个二层转发通道和三层转发通道。

三层交换机三层接口(Layer3 Interface)特点:

  • 三层接口可以配置IP地址
  • 三层接口具备MAC地址
  • 三层接口收到数据帧后,如果数据帧的目的MAC地址与设备的本地MAC地址相同,则将数据帧解除封装,然后在路由表中查询数据包的目的IP地址,找到匹配的路由表项后按照该表项的指示转发包;如果没有找到匹配的表项,则将包丢弃。
  • 除了物理三层接口,还存在逻辑三层接口,例如交换机的VLANIF,或者网络设备上的逻辑子接口,如GE0/0/1.10。
  • 三层接口隔离广播域,当三层接口收到广播帧时,缺省不会进行泛洪,而是直接终结。

3.1、VLANIF虚拟接口

基本原理:VLANIF接口是一个三层的逻辑接口,在其上配置IP地址为用户的网关地址后,它就在三层交换机上生成直连路由,同时,可作为用户的网关。这样,发往各VLAN网段的报文,就可在路由表中分别找到其出接口—VLANIF接口,从而实现三层转发。

VLANIF接口是基于网络层的接口,可以配置IP地址。借助VLANIF接口,三层交换机就能实现路由转发功能。

VLANIF接口是一种三层的逻辑接口,支持VLAN Tag的剥离和添加,因此可以通过VLANIF接口实现VLAN之间的通信。

VLANIF接口编号与所对应的VLAN ID相同,如VLAN 10对应VLANIF 10。
VLANIF虚拟接口

三层交换机内部VLAN接口

VLANIF只生成直连路由,只能使得相邻设备互通。现网中用户间可能会跨多台三层交换机(如三层网络),此时,除配置VLANIF外,还要借助静态路由或路由协议才能实现互通。

SW1基本配置

sys
vlan batch 10 20
inter g0/0/1
port link-type access 
port default vlan 10
inter g0/0/2
port link-type access 
port default vlan 10
inter g0/0/3
port link-type access 
port default vlan 20
inter g0/0/4
port link-type access 
port default vlan 20
inter g0/0/10
port link-type trunk
port trunk allow-pass vlan all

SW2基本配置:

sys
vlan batch 30 40
inter g0/0/1
port link-type access 
port default vlan 30
inter g0/0/2
port link-type access 
port default vlan 40
inter g0/0/10
port link-type trunk
port trunk allow-pass vlan all

3.2、VLAN间路由

3.2.1、单台三层路由VLAN间通信,在一台三层交换机内部VLAN之间直连。

配置三层交换机的VLANIF接口

sys
vlan batch 10 20 30 40
inter g0/0/1
port link-type trunk
port trunk allow-pass vlan 10 20
inter g0/0/2
port link-type trunk
port trunk allow-pass vlan 30 40
inter vlanif 10           //在VLAN10上设置虚拟接口vlanif 10,地址就是网关
ip address 10.0.10.1 24
inter vlanif 20
ip address 10.0.20.1 24
inter vlanif 30
ip address 10.0.30.1 24
inter vlanif 40
ip address 10.0.40.1 24
quit

3.2.2、两台三层交换机的之间的VLAN通信。

两台三层交换机

SW1 在VLAN10上设置虚拟接口vlanif 10,地址就是网关

int vlanif 10
ip add 192.168.10.1 24
int vlanif 20
ip add 192.168.20.1 24
interface Vlanif100
ip address 192.168.100.253 255.255.255.0    作为vlan 100的网关。

这样Vlan 10和Vlan 20是直连,所以相通的。三层交换机的功能。

int g0/0/10
port link-type trunk
port trunk allow-pass vlan 100     //trunk链路只允许100通过,10、20本来就是通过Vlan连通的。

SW2建立vlanif 30

int vlanif 30
ip add 192168.30.1 24                        //作为vlan 30的网关。
int vlanif 40
ip add 192168.40.1 24                        //作为vlan 30的网关。
int vlanif 100
ip add 192.168.100.254 255.255.255.0         //作为vlan 100的网关。

SW2Trunk链路只允许100通过。

int g0/0/1
port link-type trunk
port trunk allow-pass vlan 50

将lsw1和lsw2当做路由器,配置ospf,将vlan100 作为lsw1和lsw2的连接链路。路由器之间vlan 100在联通链路。

把三层交换机看做是路由器隔离广播域,在单个交换机下vlan能相互访问,然后配置ospf。

SW1
ospf 10 router-id 1.1.1.1
area 0
net 192.168.10.0 0.0.0.255
net 192.168.20.0 0.0.0.255
SW2
ospf 10 router-id 2.2.2.2
area 0
net 192.168.30.0 0.0.0.255
net 192.168.40.0 0.0.0.255
net 192.168.100.0 0.0.0.255

这样就相当于把两个三层交换机视为两台路由器,它们之间直连的网段是192.168.100.0/24。通过三层路由转发。

VLAN间用户均是通过三层交换机实现三层互通,三层互通需要查找路由表,转发效率较低。而二层转发效率高,那VLAN间能否实现二层互通呢?

3.2.3、将物理接口直接变成三层接口

在这里插入图片描述
SW1\SW2

undo info-center enable           //关闭系统信息
clear configuration interface Ethernet 0/0/1
un shutdown
vlan 100
vlan 200
int vlanif 100
ip add 192.168.10.1 24
int vl 200
ip add 192.168.20.1 24
dis ip int brint g0/0/1
port li acc
port def vla 100
int g0/0/2
port li acc
port def vla 200

CE系列交换机支持直接以三层交换

<CE1>system-view immediately           //配置后直接生效,不用提交
[CE1]int g1/0/0
[CE1-GE1/0/0]undo portswitch                       //关闭二层,启用三层只有CE系列交换机能用此命令
[CE1-GE1/0/0]ip add 192.168.10.1 24
[CE1-GE1/0/1]undo portswitch
[CE1-GE1/0/1]ip add 192.168.20.1 24

3.3、VLAN Maping,主要运用在运营商环境里。

VLAN Maping
当在端口GE1/0/1上配置了VLAN 100和VLAN 10映射后,

  • 端口在向外发送VLAN 100的帧时,将帧中的VLAN Tag(标签)替换成VLA 10的VLAN Tag(标签);
  • 在接收VLAN 10的帧时,将帧中的VLAN Tag,替换成VLA 100的VLAN Tag,这样VLAN100和VLAN 10就实现了互相通信。

跨运营商通信,VLAN 100数据帧–>SW1 -->转换成VLAN 10–>SW2。
VLAN 10 数据帧–>SW2 -->转换成VLAN 100–>SW1。
VLAN Maping

PE1    vlan 10-->vlan 20
sysn PE1
vlan 10
vlan 20
interface GigabitEthernet0/0/2
qinq vlan-translation enable                //开启QinQ
port link-type trunk
port trunk allow-pass vlan 10              //只允许VLAN10通过
port vlan-mapping vlan 10 map-vlan 20      //把VLAN10变成VLAN20int g0/0/1
port link-type trunk
port trunk allow-pass vlan 20

另一种方法是运营商之间是100,两个企业一个是10,一个是20,都变成100。
在这里插入图片描述

3.4、VLAN switch

交换机像路由设备一样,直接将VLAN10转换在VLAN20。
CE12700系列交换机才能使用这条命令。

[Switch] vlan-switch name1 interface gigabitethernet 1/0/1 vlan 10 interface gigabitethernet 1/0/2 switch-vlan 20

在这里插入图片描述
基本原理: 预先在各交换节点(如图中的Switch)上建立一条静态转发路径(即VLAN Switch表,指定VLAN转换关系和出接口)。这样,Switch根据VLAN Switch表将Port2上收到报文中的VLAN2转换为VLAN3,并从Port3发出;将Port3上收到报文的VLAN3将转换为VLAN2,并从Port2发出,从而实现VLAN2和VLAN3间的二层互通。

相关文章:

HCIP-7.2VLAN间通信单臂、多臂、三层交换方式学习

VLAN间通信单臂、多臂、三层交换方式学习 1、单臂路由2、多臂路由3、三层交换机的SVI接口实现VLAN间通讯3.1、VLANIF虚拟接口3.2、VLAN间路由3.2.1、单台三层路由VLAN间通信&#xff0c;在一台三层交换机内部VLAN之间直连。3.2.2、两台三层交换机的之间的VLAN通信。3.2.3、将物…...

PHP快速入门17-用spl_autoload_register实现类的自动加载

文章目录 前言实现过程创建两个类创建入口文件 总结 前言 本文已收录于PHP全栈系列专栏&#xff1a;PHP快速入门与实战 PHP类自动载入是指在PHP应用程序中&#xff0c;当需要使用某个类文件时&#xff0c;系统会自动加载该类文件&#xff0c;无需手动引入。 在PHP中&#xf…...

【黑马程序员 C++教程从0到1入门编程】【笔记8】 泛型编程——模板

https://www.bilibili.com/video/BV1et411b73Z?p167 C泛型编程是一种编程范式&#xff0c;它的核心思想是编写通用的代码&#xff0c;使得代码可以适用于多种不同的数据类型。 而模板是C中实现泛型编程的一种机制&#xff0c;它允许我们编写通用的代码模板&#xff0c;然后在需…...

分享10个精美可视化模板,解决95%的大屏需求!

前段时间和朋友一起喝茶&#xff0c;我吐槽着excel表格做报表的繁琐&#xff0c;他惊讶的问我竟然不知道大屏模板这种东西&#xff0c;说是直接套用数据就可以&#xff0c;我震惊的同时吃下了这个安利。 回来之后&#xff0c;我好好研究了一番这个叫可视化大屏的“新鲜玩意儿”…...

好用的项目管理软件的具体功能有哪些

随着企业规模不断的扩大&#xff0c;项目管理往往会面临更多的挑战与难题&#xff0c;最常见的会出现以下几个问题&#xff1a;资源消耗失控&#xff0c;而项目部门和相关部门之间沟通越来越困难&#xff1b;团队凝聚力下降、项目进度难以把控&#xff0c;项目成本几乎失控&…...

< 每日小技巧: 基于Vue状态的过渡动画 - Transition 和 TransitionGroup>

》基于Vue状态的过渡动画 - Transition 和 TransitionGroup &#x1f449; 一、Vue Transition 简介> Transition 和 TransitionGroup 之间的区别 &#x1f449; 二、<Transition> 组件> 触发 <Transition> 组件的场景&#xff1a;> 基于 CSS 的过渡效果&…...

vmware安装redhat 8

vmware安装redhat 8 1、下载镜像文件1.1 镜像文件 2、安装系统2.1、选择自定义安装2.2、兼容性选择2.3、选择镜像文件导入2.4、设置用户名密码2.5、选择虚拟机在磁盘上的位置2.6、选择处理器数量2.7、选择内存大小2.8、选择桥接或NAT2.9、选择SCSI控制器类型2.10、选择虚拟机磁…...

OpenCV C++案例实战三十一《动态时钟》

OpenCV C案例实战三十一《动态时钟》 前言一、绘制表盘二、绘制刻线三、获取系统时间四、结果展示五、源码总结 前言 本案例将使用OpenCV C实现动态时钟效果。原理也很简单&#xff0c;主要分为绘制表盘、以及获取系统时间两步。 一、绘制表盘 首先为了效果显示美观一点&…...

字节后端入门 - Go 语言原理与实践

1.1什么是Go语言 1.2Go语言入门 环境 1.3基础语法 1.3.1变量 var name"value" 自己推断变量类型&#xff1b; 也可以显式类型 var c int 1 name: type(value) 常量&#xff1a; const name "value" g : a"foo" 字符串拼接 1.3.2 if else {}花括号…...

锂电材料浆料匀浆搅拌设备轴承经常故障如何处理?

锂电材料浆料匀浆搅拌设备是锂电池生产中重要的设备之一&#xff0c;用于将活性材料、导电剂、粘结剂和溶剂混合成均匀的浆料&#xff0c;是电极制备过程中不可或缺的步骤。然而&#xff0c;由于高速搅拌和化学腐蚀等因素的影响&#xff0c;轴承经常会出现故障&#xff0c;导致…...

设计模式——设计模式介绍和单例设计模式

导航&#xff1a; 【黑马Java笔记踩坑汇总】JavaSEJavaWebSSMSpringBoot瑞吉外卖SpringCloud黑马旅游谷粒商城学成在线设计模式牛客面试题 目录 一、设计模式概述和分类 1.1 设计模式介绍 1.2 设计模式分类 二、创建型设计模式-单例模式 2.1 介绍 2.2 八种单例模式的创…...

利用Iptables构建虚拟路由器

利用Iptables构建虚拟路由器 &#xff08;1&#xff09;修改网络类型 在VMware Workstation软件中选择“编辑→虚拟网络编辑器”菜单命令&#xff0c;在虚拟网络列表中选中VMnet1&#xff0c;将其配置为“仅主机模式&#xff08;在专用网络内连接虚拟机&#xff09;”&#x…...

C++——类和对象[中]

0.关注博主有更多知识 C知识合集 目录 1.类的默认成员函数 2.构造函数和析构函数基础 3.构造函数进阶 4.析构函数进阶 5.拷贝构造函数 6.运算符重载 7.日期类 7.1输入&输出&友元函数 8.赋值运算符重载 9.const成员函数 9.1日期类完整代码 10.取地址重载 …...

Symbol.iterator和Symbol.asyncIterator

Symbol是什么&#xff1f; symbol是ES6标准中新增的一种基本数据类型&#xff0c;symbol 的值是通过 Symbol()函数返回的&#xff0c;每一个 symbol 的值都是唯一的&#xff0c;即使传入相同的描述值。 注&#xff1a;Symbol 函数不允许通过 new 的方式调用 Symbol的作用是什…...

忆暖行动|“他一个人推着老式自行车在厚雪堆的道路上走,车上带着学生考试要用的司机”

忆暖行动|“他一个人推着老式自行车在厚雪堆的道路上走&#xff0c;车上带着学生考试要用的sj” 一头白发&#xff0c;满山青葱 在那斑驳的物件褶皱中&#xff0c;透过泛黄的相片&#xff0c;掩藏着岁月的冲刷和青葱的时光。曾经的青年早已经不复年轻&#xff0c;但是那份热爱…...

Python中True、False、None的判断(避坑)

2.4 Python中True、False、None的判断 在Python中&#xff0c;所有的空值和0在作为条件表达式时&#xff0c;隐式的进行bool转换后都是False&#xff0c;比如&#xff1a;空列表&#xff1a;[]、空字符串&#xff1a;‘’、空字典&#xff1a;{}等等。 from icecream import …...

Spring Bean定义有哪些方式?

概述 对于学习Spring的兄弟姐妹来说&#xff0c;觉得这个问题很熟悉&#xff0c;若是要把它回答得很清楚&#xff0c;却是很为难&#xff1f;平时写代码的时候&#xff0c;不会在意这些概念问题&#xff0c;但面试时这个问题出现的频率却是很高&#xff0c;所以还是必须要掌握…...

JVM内存模型的演变

1&#xff0c;背景 class文件、类的加载过程。我们的class文件就要进入到JVM内存里&#xff0c;我们沿着经典的JDK1.6&#xff0c;JDK1.7&#xff0c;JDK1.8看看在其中都经历了哪些改变 概念的统一&#xff1a; 方法区&#xff1a; 方法区可以看作是JVM逻辑上管理一片区域的…...

DataX3同步Mysql数据库数据到Mysql数据库和DataX3同步mysql数据库数据到Starrocks数据库

DataX3同步Mysql数据库数据到Mysql数据库和DataX3同步mysql数据库数据到Starrocks 一、认识DataX二、DataX3概览三、DataX3框架设计四、DataX3插件体系五、DataX3核心架构六、DataX 3六大核心优势1.可靠的数据质量监控2.丰富的数据转换功能3.精准的速度控制4.强劲的同步性能5.健…...

你是否曾经为自己写的代码而感到懊恼?那如何才能写出高质量代码呢?

这里写目录标题 一、 前言二、高质量代码的特征三、编程实践技巧1. 遵循编码规范2. 使用有意义的变量名和函数名3. 减少代码重复4. 使用注释5. 编写单元测试6. 使用设计模式7. 使用版本控制工具8. 保持代码简洁9. 优化代码性能10. 学习和借鉴他人的代码总结 一、 前言 写出高质…...

常用 Composition API【VUE3】

二、常用 Composition API 7. 计算属性与监视 7.1 computed函数 与Vue2.x中computed配置功能一致写法 <template><h1>一个人的信息</h1>姓&#xff1a;<input type"text" v-model"person.firstName"><br><br>名&a…...

--商业模式--

O2O O2O&#xff0c;网络用语中指Online To Offline的缩写&#xff0c;即在线离线/线上到线下&#xff0c;是指将线下的商务机会与互联网结合&#xff0c;让互联网成为线下交易的平台。 O2O概念最早来源于美国。O2O的概念非常广泛&#xff0c;既可涉及到线上&#xff0c;又可…...

JavaWeb《HTML基础标签》

本笔记学习于Acwing平台 MDN官方文档https://developer.mozilla.org/zh-CN/ 目录 1. html文件结构 2. 文本标签 3. 图片 4. 音频和视频 5. 超链接 6. 表单 7. 列表 8. 表格 9. 语义标签 10. 特殊符号 1. html文件结构 文档结构 html的所有标签为树形结构&#xff…...

ChatGpt 能取代人类吗?

目录 前言 一、ChatGpt是什么&#xff1f; 二、ChatGpt能做什么 总结 前言 随着人工智能的不断发展&#xff0c;很多人都开启了学习机器学习&#xff0c;以及现在ChatGpt的出现&#xff0c;对人类社会带来了很多变化。 智能化交流方式&#xff1a;ChatGpt的出现为人们提供了…...

PHP内存溢出Allowed memory size of 解决办法

以前追踪过这个问题,但是那个时候工具用的不太好,没看的这么细,这次搞的比较细,修正了偶以前的看法 .于是写小文一篇总结一下. PHP偶尔会爆一下如下 错误Allowed memory size of xxx bytes exhausted at xxx:xxx (tried to allocate xxx bytes) 不想看原理的,直接跳到最后…...

重回代码,学习总结

回顾加总结 2021年 自动化测试 1.ETL 数据库开发维护(oracle pl/sql) 2.自动化测试(javaseleniumcucumber) 2022年 功能测试 1.功能测试&#xff08;学习测试用例&#xff0c;postman测试&#xff09; 2.性能测试&#xff08;jmeter初学&#xff09; 2023年 测试开发 1.学习了…...

【Leetcode -86.分隔链表 -92.反转链表Ⅱ】

Leetcode Leetcode -86.分隔链表Leetcode -92.反转链表Ⅱ Leetcode -86.分隔链表 题目&#xff1a;给你一个链表的头节点 head 和一个特定值 x &#xff0c;请你对链表进行分隔&#xff0c;使得所有 小于 x 的节点都出现在 大于或等于 x 的节点之前。 你应当 保留 两个分区中每…...

算法记录 | 48 动态规划

198.打家劫舍 思路&#xff1a; 1.确定dp数组&#xff08;dp table&#xff09;以及下标的含义&#xff1a;dp[i]&#xff1a;前 i 间房屋所能偷窃到的最高金额。 2.确定递推公式&#xff1a;dp[i] max(dp[i - 2] nums[i-1], dp[i - 1]) i间房屋的最后一个房子是nums[i−…...

CRM部署Always on 后 CRM报无法更新数据库,数据库只读,且读写分离不正常

CRM部署Always on 后 CRM报无法更新数据库&#xff0c;数据库只读&#xff0c;读写分离不正常 问题描述背景信息问题原因解决方案 问题描述 CRM部署Always on 后 CRM报无法更新数据库&#xff0c;数据库只读 读写分离不正常,出现错乱链接。 背景信息 1.2个节点配置SQL serve…...

麓言信息设计创意思维,打开设计师思路

在现在快速发展的时代&#xff0c;信息纷杂繁琐&#xff0c;如果一个设计不能让人眼前一亮&#xff0c;印象深刻&#xff0c;只会沦为平凡作品&#xff0c;无亮点无用处。正所谓&#xff0c;无设计不创意&#xff0c;这句口号正是喊出对设计的要求。   伴随着时代的发展、…...

鳌江网站建设/东莞seo网络培训

http://blog.csdn.net/u010509774/article/details/50593231一、rpm包安装方式步骤&#xff1a;1、找到相应的软件包&#xff0c;比如soft.version.rpm&#xff0c;下载到本机某个目录&#xff1b;2、打开一个终端&#xff0c;su -成root用户&#xff1b;3、cd soft.version.rp…...

柯桥做网站哪家好/网络软文营销案例

使用 sorted() 函数的 key 参数对元组列表进行排序&#xff0c;例如 sorted_list sorted(list_of_tuples, keylambda t: t[1])。 该函数将按指定索引处的元组元素对元组列表进行排序。 list_of_tuples [(1, 100), (2, 50), (3, 75)]# ✅ 按索引处的元素对元组列表进行排序&a…...

毕设DW做网站的过程/seo优化培训机构

文章目录ABCDEF小结我怕不是傻子吧&#xff01;&#xff01;&#xff01; 分数好低呀QAQ 算了原本就是个蒟蒻。 A 这道题目的大意就是求1−n1-n1−n里面奇数的个数占1−n1-n1−n个数的多少 真SB的题目 #include<cstdio> using namespace std; int n; double a;…...

深圳燃气公司怎么样/博客优化网站seo怎么写

前言&#xff1a;在之前已经梳理了微信的热修复Tinker的接入使用流程&#xff0c;这么牛逼的东西勾起了我的兴趣&#xff0c;因此走上了探究其实现原理的道路。Tinker支持Dex、资源文件、so文件的热更新&#xff0c;此次分析过程也将一步步的从这三个方面对Tinker进行源码解析&…...

郑州做网站公司电话/jmr119色带

以前好多倒计时的需求都需要自己去写&#xff0c;今天发现android 原来自带了倒计时的类CountDownTimer&#xff0c;和适合用于发送短信&#xff0c;等待验证码的情况代码展示了在一个TextView进行60S的倒计时功能public class MainActivity extendsAppCompatActivity{private …...

什么身一什么网站建设/引擎网站推广法

本节书摘来自异步社区《数字短片创作(修订版)》一书中的第1章&#xff0c;头脑风暴获取软件功能&#xff0c;作者 【美】Sherri Sheridan &#xff0c;译者 ACG国际动画教育&#xff0c;任秀静&#xff0c;郝佳&#xff0c;刘璐&#xff0c;更多章节内容可以访问云栖社区“异步…...