网络通讯基本原理

1) 主机之间需要有传输介质
2) 主机上必须有网卡设备
   可以将二进制信息转换为高低电压 信号的调制过程
   可以将高低电压转换为二进制信息 信号的解调过程
3) 多台主机需要协商网络速率
   100Mbps 	~  100Mbit per second ~ 每秒钟传输100M bit的信息  0 1
   1M ~ 1000k   1000000b
   1k ~ 1000b
   常见的问题: 购买一个100M网络线路, 但是用迅雷下载软件的时候远远到达不了100M
   100Mb 网络的数据单位 bit    1bit=1/8byte   100/8=12.5  10M  12M
   100MB 磁盘的数据单位 Byte   1byte=8bit	   100*8=800M  

网络基础硬件介绍

交换机: 在一个网络中实现多台主机之间通讯
        一台交换机所连接的所有主机构成网络,成为局域网
实现通讯:
1) 主机上要有相应的mac地址(物理地址) 有12位16进制数组成  0-9 A B C D E F
2) 利用交换机进行通讯,有时需要借助广播方进行通讯
   广播的产生有时会影响主机性能
补充: 通讯的过程一定是有去有回的

路由器: 实现不同局域网主机之间的通讯
实现通讯:
1) 主机上要有相应的IP地址(逻辑地址)  用十进制表示  192.168.10.1
   IP地址的组成: 网络信息(局域网标识)+主机地址信息
2) 需要借助路由器中的路由表实现通讯
   网络信息(局域网标识信息)   接口信息   R1
            01                 eth0
			02				   eth1
			04                 eth2       手动配置
   网络信息(局域网标识信息)   接口信息   R2
            02                 eth0 
            03                 eth1
            04                 eth3		  手动配置	
            01                 eth2	      手动配置	
   网络信息(局域网标识信息)   接口信息   R3
            04                 eth0 
            03                 eth1	
            01                 eth2       手动配置      				
   路由表的信息是如何生成的?
   1) 利用直连网络环境自动生成
   2) 利用手工配置方式 		 (静态路由配置)
   3) 利用路由协议动态生成  (动态路由配置)
   
   网关: 一个主机想访问其他网络主机的必经之路
   路由器的接口: 网关接口
   路由器的地址: 网关地址

静态路由配置方法:

网络环境规划
a 两台主机 
  主机01  192.168.1.1  == 01.01	
          192.168.1.254
  主机02  192.168.4.1  == 04.01
          192.168.4.254
b 两台交换机
c 三台路由器

在这里插入图片描述

第一个里程: 路由器配置(接口地址配置)
R1 
Router> en  	命令提示符 					用户模式提示符
Router# conf t             					特权模式提示符  可以进行系统配置查看
Router(config)# interface interface g0/0    配置模式提示符  
Router(config-if)#                          接口模式提示符
g0/0接口配置
ip address 192.168.1.254 255.255.255.0
no shutdown
g0/1接口配置
ip address 192.168.2.1 255.255.255.0
no shutdown
检查确认:
ctrl+z 快速返回到特权模式
show ip interface brief    --- 只显示ip地址信息
Router#show ip int br
Interface              IP-Address      OK? Method Status                Protocol 
GigabitEthernet0/0     192.168.1.254   YES manual up                    up 
GigabitEthernet0/1     192.168.2.1     YES manual up                    down 

R2
R2#show ip int br
Interface              IP-Address      OK? Method Status                Protocol 
GigabitEthernet0/0     192.168.2.2     YES manual up                    up 
GigabitEthernet0/1     192.168.3.1     YES manual up                    down 

R3
Router#show ip int br
Interface              IP-Address      OK? Method Status                Protocol 
GigabitEthernet0/0     192.168.3.2     YES manual up                    up 
GigabitEthernet0/1     192.168.4.254   YES manual up                    up 

R1路由表信息
R1#show ip route
     192.168.1.0/24 is variably subnetted, 2 subnets, 2 masks
C       192.168.1.0/24   is directly connected, GigabitEthernet0/0
L       192.168.1.254/32 is directly connected, GigabitEthernet0/0
     
  	192.168.2.0/24 is variably subnetted, 2 subnets, 2 masks
C       192.168.2.0/24   is directly connected, GigabitEthernet0/1
L       192.168.2.1/32   is directly connected, GigabitEthernet0/1	
   
路由配置 
ip route 去往网络地址信息 网络掩码  去往目标的下一条接口地址
ip route 192.168.4.0 255.255.255.0 192.168.2.2	
R1#show ip route
     192.168.1.0/24 is variably subnetted, 2 subnets, 2 masks
C       192.168.1.0/24 is directly connected, GigabitEthernet0/0
L       192.168.1.254/32 is directly connected, GigabitEthernet0/0
     192.168.2.0/24 is variably subnetted, 2 subnets, 2 masks
C       192.168.2.0/24 is directly connected, GigabitEthernet0/1
L       192.168.2.1/32 is directly connected, GigabitEthernet0/1

S    192.168.4.0/24 [1/0] via 192.168.2.2

R2路由表信息
     192.168.2.0/24 is variably subnetted, 2 subnets, 2 masks
C       192.168.2.0/24 is directly connected, GigabitEthernet0/0
L       192.168.2.2/32 is directly connected, GigabitEthernet0/0

     192.168.3.0/24 is variably subnetted, 2 subnets, 2 masks
C       192.168.3.0/24 is directly connected, GigabitEthernet0/1
L       192.168.3.1/32 is directly connected, GigabitEthernet0/1
路由配置 
ip route 去往网络地址信息 网络掩码  去往目标的下一条接口地址
ip route 192.168.4.0 255.255.255.0 192.168.3.2
ip route 192.168.1.0 255.255.255.0 192.168.2.1

     192.168.2.0/24 is variably subnetted, 2 subnets, 2 masks
C       192.168.2.0/24 is directly connected, GigabitEthernet0/0
L       192.168.2.2/32 is directly connected, GigabitEthernet0/0
     192.168.3.0/24 is variably subnetted, 2 subnets, 2 masks
C       192.168.3.0/24 is directly connected, GigabitEthernet0/1
L       192.168.3.1/32 is directly connected, GigabitEthernet0/1

S    192.168.4.0/24 [1/0] via 192.168.3.2
S    192.168.1.0/24 [1/0] via 192.168.2.1

R3路由表信息
	 192.168.3.0/24 is variably subnetted, 2 subnets, 2 masks
C       192.168.3.0/24 is directly connected, GigabitEthernet0/0
L       192.168.3.2/32 is directly connected, GigabitEthernet0/0

     192.168.4.0/24 is variably subnetted, 2 subnets, 2 masks
C       192.168.4.0/24   is directly connected, GigabitEthernet0/1
L       192.168.4.254/32 is directly connected, GigabitEthernet0/1

路由配置 
ip route 去往网络地址信息 网络掩码  去往目标的下一条接口地址
ip route 192.168.1.0 255.255.255.0 192.168.3.1	

S    192.168.1.0/24 [1/0] via 192.168.3.1

     192.168.3.0/24 is variably subnetted, 2 subnets, 2 masks
C       192.168.3.0/24 is directly connected, GigabitEthernet0/0
L       192.168.3.2/32 is directly connected, GigabitEthernet0/0
     192.168.4.0/24 is variably subnetted, 2 subnets, 2 masks
C       192.168.4.0/24 is directly connected, GigabitEthernet0/1
L       192.168.4.254/32 is directly connected, GigabitEthernet0/1

在这里插入图片描述

删除静态路由方法:
R1取消静态路由
no ip route 192.168.4.0 255.255.255.0 192.168.2.2
R2取消静态路由
no ip route 192.168.4.0 255.255.255.0 192.168.3.2
no ip route 192.168.1.0 255.255.255.0 192.168.2.1	
R3取消静态路由
no ip route 192.168.1.0 255.255.255.0 192.168.3.1

动态路由配置方法:

默认R1-R3路由表情况:
R1路由表:  张三  游戏 厨艺 销售
192.168.1.0    g0/0 
192.168.2.0    g0/1    R1G0/1 -- R2G0/0

192.168.3.0    g0/1 
192.168.4.0    g0/1
R2路由表:  李四  厨艺 销售 游戏
192.168.2.0    g0/0    R1G0/1 -- R2G0/0
192.168.3.0    g0/1    R3G0/0 -- R2G0/1

192.168.1.0    g0/0
192.168.4.0    g0/1
R3路由表:  王五  销售 游戏 厨艺
192.168.3.0    g0/0    R3G0/0 -- R2G0/1
192.168.4.0    g0/1

192.168.2.0    g0/0 
192.168.1.0    g0/0

实现多个路由器路由表信息一致的过程: 路由收敛过程
动态路由协议如何配置:
RIP 思科私有(EIGRP) OSPF IS-IS BGP
R1动态路由配置:
router rip   --- 指定配置使用什么路由协议
network 192.168.1.0   --- 宣告过程
network 192.168.2.0 

学习的信息
R    192.168.3.0/24 [120/1] via 192.168.2.2, 00:00:09, GigabitEthernet0/1
R    192.168.4.0/24 [120/2] via 192.168.2.2, 00:00:20, GigabitEthernet0/1
R2动态路由配置
router rip
network 192.168.2.0
network 192.168.3.0

学习的信息 
R    192.168.1.0/24 [120/1] via 192.168.2.1, 00:00:07, GigabitEthernet0/0
R    192.168.4.0/24 [120/1] via 192.168.3.2, 00:00:13, GigabitEthernet0/1

R3动态路由配置
router rip
network 192.168.3.0
network 192.168.4.0

学习的信息 
R    192.168.1.0/24 [120/2] via 192.168.3.1, 00:00:23, GigabitEthernet0/0
R    192.168.2.0/24 [120/1] via 192.168.3.1, 00:00:23, GigabitEthernet0/0

网络架构设计方法(网络拓扑)

三个层次规划网络拓扑
核心层: 路由器(网关接口)   实现和外网通讯 冗余能力(主备)
汇聚层: 交换机(三层交换机) 冗余能力       策略控制能力
接入层: 交换机(二层交换机) 终端设备接入网络

网络层次模型

OSI7层模型(公司的组织架构)

管理部   公司决策                        	管理部
行政部   传到领导要求 阻止活动          	行政部
财务部   发工资 公司账目
市场部   推广宣传
销售部   销售产品
物流部   运输产品
仓储部   保存看管物品

层次模型结构: 由上至下
思科                             华为设备

应用层   标准规范
* 应用层程序接口规范  
表示层
* 数据转换加密 压缩
会话层
* 控制网络连接建立或者终止
传输层
* 保证数据传输的可靠性
网络层   路由协议EIGRP(语言)     网络层   路由的能力 三层设备
* 可以实现通过路由找到目标网络
数据链路层                       交换能力 二层设备
* 可以实现通过交换找到真正目标主机
物理层
* 指定一些网络物理设备标准  网卡 网线 光纤

是由ISO(国际标准化组织): 定义了标准通讯模型

利用OSI7层模型如何建立主机与主机之间的通讯
数据的封装过程
数据的解封装过程

TCP/IP模型(4层模型)
在OSI7层模型的基础上做了简化
应用层      
表示层          应用层  
会话层 
传输层          主机到主机层
网络层          互联网层
数据链路层      接入层
物理层	

TCP协议: 传输控制协议  --- 面向连接的网络协议
在线发送文件==面向连接
发送文件 --> 对端点击接收
优点: 数据传输可靠性高 
缺点: 数据传输效率低

UDP协议: 用户报文协议  --- 无连接的网络协议
离线发送文件==无连接
发送文件 --> 直接发送了
优点: 数据传输效率高
缺点: 数据传输可靠性低

QQ离线传输文件/在线传输文件: TCP协议
在线传输 
PC 传输文件 - 	交换机 - 检查目标QQ主机是否在局域网中
				路由器 - 目标主机

离线传输
PC 传输文件 - 互联网 - QQ公司服务器(临时存储服务器) --- 对端QQ是否登录在线


TCP协议: 两个重要原理
预备知识: TCP协议报文结构
源端口:  1~65535 
目标端口:
占用16个bit --> 占用1个bit 0  ---> 0  1 --- 1  10 --- 2
二进制 0   十进制 0
二进制 1   十进制 1
二进制 10  十进制 2
二进制 11  十进制 3
二进制 100 十进制 4
1个bit 0 1          2个端口  0 1   0~1         2的1次方       2的n次方  n占用多少bit
2个bit 00 01 10 11  4个端口  0 1 2 3  0~3      2的2次方=4 0~3
3个bit 000 001 010 011 100 101 110 111  8个端口 0 1 2 3 4 5 6 7  0~7   2的3次方=8 0~7

16个bit 2的16次方 1~65535
控制字段:
syn(1): 请求建立连接控制字段
fin(1): 请求断开连接控制字段
ack(1): 数据信息确认控制字段

TCP三次握手过程:

01. 主机A向主机B发送TCP报文
    报文中控制字段syn置为1, 请求建立连接 
02. 主机B向主机A发送TCP响应报文
    报文中控制字段syn置为1,ack置为1
03. 主机A向主机B发送TCP报文 
    报文中控制字段ack置为1, 确认主机B发送信息已经接收到了
  1. 第一次握手:
    发送syn请求建立连接控制字段, 发送seq序列号信息(X), 第一个数据包的系列号默认为0
    1. 第二次握手:
      发送syn请求建立连接控制字段, 同时还会发送ack确认控制字段
      发送seq序列号信息也为(Y), 还会发送ACK确认号(X+1)信息(对上一个数据序列号信息进行确认)
    2. 第三次握手:
      发送ack确认控制字段,发送seq序列号信息(X+1),发送ack确认号(Y+1)
      嗅探一下:在这里插入图片描述

TCP四次挥手过程:

1) 第一次挥手:
   发送fin请求断开连接控制字段
2) 第二次挥手:
   发送ack确认控制字段 
3) 第三次挥手:
   发送fin请求断开连接字段, 发送ack确认字段
4) 第四次挥手:
   发送ack控制字段

嗅探一下:
在这里插入图片描述

TCP的十一种状态集

TCP三次握手: 5种状态
00: 最开始两台主机都处于关闭状态  	closed
01: 服务端将相应服务进行开启      	closed --- listen
02: 客户端向服务端发出连接请求    	closed --- syn_sent
03: 服务端接收到连接请求,进行确认  listen --- syn_rcvd
04: 客户端再次进行确认             syn_sent --- established
05: 服务端接收到确认信息           syn_rcvd --- established

在这里插入图片描述

TCP四次挥手:
01: 客户端发送请求断开连接信息                  established -- fin_wait1
02: 服务端接收断开连接请求,并进行确认           established -- close_wait
03: 客户端接收到了确认信息                        fin_wait1   -- fin_wait2
04: 服务端发送ack和fin字段               		  close_wait  -- last_ack
05: 客户端接收到请求断开连接信息,发送确认        fin_wait2   -- time_wait 
06: 服务端接收到确认信息                          last_ack   -- closed
07: 客户端等待一段时间                           time_wait   -- closed

在这里插入图片描述

网络中重要协议原理

DNS: 域名解析系统
14.215.177.39   www.baidu.com
笔记本电脑   交换机   多个路由器    京东网站服务器
www.baidu.com  --- 14.215.177.39
金山 --- DNS的解析原理
windows本地dns解析文件: C:\Windows\System32\drivers\etc\hosts

在这里插入图片描述
在这里插入图片描述
yum install -y bind-utils##此包是和dns相关的
dig www.baidu.com##此命令是看百度的ip地址
在这里插入图片描述
dig www.baidu.com +trace##可以追踪所经过的dns服务器
在这里插入图片描述

ARP协议

ARP: 已知IP地址解析mac地址信息

在这里插入图片描述

IP地址概念:

192.168.1.1 --- IP报文	
2的32次方  
二进制表示: 000000000000000000000000000000
十进制表示: 0~4294967295

00101010  00000000  00000000  00000000
 十进制   十进制    十进制    十进制
192.168.1.1  --- 点分十进制地址

二进制 --> 十进制转换关系
01010011 ---> 十进制  做求和运算
01000000 ---> 64  64+16+2+1=83
00010000 ---> 16
00000010 ---> 2
00000001 ---> 1

十进制 --> 二进制转换关系
172     ---> 二进制  做求差运算
172 - 128 = 44 - 32 = 12 - 8 = 4 - 4 =0

128 64 32 16 8  4  2  1
0   0  0  0  0  0  0  0
1   0  1  0  1  1  0  0
  1. IP地址的分类
    a 按照地址的范围进行划分
    A B C D E
    b 按照地址用途进行划分
    公网地址: 全球为一 护照
    私网地址: 重复利用地址, 避免地址枯竭, 私网地址网段不能出现在互联网路由器路由表 身份证
    NAT
    c 按照通讯方式划分
    单播地址:
    网卡上配置的地址
    广播地址:
    主机位全为1的地址 192.168.1.11111111 --> 192.168.1.255
    主机位全为0的地址 — 网络地址 --> 192.168.1.0

    网络中主机数量=2的n次方-2 2的8-2=256 - 2 = 254 - 1(路由器网关地址) = 253
    n 有多少个主机位
    -2 一个广播地址 一个网络地址 是不能配置在网卡
    C类地址, 一个网络中可以有 253主机
    B类地址, 一个网络中可以有 2的16 - 3 = 65536 - 3 = 65533
    A类地址, 一个网络中可以有 2的24 - 3 = ???

    组播地址: D类地址

    192.168.1 253
    192.168.2 253

    子网划分概念: 将一个大的网络划分成几个小的网络

    172.16.0.0 B类地址
    不做子网划分

    1. 一个大的网络, 不做子网划分, 造成地址浪费
    2. 一个大的网络, 不做子网划分, 造成广播风暴
    3. 一个大的网络, 不做子网划分, 造成路由压力
      做子网划分
    4. 节省IP地址
    5. 减少广播影响
    6. 减轻路由器压力

    如何进行子网划分
    172.16.10.0 子网掩码标识

    子网掩码: 32位二进制的数
    172.16.10.0 255.255.0.0
    11111111 00000000 00000000 00000000 — 255.0.0.0 A类 /8
    11111111 11111111 00000000 00000000 — 255.255.0.0 B类 /16
    11111111 11111111 11111111 00000000 — 255.255.255.0 C类 /24

    00000000 00000000 00000000 00000000 — IP地址网络位对应子网掩码置为1

    172.16.10.0 255.255.0.0

    面试题:
    已知地址信息 172.16.0.0/18 172.16.0.0/16 2个主机位

    问题:

    1. 可以划分4个子网,子网的网络地址 OK
    2. 子网掩码信息 ok
    3. 每个子网的主机地址范围

    具有30个可用IP地址的子网段,其子网掩码是: 255.255.255.224
    A类/8 2的24次方 - 2
    B类/16 2的16次方 - 2
    C类/24 2的8次方 - 2 253
    27 = 128 26=64 2*5=32 32-2=30
    192.168.1. 000 00000
    255.255.255.224

办公环境上网原理

路由器配置:
01. 配置上网的用户名和密码信息 实现拨号访问外网  自动获取公网地址
    静态地址配置,在路由器外网接口配置运营商给你的公网地址
02. 需要在路由器上配置DHCP服务信息
03. 需要配置路由信息(静态默认路由???)

虚拟主机上网原理

在这里插入图片描述

  1. 系统路由设置
    设置方法:
    centos6: route 和网络相关的命令 使用net-tools
    静态默认路由:
    a 编写网卡配置文件
    b 利用命令临时配置
    route add default gw 10.0.0.2(网关地址)
    route del default gw 10.0.0.2
    作用: 实现主机访问外网, 用于测试新的网关地址

    静态网段路由:
    route add -net 10.0.3.0 netmask 255.255.255.0 gw 10.0.1.2
    route del -net 10.0.3.0 netmask 255.255.255.0 gw 10.0.1.2
    路由信息
    0.0.0.0 10.0.0.2 0.0.0.0 UG 0 0 0 eth0
    10.0.3.0 10.0.1.2 255.255.255.0 UG 0 0 0 eth0

    静态主机路由:
    route add -host 10.0.3.201 dev eth1
    route del -host 10.0.3.201 dev eth1

    centos7: ip route 和网络相关的命令 使用iproute
    静态默认路由:
    a 编写网卡配置文件
    b 利用命令临时配置
    ip route add default via 10.0.0.2
    ip route del default via 10.0.0.2

    静态网段路由:
    ip route add -net 10.0.3.0 netmask 255.255.255.0 via 10.0.1.2
    ip route del -net 10.0.3.0 netmask 255.255.255.0 via 10.0.1.2

    静态主机路由:
    ip route add -host 10.0.3.201 via 10.0.1.2
    ip route del -host 10.0.3.201 via 10.0.1.2

Logo

一站式 AI 云服务平台

更多推荐