网络:路由

1. 路由器

        路由器工作在三层,每个接口都处于不用的网段中,即不同的广播域。但大多情况下,两台路由器直接相连的接口是同一个广播域,即一个网段。

        路由器具有判断网络地址和选择路径的功能,能在多网络互联的环境中,建立灵活的连接,可用完全不同的数据分组和介质访问方法连接各种子网。

        路由器属于网络层的设备,有隔离广播域的作用,它的每个端口都是一个独立的广播域,也是一个单独的冲突域。

2. 路由

        通俗地说,去往目标的路径。网络中是指导IP报文转发的路径信息。

3. 路由表

        路由的信息都放在路由表当中,就是帮助路由进行选路用的,是路由器或者三层交换机或者具备三层功能防火墙用于指导IP报文的转发。

        查看路由的命令

<AR3>display ip routing-table 
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: PublicDestinations : 7        Routes : 7        Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface127.0.0.0/8   Direct  0    0           D   127.0.0.1       InLoopBack0127.0.0.1/32  Direct  0    0           D   127.0.0.1       InLoopBack0
127.255.255.255/32  Direct  0    0           D   127.0.0.1       InLoopBack0192.168.1.0/24  Direct  0    0           D   192.168.1.3     GigabitEthernet0/0/0192.168.1.3/32  Direct  0    0           D   127.0.0.1       GigabitEthernet0/0/0192.168.1.255/32  Direct  0    0           D   127.0.0.1       GigabitEthernet0/0/0
255.255.255.255/32  Direct  0    0           D   127.0.0.1       InLoopBack0<AR3>

        思科中用show

        华为默认的路由表如下:

<AR3>display ip routing-table 
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: PublicDestinations : 4        Routes : 4        Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface127.0.0.0/8   Direct  0    0           D   127.0.0.1       InLoopBack0127.0.0.1/32  Direct  0    0           D   127.0.0.1       InLoopBack0
127.255.255.255/32  Direct  0    0           D   127.0.0.1       InLoopBack0
255.255.255.255/32  Direct  0    0           D   127.0.0.1       InLoopBack0

       Destination/Mask:目标/掩码。

        Proto:协议。

        Pre:优先级。

                直连路由默认优先级为0。

                OSPF华为默认优先级为10和150,思科默认优先级为110。

                静态路由华为默认为60,思科默认静态路由为10。

                RIP默认优先级为100。

                BGP默认优先级为255。

        Cost:开销。

        Flags:标识。下载到FIB。Route Flags:R-relay 中继。D-download to fib。

        NextHop:下一跳。想要发送数据的下一站。

        Interface:出接口。数据包发送的接口。一般出接口和下一跳在同一网段。

        为什么华为中有默认4个路由表?

4. 直连路由与非直连路由

        直连路由:配置IP地址,端口UP状态,形成直连路由。例如AR1与AR3,AR3与AR1、AR4,AR4与AR3、AR5,AR5与AR4。即:当接口配置IP地址,且IP地址和协议都是UP时,满足直连路由产生条件。

                优点:是所有路由当中优先级最高的。

                           是可以自动生成的。

                缺点:不能去往非直连的其它网段。

        非直连路由:需要静态路由或动态路由,将网段添加到路由表中。例如AR1与AR4。

         直连路由优先级高于非直连路由。

        为什么需要非直连路由?

                由于直连路由存在不足,不能去往非自己直连的其它网段。

                需要静态路由或动态路由,将网段添加到路由表中。

5. 路由转发规则

        被转发的路由必须存在。如果不存在,直接丢弃。

        1. 根据最长匹配原则进行,掩码越长,越优先转发。

        2. 当掩码一样,优先级的数值越小,越优先转发。

        3. 当掩码、优先级一样,开销越小,越优先转发。

        4. 当前述原则一致,负载分担。

6. 静态路由

        静态路由的应用场景

                1. 静态路由是指由管理员手动配置和维护的路由。

                2. 静态路由配置简单。无需像动态路由那样占用路由器的CPU资源来计算和分析路由更新。

                3. 静态路由一般适用于结构简单的网络。不过,即使是在复杂网络环境中,合理地配置一些静态路由也可以改进网络的性能。

        静态路由的3种语法

                在系统视图下执行:

                1. ip route-static  目标网段 目标网段掩码 出接口        #出接口即g0/0/0。

                2. ip route-static  目标网段 目标网段掩码 下一跳

                3. ip route-static  目标网段 目标网段掩码 出接口 下一跳        #推荐使用方式

         为什么不用出接口?容易产生解析失败。

        静态路由的不足:

                静态路由:不能动态的根据现网拓扑的改变而改变。

7. 下图为例:在AR10上如何访问路由3.3.3.3?

      先配置AR10,配完后暂时无法ping通3.3.3.3:

[Huawei]sysname AR10
[AR10]interface LoopBack 0
[AR10-LoopBack0]ip add 1.1.1.1 32
[AR10-LoopBack0]dis ip inter bri
*down: administratively down
^down: standby
(l): loopback
(s): spoofing
The number of interface that is UP in Physical is 3
The number of interface that is DOWN in Physical is 2
The number of interface that is UP in Protocol is 2
The number of interface that is DOWN in Protocol is 3Interface                         IP Address/Mask      Physical   Protocol  
GigabitEthernet0/0/0              unassigned           up         down      
GigabitEthernet0/0/1              unassigned           down       down      
GigabitEthernet0/0/2              unassigned           down       down      
LoopBack0                         1.1.1.1/32           up         up(s)     
NULL0                             unassigned           up         up(s)     
[AR10-LoopBack0]quit
[AR10]interface g0/0/0
[AR10-GigabitEthernet0/0/0]ip add 192.168.1.1 24
Aug 10 2023 18:27:50-08:00 AR10 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol IP on the interface GigabitEthernet0/0/0 has entered the UP state. 
[AR10-GigabitEthernet0/0/0]quit
[AR10]ping 3.3.3.3PING 3.3.3.3: 56  data bytes, press CTRL_C to breakRequest time outRequest time outRequest time outRequest time outRequest time out--- 3.3.3.3 ping statistics ---5 packet(s) transmitted0 packet(s) received100.00% packet loss[AR10]

        配置AR11:

[AR11]inter g0/0/0
[AR11-GigabitEthernet0/0/0]ip add 192.168.1.2 24
[AR11-GigabitEthernet0/0/0]quit
[AR11]inte g0/0/1
[AR11-GigabitEthernet0/0/1]ip add 172.16.1.2 24
[AR11]inter LoopBack 0
[AR11-LoopBack0]ip add 2.2.2.2 32
[AR11-LoopBack0]quit
[AR11]dis ip inter brief 
*down: administratively down
^down: standby
(l): loopback
(s): spoofing
The number of interface that is UP in Physical is 4
The number of interface that is DOWN in Physical is 1
The number of interface that is UP in Protocol is 4
The number of interface that is DOWN in Protocol is 1Interface                         IP Address/Mask      Physical   Protocol  
GigabitEthernet0/0/0              192.168.1.2/24       up         up        
GigabitEthernet0/0/1              172.16.1.2/24        up         up        
GigabitEthernet0/0/2              unassigned           down       down      
LoopBack0                         2.2.2.2/32           up         up(s)     
NULL0                             unassigned           up         up(s)     
<AR11>display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: PublicDestinations : 11       Routes : 11       Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface2.2.2.2/32  Direct  0    0           D   127.0.0.1       LoopBack0127.0.0.0/8   Direct  0    0           D   127.0.0.1       InLoopBack0127.0.0.1/32  Direct  0    0           D   127.0.0.1       InLoopBack0
127.255.255.255/32  Direct  0    0           D   127.0.0.1       InLoopBack0172.16.1.0/24  Direct  0    0           D   172.16.1.2      GigabitEthernet0/0/1172.16.1.2/32  Direct  0    0           D   127.0.0.1       GigabitEthernet0/0/1172.16.1.255/32  Direct  0    0           D   127.0.0.1       GigabitEthernet0/0/1192.168.1.0/24  Direct  0    0           D   192.168.1.2     GigabitEthernet0/0/0192.168.1.2/32  Direct  0    0           D   127.0.0.1       GigabitEthernet0/0/0192.168.1.255/32  Direct  0    0           D   127.0.0.1       GigabitEthernet0/0/0
255.255.255.255/32  Direct  0    0           D   127.0.0.1       InLoopBack0<AR11>

        配置AR12:

[AR12]inter LoopBack 0
[AR12-LoopBack0]ip add 3.3.3.3 32
[AR12-LoopBack0]quit
[AR12]inter g0/0/0
[AR12-GigabitEthernet0/0/0]ip add 172.16.1.3 24
Aug 11 2023 15:34:54-08:00 AR12 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol IP on the interface GigabitEthernet0/0/0 has entered the UP state. 
[AR12-GigabitEthernet0/0/0]quit
[AR12]dis ip inter bri
*down: administratively down
^down: standby
(l): loopback
(s): spoofing
The number of interface that is UP in Physical is 3
The number of interface that is DOWN in Physical is 2
The number of interface that is UP in Protocol is 3
The number of interface that is DOWN in Protocol is 2Interface                         IP Address/Mask      Physical   Protocol  
GigabitEthernet0/0/0              172.16.1.3/24        up         up        
GigabitEthernet0/0/1              unassigned           down       down      
GigabitEthernet0/0/2              unassigned           down       down      
LoopBack0                         3.3.3.3/32           up         up(s)     
NULL0                             unassigned           up         up(s)     

        配置完成后,AR10无法ping通3.3.3.3。

        因为数据在传递过程中,经过AR11,AR10会将数据传递给AR11,但AR11上没有通往3.3.3.3的路由。因此AR11设备会丢弃该报文。因此需要在AR11上写入静态路由,使之增加到达3.3.3.3的路由

[AR11]ip route-static 3.3.3.3 32 g0/0/0 192.168.1.1

        配置完成后,AR10依然无法ping通3.3.3.3。

        因为数据在传递过程中,AR0发现到达3.3.3.3需要通过AR11设备的172.16.1.2接口。因此AR10会将数据传递给AR11设备。AR11设备到达3.3.3.3需经过AR12设备的172.16.1.3接口。因此AR12会接收数据,并传给直连路由3.3.3.3。

        但是,如果想要ping通3.3.3.3,数据已然发送成功,也要接收成功。因此数据能够从AR12返回给AR10,才能ping通。

8. 负载分担与负载均衡

        负载分担:从AR6出来的流量 M + N = 100%,但M != N,例如M = 40%,N = 60%。

        负载均衡:从AR6出来的流量 M + N =  100%,且M = N = 50%。

        分逐流和逐包,默认逐流。

9. 路由器控制平面和转发平面

        路由器的两大典型功能:数据通道功能和控制功能。

        数据通道功能包括转发决定、背板转发以及输出链路调度等,一般由特定的硬件来完成;控制功能一般用软件完成,包括与相邻路由器之间的信息交接、系统配置、系统管理等。

        管理平面/控制平面(统称控制平面、分布平面)

                控制平面用于控制和管理所有网络协议的运行,例如生成树协议、VLAN协议、ARP协议、各种路由协议和组播协议等的管理与控制。

                控制平面通过网络协议提供给路由器/交换机对整个网络环境中的网络设备、连接链路和交互协议准确了解,并在网络状况发送改变时做出及时的调整以维护网络的正常运行。

                控制平面提供转发前所需的各种网络信息。

                控制平面并不占用过多的硬件资源,但在正常状态下依然是网络设备CPU资源的主要占用平面,控制平面主要靠CPU资源来处理信息。

                display ip routing-table 查看IP路由表,属控制平面范畴(路由信息数据库,RIB)。

                路由器不依赖控制平面进行数据转发。

        数据转发平面/数据平面

                对于数据处理过程中各种具体的处理转发过程,例如L2/L3/ACL/QOS/组播/安全防护等个功能的具体执行过程,都属于数据转发平面的任务范畴。

                display fib 查看最终迭代的出接口,属数据平面范畴(转发信息数据库,FIB)。

                路由器依赖数据平面进行数据转发。

10. 路由表和FIB表

        每个路由器都至少保存着一张路由表(routing-table)和一张FIB(Forwarding Information Base)表。

11. Loopback是逻辑接口,区别于实际的物理接口,只要配置IP地址,即为UP状态。配置命令为:

[AR11]inter LoopBack 0
[AR11-LoopBack0]ip add 2.2.2.2 32

12. 默认路由

        默认路由一般在末节点配置。优点是仅仅用一条路由代替所有路由条目。

[AR10]ip route-static 0.0.0.0  0 下一跳

        注意:0.0.0.0  0  表示任意IP,其中第5个0为掩码,表示32个0。

        明细路由:具体到某一网段。

        默认路由:

        路由转发规则:明细路由优先级高于默认路由。如果路由表当中明细路由和默认路由同时存在,则明细路由优先转发。当路由表中只有默认路由时,会选择默认路由。

        一般不要在中间节点写2条默认路由,容易产生环路。

13. 删除路由

[AR10]undo ip route-static 3.3.3.0 255.255.255.0 GigabitEthernet0/0/0 192.168.1.2

        先查看当前的静态路由,之后通过undo删除: 

[AR10]display current-configuration 
[V200R003C00]
#sysname AR10
#snmp-agent local-engineid 800007DB03000000000000snmp-agent 
#clock timezone China-Standard-Time minus 08:00:00
#
portal local-server load flash:/portalpage.zip
#drop illegal-mac alarm
#wlan ac-global carrier id other ac id 0
#set cpu-usage threshold 80 restore 75
#
aaa authentication-scheme defaultauthorization-scheme defaultaccounting-scheme defaultdomain default domain default_admin local-user admin password cipher %$%$K8m.Nt84DZ}e#<0`8bmE3Uw}%$%$local-user admin service-type http       
#
firewall zone Localpriority 15
#
interface GigabitEthernet0/0/0ip address 192.168.1.1 255.255.255.0 
#
interface GigabitEthernet0/0/1
#
interface GigabitEthernet0/0/2
#
interface NULL0
#
interface LoopBack0ip address 1.1.1.1 255.255.255.255 
#
ip route-static 3.3.3.0 255.255.255.0 GigabitEthernet0/0/0 192.168.1.2
#
user-interface con 0authentication-mode password
user-interface vty 0 4
user-interface vty 16 20
#
wlan ac                                   
#
return
[AR10]undo ip route-static 3.3.3.0 255.255.255.0 GigabitEthernet0/0/0 192.168.1.2
[AR10]display current-configuration 
[V200R003C00]
#sysname AR10
#snmp-agent local-engineid 800007DB03000000000000snmp-agent 
#clock timezone China-Standard-Time minus 08:00:00
#
portal local-server load flash:/portalpage.zip
#drop illegal-mac alarm
#wlan ac-global carrier id other ac id 0
#set cpu-usage threshold 80 restore 75
#
aaa authentication-scheme defaultauthorization-scheme defaultaccounting-scheme defaultdomain default domain default_admin local-user admin password cipher %$%$K8m.Nt84DZ}e#<0`8bmE3Uw}%$%$local-user admin service-type http       
#
firewall zone Localpriority 15
#
interface GigabitEthernet0/0/0ip address 192.168.1.1 255.255.255.0 
#
interface GigabitEthernet0/0/1
#
interface GigabitEthernet0/0/2
#
interface NULL0
#
interface LoopBack0ip address 1.1.1.1 255.255.255.255 
#
user-interface con 0authentication-mode password
user-interface vty 0 4
user-interface vty 16 20
#
wlan ac
#
return                                    
[AR10]

14. 浮动路由

        浮动路由就是只让主链路进行工作,备链路不让转发流量。

        当主链路出现问题时,路由器选择备用链路。当主链路恢复,路由器会选择主链路。

15. 路由器转发数据使用 Routing table,而交换机转发数据使用cam cable。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/88887.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mybatis一级缓存与二级缓存

Mybatis一级缓存与二级缓存 缓存就是内存中的数据&#xff0c;常常来自对数据库查询结果的保存&#xff0c;使用缓存可以避免频繁与数据库进行交互&#xff0c;从而提高查询响应速度。 mybaits提供内存支持&#xff1b; 一级缓存 一级缓存&#xff0c;sqlSession级别的缓存…

NZ系列工具NZ02:VBA读取PDF使用说明

【分享成果&#xff0c;随喜正能量】时光绽放并蒂莲&#xff0c;更是一份殷殷嘱托&#xff0c;更是一份诚挚祝福&#xff0c;是一份时光馈赠&#xff0c;又是一份时光陪伴。。 我的教程一共九套及VBA汉英手册一部&#xff0c;分为初级、中级、高级三大部分。是对VBA的系统讲解…

多线程事务怎么回滚?

项目中用到了多线程去批量处理一些数据&#xff0c;当时想当然认为只要方法上加上Transactional注解就好了&#xff0c;实际并未达到想要的处理效果。特此去学习了下关于多线程事务回滚相关方案&#xff0c;参考了网上其他资料&#xff0c;这里整理并记录下学习历程。 站在巨人…

VR全景智慧文旅,用科技助力旅游业振兴

引言&#xff1a; 近年来&#xff0c;科技的迅猛发展将我们带入一个全新的数字化时代&#xff0c;而虚拟现实&#xff08;Virtual Reality&#xff0c;简称VR&#xff09;技术则以其令人惊叹的全新方式&#xff0c;影响着各个领域。其中&#xff0c;旅游业作为人们探索世界、体…

微服务03-RabbitMQ

1、简介 MQ,中文是消息中间件(队列)(MessageQueue),字面来看就是存放消息的队列。也就是事件驱动架构中的Broker。 简单来说,消息中间件就是指保存数据的一个容器(服务器),可以用于两个系统之间的数据传递。 几种常见MQ的对比: RabbitMQActiveMQRocketMQKafka公司…

云安全攻防(十)之 资源耗尽型攻击

资源耗尽型攻击 同为虚拟化技术&#xff0c;容器与虚拟机既存在相似之处&#xff0c;也有显著不同。在资源限制方面&#xff0c;无论使用 VMware、Virtual Box 还是 QEMU&#xff0c;我们都需要为即将创建的虚拟机设定明确的CPU、内存及硬盘资源阈值。在虚拟机内部进程看来&am…

Android自定义侧滑Item

源码地址&#xff1a;https://github.com/LanSeLianMa/CustomizeView/tree/master/cehuaitem 使用方式一&#xff1a;XML布局中直接使用 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.android.com…

【Node.js】低代码平台源码

一、低代码简介 低代码管理系统是一种通过可视化界面和简化的开发工具&#xff0c;使非专业开发人员能够快速构建和管理应用程序的系统。它提供了一套预先定义的组件和模块&#xff0c;使用户可以通过拖放操作来设计应用程序的界面和逻辑。低代码管理系统还提供了自动化的工作…

STM32自带的DSP库的滤波初体验(一)

最近在弄STM32自带的DSP库里的滤波&#xff0c;记录一下&#xff1a; arm_fir_instance_q15 instance_q15_S; #define NUM_TAPS 16 //滤波系数的个数 #define BLOCK_SIZE 32 q15_t firStateF32[BLOCK_SIZE NUM_TAPS]; q15_t Fir_Coeff[NUM_TAPS] {-79, -136, 312, 6…

基于 SIFT 和 RANSAC 算法对高分辨率图像进行图像伪造检测(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

二叉树的存储结构(顺序存储)—— 数据结构与算法

&#x1f636;‍&#x1f32b;️Take your time ! &#x1f636;‍&#x1f32b;️ &#x1f4a5;个人主页&#xff1a;&#x1f525;&#x1f525;&#x1f525;大魔王&#x1f525;&#x1f525;&#x1f525; &#x1f4a5;代码仓库&#xff1a;&#x1f525;&#x1f525;魔…

从零开始学习 Java:简单易懂的入门指南之抽象类接口内部类(十一)

面向对象进阶&#xff08;抽象类&接口&内部类&#xff09; 第一章 抽象类1.1 概述1.1.1 抽象类引入 1.2 abstract使用格式1.2.1 抽象方法1.2.2 抽象类1.2.3 抽象类的使用 1.3 抽象类的特征1.4 抽象类的细节1.5 抽象类存在的意义 第二章 接口2.1 概述2.2 定义格式2.3 接…

机器学习 | Python实现KNN(K近邻)模型实践

机器学习 | Python实现KNN(K近邻)模型实践 目录 机器学习 | Python实现KNN(K近邻)模型实践基本介绍模型原理源码设计学习小结参考资料基本介绍 一句话就可以概括出KNN(K最近邻算法)的算法原理:综合k个“邻居”的标签值作为新样本的预测值。更具体来讲KNN分类过程,给定一个训…

第二十一章 重要HL7操作场景 - HL7批量消息

文章目录 第二十一章 重要HL7操作场景 - HL7批量消息支持的批处理格式处理传入的批次文档批处理模式自定义出库批量处理 第二十一章 重要HL7操作场景 - HL7批量消息 Production品支持 HL7 中的嵌套子文档&#xff08;批处理格式&#xff09;。每个子文档本身就是一个虚拟文档。…

【设计模式】MVC 模式

MVC 模式代表 Model-View-Controller&#xff08;模型-视图-控制器&#xff09; 模式。这种模式用于应用程序的分层开发。 Model&#xff08;模型&#xff09; - 模型代表一个存取数据的对象或 JAVA POJO。它也可以带有逻辑&#xff0c;在数据变化时更新控制器。View&#xff…

Python爬虫——requests_cookie登陆古诗文网

寻找登陆需要的参数 __VIEWSTATE:aiMG0UXAfCzak10C7436ZC/RXoZbM2lDlX1iU/4wjjdUNsW8QUs6W2/3M6XIKagQZrC7ooD8Upj8uCnpQMXjDAp6fS/NM2nGhnKO0KOSXfT3jGHhJAOBouMI3QnlpJCQKPXfVDJPYwh169MGLFC6trY __VIEWSTATEGENERATOR: C93BE1AE from: http://so.gushiwen.cn/user/collect.…

泰卦-地天卦

前言&#xff1a;否极泰来&#xff0c;但在易经里是泰卦在前&#xff0c;让我们分析下在否所期待否极后的泰卦是什么样的&#xff1f;本篇博客分析泰卦的卦辞和爻辞。 卦辞 小往大来&#xff0c;吉&#xff0c;亨。 篆曰&#xff1a;泰&#xff0c;小往大来&#xff0c;吉亨。…

面试热题(合并两个有序列表)

将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 合并链表这类型题也是比较经典的题了&#xff0c;因为链表是由指针相互指向而确定位置&#xff0c;所以我们只需要改变某些节点的指针便可以做到对链表进行排序 今天这个方法…

C++小游戏贪吃蛇源码

graphics.h是针对DOS下的一个C语言图形库 (c也可以) 目前支持下载此头文件的常用的有两种: 1. EGE (Easy Graphics Engine)2. EasyX Graphics LibraryEGE, 全名Easy Graphics Engine, 是windows下的简易绘图库&#xff0c;是一个类似BGI(graphics.h)的面向C/C语言新手的图形库…

APP外包开发的iOS开发语言

学习iOS开发需要掌握Swift编程语言和相关的开发工具、框架和技术。而学习iOS开发需要时间和耐心&#xff0c;尤其是对于初学者。通过坚持不懈的努力&#xff0c;您可以逐步掌握iOS开发技能&#xff0c;构建出功能丰富、优质的移动应用。今天和大家分享学习iOS开发的一些建议方法…