• 6.网络-基础


    网络通讯基础原理

    网络通讯条件
    1) 需要具有传输介质	
    
    2) 需要具有网卡设备
       将系统可以识别二进制信息转换为网线可以承载的电信号信息
       将网线可以承载电信号信息转换为修通可以识别二进制信息
       
    3) 需要通讯速率协商  
       1Gbps=1Gbit 1G*1024*1024*1024 bit(111111101010101010101010)
       1b=1/8B  1B=8b 
       100Mb=100/8=10MB
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    网络通讯常用设备

    交换机:  实现一个网络内部多个主机通讯需求
    识别地址: MAC地址信息  物理地址(不能改变 全球唯一)  采用16进制方式编写
    通讯方式: 采用广播方式进行通讯
    PS: 如果想实现完整通讯过程, 数据传输必须是有去有回
    
    路由器:  实现不同网络之间多个主机通讯需求
    识别地址: IP地址信息   逻辑地址(可以改变 全球唯一?) 采用10进制方式编写  
              IP地址组成: 网络地址信息 + 主机地址信息
    		              192.168.10 . 10 
    					 网络位		   主机位
    通讯方式: 借助路由表(地图)进行数据传输		
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    网络结构

    核心层: 实现和外网进行对接                   防火墙设备/路由器设备
    汇聚层: 实现数据流量汇聚(管理控制/流量控制)    交换机设备(三层)
    接入层: 实现与终端设备相连                   交换机设备(二层)
    
    • 1
    • 2
    • 3

    OSI模型 TCP/IP模型

    在这里插入图片描述

    数据信息封装过程 (解封装就是反过来)

    数据 --> 传输层头部 + 数据 ---> 网络层头部 + 传输层头部 + 数据 ---> 数据链路层头 网络层头部 + 传输层头部 + 数据 ---> bit流信息

    应用层协议

    · telnet协议  可以实现远程连接/远程端口访问测试       协议端口号 23
    · FTP协议     可以实现文件传输                        协议端口号 20 21 (主动模式/被动模式)
    · SNMP协议    简单网络管理协议(进行监控网络设备状态)	协议端口号 161		  
    · HTTP协议    超文本传输协议(获取网站代码信息)        协议端口号 80
    · SMTP协议    简单邮件传输协议(实现发送邮件)          协议端口号 25
    · NFS协议     网络文件系统协议(数据网络共享存储)	
    · DHCP协议    动态主机配置协议(自动获取IP地址)			  
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    DHCP协议原理
    1) 主机接入局域网中, 向局域网中发送DHCP请求包(广播方式发送)
    2) DHCP服务器会给主机分配一个IP地址
    3) 主机接收到IP地址, 进行确认
    4) DHCP服务器接收到确认会将地址池信息进行调整,排除已经分发的地址
    5) DHCP会向主机询问是否继续使用地址信息
    6) 回收到期IP地址, 便于重新分配

    传输层协议

    TCP: 传输控制协议(面向连接网络协议)
    优势: 保证数据传输可靠性
    劣势: 传输效率较低
    应用: 文件传输 邮件传输 网站访问

    UDP: 用户报文协议(无连接网络协议)
    优势: 保证数据传输效率
    劣势: 数据传输可靠性无法保证
    应用: DNS解析 视频流 语音信息

    端口号信息: 端口范围: 1~65535 2的16次方个bit=65536
    控制字段: 0 - 控制字段功能关闭 1 - 控制字段功能开启
    syn: 请求建立连接控制字段
    fin: 请求断开连接控制字段
    ack: 确认数据包控制字段

    TCP三次握手过程

    客户端 --> 服务端  发送数据三次握手建立
    第一次握手: 客户端 ---> 服务端 发送数据包
    发送TCP报文信息: 控制syn=1       请求建立连接
                     序列号: seq=x     
    第二次握手: 服务端 ---> 客户端 发送数据包
    发送TCP报文信息: 控制syn=1 ack=1 请求建立连接 并对接收数据包进行确认
                     序列号: seq=y
    				 确认号: ack=x+1 
    第三次握手: 客户端 ---> 服务端 发送数据包
    发送TCP报文信息: 控制ack=1       接收数据包确认信息
                     序列号: seq=x+1 
    				 确认号: ack=y+1
    逻辑链路建立, 可以传输数据 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    TCP四次挥手过程

    客户端 --> 服务端  发送数据四次挥手断开
    第一次挥手: 客户端 ---> 服务端 发送数据包
    发送TCP报文信息: 控制fin=1       请求断开连接  
    第二次挥手: 服务端 ---> 客户端 发送数据包
    发送TCP报文信息: 控制ack=1       服务端知道客户端想断开连接了,对接收数据包进行确认
    第三次挥手: 服务端 ---> 客户端 发送数据包 
    发送TCP报文信息: 控制fin=1 ack=1 请求断开连接 并对接收数据包再次确认可以断开连接了
    第四次握手: 客户端 ---> 服务端 发送数据包
    发送TCP报文信息: 控制ack=1       接收数据包确认信息
    逻辑链路断开, 数据传输终止
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    DNS解析原理 核心思想: 已知域名 —> IP地址

    概念说明: DNS 域名解析系统, 让访问网站人员更加方便记录网站地址信息
    解析过程: 
    1) 本地解析过程: 查找缓存记录 ipconfig/displaydns  查找本地hosts解析文件
    2) 递归解析过程: 向LDNS服务器发送查询解析记录请求
    3) 迭代解析过程: 根域名服务器全球13台 ---> 顶级域名服务器 ---> 二级域名服务器 (A记录) ---> LDNS服务器 ---> 主机
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述

    ARP协议原理 核心思想: 已知IP地址 —> Mac地址

    作用说明: 提高数据传输效率/交换网络中广播产生	
    解析过程:
    1) 交换机获取所有主机mac信息 构建完整mac地址表
    2) 主机利用arp请求包(广播)获得对端主机mac地址信息
       构建ARP表, 进行数据有效封装
    3) 构建ARP表可以采用相互学习方式进行构建
    
    疑问: ARP类型 动态类型 静态类型
    动态类型:  解决网络中主机经常发生变更请求
               问题: 产生ARP广播大量
    
    静态类型:  解决网络中主机永久不变请求(网络安全性/有效阻止广播产生)
               问题: 配置复杂度较高	
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    IPv4地址

    IPv4地址数量: 2的32次方=42亿 
    组成形式: 采用32位二进制数表示, 将每8位为一组, 划分成了4组
    
    • 1
    • 2

    分类:

    · 按照地址使用范围:  A类地址  B类地址  C类地址   D类地址  E类地址	
      A	1.0.0.0		到	126.0.0.0		(0.0.0.0 和127.0.0.0保留)
      B 128.0.0.0	到	191.254.0.0		(128.0.0.0和191.255.0.0保留)
      C 192.0.1.0	到	223.255.254.0	(192.0.0.0和223.255.255.0保留)
      D	224.0.0.0	到	239.255.255.255	  用于多点广播 (组播地址)
      E	240.0.0.0	到	255.255.255.254	  保留(255.255.255.255用于广播)
      
      A类地址特点: 前一组8位二进制数 为网络位   后三组8位二进制数为主机位
                   0NNNNNNN. 0.0.0    1.0.0.0   ~  126.0.0.0       特殊: 127.0.0.1 回环测试地址
      B类地址特点: 前两组8位二进制数 为网络位   后两组8位二进制数为主机位
                   128.0.0.0  ~ 191.254.0.0	
      C类地址特点: 前三组8位二进制数 为网络位   后一组8位二进制数为主机位
                   192.0.1.0	到	223.255.254.0
    			   
    · 按照地址用途分类:  公网地址  私网地址 
      公网地址:  全球唯一不能重复  公网地址网段信息可以出现在互联网路由表中
      私网地址:  可以重复使用      私网地址网段信息不能出现在互联网路由表中
      利用私网地址进行网络通讯时, 需要借助NAT技术(网络地址转换技术)
     
    · 按照地址通讯方式:  单播地址  组播地址  广播地址
      单播地址: 网卡上可以配置地址
      组播地址: D类地址   高可用服务(解决单点故障)
      广播地址: 主机位全为1地址
                C类地址  192.168.10.0   ---  192.168.10. 11111111   192.168.10.255 
                
                主机位全为0地址  网络地址或者网段地址 
    			C类地址  192.168.10.0   
    	
     获取一个网络地址中可以配置IP地址数量 = 2的n次方 - 3 
    			n   有多少主机位可用 
    			-3  去掉广播地址 网络地址 网关地址
                192.168.10.0  8个主机位 2的8次方-3=253 
                172.16.0.0    16个主机位 2的16次方-3=65533				
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33

    地址子网划分

    1) 避免产生广播风暴问题, 影响局域网中每台主机性能
    2) 避免地址浪费问题
    3) 避免造成路由器压力增加
    
    • 1
    • 2
    • 3

    网段组成:网络地址,可用IP,广播地址
    子网数=2^n,其中n为子网部分位数,例:/26,n=26-24
    主机数(可用IP)=2^N-2,其中N为主机部分位数:N=32-26

    例:
    在这里插入图片描述

    掩码概念: 表示网络位 和 主机位 ,掩码是/几,就取前几位作为IP的网络位

    A类似   NNNNNNNN  HHHHHHHH  HHHHHHHH  HHHHHHHH 
            11111111  00000000  00000000  00000000  255.0.0.0      /8
    B类似   NNNNNNNN  NNNNNNNN  HHHHHHHH  HHHHHHHH 
            11111111  11111111  00000000  00000000  255.255.0.0	   /16
    C类似   NNNNNNNN  NNNNNNNN  NNNNNNNN  HHHHHHHH 
            11111111  11111111  11111111  00000000  255.255.255.0  /24 	
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    例如直接分配C类地址只能分配254个主机号,满足不了需求,直接分配B类地址又会造成地址空间浪费。于是提出了子网划分的概念。

    子网划分通过借用IP地址的主机位,充当子网地址,从左开始,从第一个主机位开始借,借位必须是连续的不能跳跃,从而将原网络划分为若干子网。
    随着子网的数目增加,每个子网中的可用主机数逐渐减少。

    IP地址被分为:网络位、子网为、主机位

    例:172.16.0.0/16 进行子网划分
    从第一个主机位开始借
    在这里插入图片描述
    可以分为
    172.16.0.0
    172.16.128.0
    这两个子网
    当子网位为0时,网络地址为172.16.0.0 ------ 172.16.00000000.00000000
    当子网位为1时,网络地址为172.16.128.0 ------ 172.16.10000000.00000000(二进制转换成十进制结果就是128)
    在这里插入图片描述
    子网掩码从/16变成了/17
    0,127,128,255不取,取0,128代表网段,取127,255是广播
    所以可取的地址范围为 172.16.0.1-172.16.127.254
    另外一个为 172.16.128.1-172.16.255.254

    在这里插入图片描述

    在这里插入图片描述

    IPv6地址

    数量: 2的128次方=给地球上每一粒沙子配置地址
    组成形式: 采用128位二进制数据组成  将每16位为一组, 划分成了8组
              xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx
    		  2001:10AF:XXXX
    分类方式: 
    IPv4 转换 IPv6地址
    192.0.2.100   --->  0000:0000:0000:0000:0000:0000:192.0.2.100
    0000:0000:0000:0000:0000:0000:C000:0264  
    1100  0000 0000 0000  0000 0010 0110  0100		   
    C     0     0    0    0    2    6     4 
    C000                  0264  
    
    简写形式:
    2001:0DB8:010F:0001:0000:0000:0000:0D0C
    
    每组地址 0 开头可以省略:2001:DB8:10F:1:0:0:0:D0C  
    每组连续多个 0 可以用一个 0 表示 
    连续多组 0 信息可以用双冒号表示   2001:DB8:10F:1::D0C
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18

    企业上网原理过程 (IDC)

    1) 掌握企业网络拓扑  路由器  --- 三层交换 --- 二层交换
    2) 掌握企业设备配置
       路由器配置:
       1) 路由接口地址配置 
          外部接口配置: 公网地址  拨号配置
       2) 路由协议配置     (静态路由  动态路由 OSPF BGP)
       3) 配置DHCP功能
       交换机配置:
       1) 配置vlan功能  配置trunk功能  配置单臂路由
       2) 配置ACL访问控制列表  iptables firewalld
       3) 配置mac地址绑定	   
    
    虚拟主机上网原理: 
    虚拟主机(虚拟网卡vmnet8) --- 虚拟交换机 --- 虚拟路由器(10.0.0.254) --- 物理网卡(NAT转换) --- 交换机 --- 路由器 
    1) 虚拟主机网络配置 (地址配置)
    2) 虚拟主机网卡选择  
    3) 虚拟路由网关配置 
    4) 物理主机网卡配置
    5) 虚拟软件服务配置  services.msc --- vmware服务
    
    虚拟主机远程连接:
    windows xshell  --- 虚拟网卡(vmnet8) --- 虚拟交换机 --- (虚拟网卡vmnet8)虚拟主机
    1) windows主机虚拟网卡是否配置正确 并启动
    2) 虚拟主机网络配置
    3) 虚拟主机网络服务  
    4) 虚拟主机防火墙是否关闭 	
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26

    操作系统路由配置

    route [add|del] [-net|-host] target [netmask Nm] [gw Gw] [[dev] If]

    add : 添加一条路由规则
    del : 删除一条路由规则
    -net : 目的地址是一个网络
    -host : 目的地址是一个主机
    target : 目的网络或主机
    netmask : 目的地址的网络掩码
    gw : 路由数据包通过的网关

    临时生效,重启系统或者重启网卡后失效

    · 添加默认网关
      centos6 
      route add default gw 10.0.0.254
      route del default gw 10.0.0.254
      
      centos7
      ip route add default via 10.0.0.254
      ip route del default via 10.0.0.254
    
    · 静态网段路由配置
      centos6 
      route add -net 223.5.5.0 netmask 255.255.255.0 gw 10.0.0.254
      route del -net 223.5.5.0 netmask 255.255.255.0 gw 10.0.0.254
     
      centos7 
      ip route add 223.5.5.0/24 via 10.0.0.254
      ip route del 223.5.5.0/24 via 10.0.0.254
      
    · 静态主机路由配置
      centos6 
      route add -host 223.5.5.5 gw 10.0.0.254
      route del -host 223.5.5.5 gw 10.0.0.254
     
      centos7 
      ip route add 223.5.5.5/32 via 10.0.0.254
      ip route del 223.5.5.5/32 via 10.0.0.254
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26

    永久生效
    方法一:
    vi /etc/rc.local
    将路由条目添加到末尾
    route add -net 192.168.10.0/24 dev eth0
    route add -net 192.168.20.0/24 gw 192.168.20.254

    dev : 为路由指定的网口

    方法二:
    vi /etc/sysconfig/static-routes (没有就创建一个)
    将路由条目添加到末尾
    any net 0.0.0.0 gw 192.168.20.1
    any net 192.168.3.0/24 gw 192.168.3.1
    any net 192.168.30.10 netmask 255.255.255.0 gw 192.168.30.1

    CentOS7
    创建文件route-网卡名称
    配置文件中的路由出口信息,必须与此文件名编号一致

    vim /etc/sysconfig/network-scripts/route-eth0(eth0网络接口)

    192.168.10.0/24 via X.X.X.X dev eth0

    表示通过网关X.X.X.X,访问192.168.10.0网络

    systemctl network.service restart
    重启网络服务生效

  • 相关阅读:
    Java面试八股文-基础概念一
    SpringBoot集成Redis实战——步骤、坑点、解决方案
    ArcGIS常用标注技巧
    Nginx+Tomcat 搭建负载均衡、动静分离
    力扣(141.21)补9.1
    vue3加axios配合element-plus实现图片等文件本地上传,并获取服务器返回的真实地址数据,前端写法
    iOS的应用生命周期
    3D模型格式转换工具HOOPS Exchange助力SIMCON搭建注塑项目
    谨防OKR,90%的公司都在错误地使用它们
    微信小程序开发 开启
  • 原文地址:https://blog.csdn.net/Wangjiachenga/article/details/125545640