【生意多】-免费发布分类信息
当前位置: 首页 » 新闻 » 教程 » 正文

Linux基础教程之网络基础知识详解

放大字体  缩小字体 发布日期:2020-05-08 09:56:12    浏览次数:7
导读

  网络小白一个,针对网络的基础知识无从下手,因此本文引用了鸟哥私房菜中的众多概念性知识,在此谢过,本文主要从OSI七层协议,TCP协议和一些网络中专业词汇进行解析,并通过子网掩码的划分,网络接口的配置、路由配置等实例来加深对网络的理解。  由于网络链接过程相当复杂,包括硬件数据封装与应用程序的相互链接等

  网络小白一个,针对网络的基础知识无从下手,因此本文引用了鸟哥私房菜中的众多概念性知识,在此谢过,本文主要从OSI七层协议,TCP协议和一些网络中专业词汇进行解析,并通过子网掩码的划分,网络接口的配置、路由配置等实例来加深对网络的理解。

  由于网络链接过程相当复杂,包括硬件数据封装与应用程序的相互链接等, 如果想要写一个网络链接的全部功能都集中在一起的程序,那么任何一个环节出错,整个程序都要改写,非常麻烦,因此我们将整个网络链接过程分成多个层次来处理,且每层数据传递是顺序传递的,这就是OSI七层协议。

  在七层协议中,每层都会有自己独特的头部数据(header):告知对方这里面的信息是什么,而真正的数据在后面

  Layer1 物理层:由于网络传输介质传输的是比特位(01),因此物理层必须定义所使用的传输设备的电压和信号等,同时还必须了解数据帧转换成比特流的编码方式,最后链接实际传输介质并发送/接收比特信号。

  Layer2 数据链路层:硬件部分,主要处理MAC数据帧,传递给物理层转换成比特流;软件部分主要处理来自上层的数据表转换成MAC的格式。相关协议:PPP

  Layer3 网络层:定义IP地址,定义计算机之间的链接建立,终止维护等,数据包的传输路径选择等。相关协议:IP、ICMP、ARP、RARP

  Layer4 传输层:定义发送端与接收端的链接技术(TCP,UDP),同时包括该技术的数据包格式,数据包的发送,流程的控制等,以确保各个资料数据可以正确无误的到达目的端。相关协议:TCP、UDP

  Layer6 表示层:定义网络服务(或程序)之间的数据格式的转换,使数据格式标准化,也包括数据的加密解密也是在这层上处理

  Layer7 应用层:将数据发送给应用程序,并最终展示给用户。相关协议:HTTP、FTP、SMIP等

  虽然OSI七层协议的架构非常严谨,但是由于太过严谨导致程序编写相当不容易,因此产生了TCP/IP协议。

  事实上,虽然目前的以太网线芯且两两成对,但实际使用只有1、2、3、6芯而已,其他的则时某些特殊用途的场合才会使用,但是由于主机与主机链接以及主机与集线器链接时,所使用的网线线序定义并不相同,因此有由于接头的行不同网线有可分为两种:

  带冲突检测的载波侦听多路访问的数据传输的工作方式,其工作原理为:检测线路是否空闲,空闲则发包,并且边发边检测侦听,一旦冲突就立即停止发送,只要符合CSMA/CD机制的网络就称为以太网。

  交换机可以有效的避免冲突,交换机可以自动选择路线,,每一个端口就是一个冲突域,且每个端口有收发两根线实现全双工功能,交换机可以链接多个不同的多个冲突域,路由器可以链接多个不同的广播域。

  数据链路层的工作是基于MAC地址工作的,CSMA/CD发送出去的数据帧就是MAC,该数据帧上面存储了两个非常重要的数据,就是目标与来源的网卡卡号,因此我们又称网卡卡号为MaC地址。下图中目的地址和来源地址就指的网卡卡号。

  以太网中数据帧能够存储数据的最大单位,标准定义为1500bytes,这就时MUT的最大传输单元。(IP数据包最大可达到65535bytes),可以增大MTU来提高网络使用率,但是无法确认所有网络设备都支持更大的MTU,如果不支持则可能导致数据包丢失等问题。所以MTU设定9000bytes可以设置在内部网络的环境中部署,外网还是应该保持原有的1500标准。

  集线器(hub):Hub并不记忆该信息包是由哪个MAC地址发出,哪个MAC地址在Hub的哪个端口,且每个端口共享带宽,半双工工作机制,因为CSMA/CD的缘故,在很忙的网络环境中,集线器(Hub)这个网络共享设备就可能发生冲突的情况。工作与物理层。

  交换机:在交换机内部有一个特别的内存,这个内存可以记录每个Switch port与其链接的PC的MAC地址,所以当来自Switch两端的PC要相互传输时,每个数据帧将通过交换机内存数据而传送到目标主机上,且每个端口有独立的带宽,全双工工作机制,工作于数据链路层,如果是三层交换机(具有路由功能),则工作于网络层。

  Identification:识别码,上面介绍过帧的默认最大传输单元为1500bytes,而IP包最大可以到65536bytes,那么要想将IP包封装到数据帧中就必须将其分割成更小的IP包,那个这个识别码就是用于识别这此小的IP分段是否来自同一个IP包。

  Frag Offset:表示目前这个IP分段在原始的IP包中所处的位置,相当于这个IP分段的序号。通过包的总长度、识别码、特殊标志、分段偏移就可以将小的IP分段在接收端组合成完整的IP数据包。

  补脑:Dos 攻击 Ping –f 10.1.250.95 –s 65507泛洪  发送大量数据包给该ip,查看网卡利用率会很高,DDOS 成千上万台计算机给指定计算机发送大量数据包

  当我们想要了解某个IP配置于哪张以太网卡上面,我们主机会对整个局域网发送出ARP数据包,对方接收到ARP数据包后就会返回他们的MAC给我们,知道对方的网卡地址后就可以传递数据了,当ARP协议取得目标IP与它的网卡卡号后,就会将其记录到ARPtable(内存中)中记录20分钟,Linux中对应命令 arp –n.

  顺序号:当IP包过太时,需要对包进行分段。顺序号就是记录每个数据包的顺序,以方便接收端将包重新组合。

  校验和:发送端首先会计算一个检验码,接收端收到数据包后会再次计算这个值,如果两个值相符合就接受数据包,否则就认为此数据包已损坏。

  接收端收到数据包后,回自复一个带有SYN=1,ACK=1的数据包,告诉发送方已接收到数据包,并等发起端的回复。

  UDP全程的全程是用户数数据报协议,UDP与TCP不一样,UDP不提供可靠的传输模式,因为它不是面向链接的机制,这是因为UDP传送过程中,接收端在接收到数据包之后,不会回复相应数据包给发送端,所以数据包并没有像TCP数据包有严谨的检查机制。(一直在发送信息,你有没收到我不知道,我也不等待你给我回应,我就是一直发)

  IP地址:它可以唯一表示IP网络中的每台设备,每台主机(计算机、网络设备、外围设备)必须有唯一的地址。

  在相同物理网段的主机如果使用相同的网络IP范围,则这些主机都可以通过CSMA/CD的功能直接在局域网内用广播进行网络的链接,即直接通过MAC数据来进行数据传递

  Private IP:私有IP或保留IP,不能直接连上Internet的IP,主要用于局域网络内的主机链接规划

  由于这三段Class的IP是预留使用的,所以并不能直接作为Internet上面的连接使用,否则会导致到处都有相同的IP。

  将Net_ID处全部标记为1,Host_ID处全部标记为0就可计算出netmask的值。–与ip地址相与得到网络地址。

  主机ID向网络位ID借位,划分超网时,需要注意不网络的范围,如果合并范围包含其他公司的网络则不能划分。

  1、某公司申请到一个C 类IP 地址,但要连接6 个的子公司,最大的一个子公司有26 台计算机,每个子公司在一个网段中,则子网掩码应设为?

  分析:由于6个子公司,每个子公司要在一个单独的网段中,因此至少需要2^n=6,因此能够得到n=3,最大主机数2^(8-3)-2=30个网络,满足大于等于26的需求

  2、一家集团公司有12家子公司,每家子公司又有4个部门。上级给出一个172.16.0.0/16的网段,让给每家子公司以及子公司的部门分配网段。

  分析:因为有12个子公司,因此至少要划分2^n=12个子网,因此能够得到n=4,因此需要向主机位借4个,能够划分16个子网,但是只用12个,剩余4个闲置,因此划分后得到:

  又因为每个公司又有4个部分,因为要在12个子网的基础上再次划分子网,所以还需要在向主机位借2位即可, 下面以第一个子公司划分为4个子网为例,因此又能够得到:

  255.255.255.255:限制广播地址。对本机来说,这个地址指本网段内(同一广播域)的所有主机

  127.0.0.1~127.255.255.254:本机回环地址,主要用于测试。在传输介质上永远不应该出现目的地址为“ 127.0.0.1”的 数据包。

  169.254.x.x:如果Windows主机使用了DHCP自动分配IP地址,而又无法从DHCP服务器获取地址,系统会为主机分配这样地址。

  网关:指向目标地址的下一个路由器的临近接口,这里需要注意的是主机与你的主机配置的gateway一定要在同一网段内。

  本地dns数据库:/etc/hosts里面可以自行指定ip地址和主机名,且主机名可以有多个别名,然后ping主机名就可以看到对应的ip地址

  网络接口设备别名:为每个设备别名生成独立的接口配置文件,在启用之前首先要关闭NetworkManager服务,且必须使用静态IP。

  将多块网卡绑定同一个IP地址对外提供服务,可以实现高可用和负载均衡,直接给两块网卡绑定一个IP是不可能的,通过bonding虚拟一块网卡对外提供链接,但是需要两块网卡修改为同一个MAC地址。

  ——轮流的往网卡上面发数据包,两个网卡都走数据,第一个用户来了请求第一个快网卡,第二个用户来了请求第二块网卡,如果二块网卡坏了,来了第一个用户,第一个网卡,来了第二个就可能走第二块网卡,因此能够实现均匀负载,但容错能力较差。

  当且仅当活动的slave接口失败时才会激活其他slave。为了避免交换机发生混乱此时绑定的MAC地址只有一个外部端口上可见

  miimon:是用来进行链路监测的。如果miimon=100,那么系统每100ms 监测一次链路连接状态,如果有一条线路不通就转入另一条线路

  实验时,IP地址可以配置与自己windows中的IP在一个网段,在虚拟机图形界面右下角,网卡图标点击断开连接进行测试,在windows界面ping配置的IP地址即可。

  172.16.0.0/16       R1-1        10.0.0.2  注意在添加路由表的时候不用添加相邻网段的,加不相邻的就可以,因此 配置路由表示 添加此网络即可

  192.168.0.0/24      R2-1        10.0.0.1  注意在添加路由表的时候不用添加相邻网段的,加不相邻的就可以,因此 配置路由表示 添加此网络即可

  模拟实例:分别用两个centos6虚拟机,模仿两个路由,每个虚拟机要用有两个虚拟网卡,模拟两个接口,具体设置如下:

 
关键词: linux基础教程
(文/小编)
打赏
免责声明
• 
本文为小编原创作品,作者: 小编。欢迎转载,转载请注明原文出处:http://www.31duo.com/news/show-201553.html 。本文仅代表作者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,作者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们。
 

(c)2016-2019 31DUO.COM All Rights Reserved浙ICP备19001410号-4

浙ICP备19001410号-4