linux基础--网络知识

文章目录

  • 一.网络部分之网络硬件
    • 1.交换机
      • 1.1 概念
      • 1.2 实现通讯
    • 2.路由器
      • 2.1 概念
      • 2.2 实现通讯
      • 2.3 路由配置
        • 2.3.1静态路由配置
        • 2.3.2动态路由配置
      • 2.4 网络通讯基本原理
  • 二.网络部分之网络层次
    • 1.网络架构设计方法(网络拓扑)
      • 1.1 分层
        • 1.1.1分层的提出
        • 1.1.2三个层次规划及作用
        • 1.1.3网络拓扑
      • 1.2 分类
        • 1.2.1分类
        • 1.2.2拓扑图
    • 2.网络层次模型
      • 2.1 OSI七层模型
        • 2.1.1七层模型结构
        • 2.1.2实现通讯
      • 2.2 TCP/IP模型
  • 三.网络部分之网络协议
    • 1.TCP协议
      • 1.1 报文结构
      • 1.2 tcp三次握手
      • 1.3 tcp四次挥手
      • 1.4 tcp十一种状态集
        • 1.4.1TCP三次握手
        • 1.4.2TCP四次挥手
    • 2.UDP协议
    • 3.dns协议
      • 3.1 概念
      • 3.2 解析原理
    • 4.ARP协议
    • 5.DHCP协议
  • 四.网络部分之IP地址
    • 1.IP地址概念
      • 1.1 二进制 --> 十进制转换关系
      • 1.2 十进制 --> 二进制转换关系
    • 2.IP地址分类
      • 2.1 按照地址的范围进行划分
      • 2.2 按照地址用途进行划分
      • 2.3 按照通讯方式划分
        • 2.3.1单播地址
        • 2.3.2广播地址
        • 2.3.3网络地址
        • 2.3.4组播地址
      • 2.4 主机地址计算
    • 3.子网划分概念
    • 4.怎么进行子网划分
  • 五.网络部分之上网原理
    • 1.办公环境上网原理
    • 2.虚拟主机上网原理
  • 六.网络部分之系统路由配置
    • 1.centos6(route 和网络相关的命令 使用net-tools)
      • 1.1 静态默认路由
      • 1.2 静态网段路由
      • 1.3 静态主机路由
    • 2.centos7(ip route 和网络相关的命令 使用ip route)
      • 2.1 静态默认路由
      • 2.2 静态网段路由
      • 2.3 静态主机路由
  • 自我总结
    • 1.引出网络主机通信的条件
    • 2.引出交换机
    • 3.引出路由器
    • 4.引出静态路由
    • 5.引出NAT

一.网络部分之网络硬件

1.交换机

1.1 概念

1)在一个网络中实现多台主机之间通讯
2)一台交换机所连接的所有主机构成网络,成为局域网

1.2 实现通讯

1) 主机上要有相应的mac地址(物理地址) 由12位16进制数组成 0-9 A B C D E F
2) 利用交换机进行通讯,有时需要借助广播方进行通讯
当一台主机有MAC地址时,但不知道其他主机的mac地址,则可以采用广播的方式进行询问
广播的产生有时会影响主机性能
补充: 通讯的过程一定是有去有回的
linux基础--网络知识_第1张图片

2.路由器

2.1 概念

实现不同局域网主机之间的通讯

2.2 实现通讯

1)主机上要有相应的IP地址(逻辑地址) 用十进制表示 192.168.1.1
IP地址的组成: 网络信息(局域网标识)+主机地址信息
2)需要借助路由器中的路由表实现通讯
基础配置图
linux基础--网络知识_第2张图片
综合配置图
linux基础--网络知识_第3张图片
现在以局域网01的PC1和局域网04的PC1相互访问为例,路由器的路由表如下
linux基础--网络知识_第4张图片
问题及反思:
a.路由表的信息是如何生成的?

  1. 利用直连网络环境自动生成(相邻的局域网接口是直接产生的)
  2. 利用手工配置方式 (静态路由配置)
  3. 利用路由协议动态生成 (动态路由配置)
    b.网关相关的几个问题
    1)网关: 一个主机想访问其他网络主机的必经之路
    2)路由器的接口: 网关接口
    3)路由器的地址: 网关地址

2.3 路由配置

2.3.1静态路由配置

网络环境规划
linux基础--网络知识_第5张图片
配置图
linux基础--网络知识_第6张图片
拓扑图
linux基础--网络知识_第7张图片
配置命令
1)基础配置
以R1为示例
Router> en # 命令提示符 用户模式提示符
Router# conf t # 特权模式提示符 可以进行系统配置查看
Router(config)# interface f0/0 # 配置模式提示符
Router(config-if)# # 接口模式提示符
g0/0接口配置
ip address 192.168.1.254 255.255.255.0
no shutdown
g0/1接口配置
Router(config)# interface f0/1
ip address 192.168.2.1 255.255.255.0
no shutdown
2)路由配置
ip route 去往网络地址信息 网络掩码 去往目标的下一条接口地址
ip route 192.168.4.0 255.255.255.0 192.168.2.2
3)检查确认
a.
在这里插入图片描述
b.
linux基础--网络知识_第8张图片
c.
linux基础--网络知识_第9张图片
4)补充
删除静态路由方法:
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

2.3.2动态路由配置

以RIP为例
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

2.4 网络通讯基本原理

1)主机之间需要有传输介质
2)主机上必须有网卡设备
可以将二进制信息转换为高低电压 信号的调制过程
可以将高低电压转换为二进制信息 信号的解调过程
3)多台主机需要协商网络速率
100Mbps ~ 100Mbit per second ~ 每秒钟传输100M bit的 信息
单位换算:
1M ~ 1000k 1000000b
1k ~ 1000b
问题与反思:
a.网卡和调制解调器是一回事吗
不是一回事。
  网卡属于电脑的硬件。它是工作在链路层的网络组件,是局域网中连接计算机和传输介质的接口,不仅能实现与局域网传输介质之间的物理连接和电信号匹配,还涉及帧的发送与接收、帧的封装与拆封、介质访问控制、数据的编码与解码以及数据缓存的功能等。
  调制解调器是网络运营商提供的,它能把计算机的数字信号翻译成可沿普通电话线传送的模拟信号,而这些模拟信号又可被线路另一端的另一个调制解调器接收,并译成计算机可懂的语言。这一简单过程完成了两台计算机间的通信。
b.购买一个100M网络线路, 但是用迅雷下载软件的时候远远到达不了100M
购买时使用的单位和下载软件时使用的单位不同
购买时使用的单位: 100Mb 网络的数据单位 bit 1bit=1/8byte 100/8=12.5
下载软件时使用的单位:100MB 磁盘的数据单位 Byte 1byte=8bit 100*8=800M

二.网络部分之网络层次

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

1.1 分层

1.1.1分层的提出

定义了三层分层模型。该模型提供了一种构建网络的分层模块化方法,可以轻松实现,管理,扩展和排除网络故障。

1.1.2三个层次规划及作用

核心层:主要是实现骨干网络之间的优化传输,骨干层设计任务的重点通常是冗余能力、可靠性和高速的传输。
汇聚层:楼群或小区的信息汇聚点,是连接接入层和核心层的网络设备,为接入层提供数据的汇聚\传输\管理\分发处理。
汇聚层为接入层提供基于策略的连接,如地址合并,协议过滤,路由服务,认证管理等。
通过网段划分(如VLAN)与网络隔离可以防止某些网段的问题蔓延和影响到核心层。
汇聚层同时也可以提供接入层虚拟网之间的互连,控制和限制接入层对核心层的访问,保证核心层的安全和稳定。
接入层:通常指网络中直接面向用户连接或访问的部分。接入层目的是允许终端用户连接到网务,因此接入层交换机具有低成本和高端口密度特性。
在这里插入图片描述

1.1.3网络拓扑

linux基础--网络知识_第10张图片

1.2 分类

1.2.1分类

局域网:本地私有的一个网络范围。如果是一个规模比较大的局域网,也会成为是一个园区网。
城域网:如果一个网络的覆盖面积达到了一个城市,就可以称为城域网。
广域网:如果覆盖面积达到了全国或者全球,就称为广域网,全球最大的广域网就是Internet互联网。

1.2.2拓扑图

linux基础--网络知识_第11张图片

2.网络层次模型

2.1 OSI七层模型

linux基础--网络知识_第12张图片

2.1.1七层模型结构

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

2.1.2实现通讯

数据的封装过程
1.用户信息转换为数据,以便在网络上传输
2.数据转换为数据段,并在发送方和接收方主机之间建立一条可靠的连接
3.数据段转换为数据包或数据报,并在报头中放上逻辑地址,这样每一个数据包都可以通过互联网络进行传输
4.数据包或数据报转换为帧,以便在本地网络中传输。在本地网段上,使用硬件地址唯一标识每一台主机。
5.帧转换为比特流,并采用数字编码和时钟方案
数据的解封装过程
linux基础--网络知识_第13张图片

2.2 TCP/IP模型

linux基础--网络知识_第14张图片

三.网络部分之网络协议

1.TCP协议

1.1 报文结构

源端口: 1~65535
目标端口:
占用16个bit
16个bit 2的16次方 1~65535个端口
控制字段:
syn(1): 请求建立连接控制字段
fin(1): 请求断开连接控制字段
ack(1): 数据信息确认控制字段
seq:由于文件会被拆分成为多个部分,为了确保多个部分按顺序组合在一起,需要引入seq这个确认号进行确认

1.2 tcp三次握手

1) 第一次握手:
发送syn请求建立连接控制字段, 发送seq序列号信息(X), 第一个数据包的系列号默认为0
2)第二次握手:
发送syn请求建立连接控制字段, 同时还会发送ack确认控制字段
发送seq序列号信息也为(Y), 还会发送ACK确认号(X+1)信息(对上一个数据序列号信息进行确认)
3)第三次握手:
发送ack确认控制字段,发送seq序列号信息(X+1),发送ack确认号(Y+1)

1.3 tcp四次挥手

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

1.4 tcp十一种状态集

(解决高并发问题)

1.4.1TCP三次握手

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

1.4.2TCP四次挥手

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
linux基础--网络知识_第15张图片
linux基础--网络知识_第16张图片
问题及反思:
a.tcp协议和udp协议的区别
TCP协议: 传输控制协议 — 面向连接的网络协议
在线发送文件==面向连接
发送文件 --> 对端点击接收
优点: 数据传输可靠性高
缺点: 数据传输效率低
b.为什么是四次挥手而不是三次
linux基础--网络知识_第17张图片
抓包现象
在这里插入图片描述
有2种解释
1)解释1:TCP建立连接要进行3次握手,而断开连接要进行4次,这是由于TCP的半关闭造成的,因为TCP连接是全双工的(
即数据可在两个方向上同时传递)所以进行关闭时每个方向上都要单独进行关闭,这个单方向的关闭就叫半关闭.
关闭的方法是一方完成它的数据传输后,就发送一个FIN来向另一方通告将要终止这个方向的连接.当一端收到一个FIN,它必须
通知应用层TCP连接已终止了这个方向的数据传送,发送FIN通常是应用层进行关闭的结果.
2)解释2:这是因为服务端的LISTEN状态下的SOCKET当收到SYN报文的建连请求后,它可以把ACK和SYN(ACK起应答作用,而SYN起同步作用)放在一个报文里来发送。但关闭连接时,当收到对方的FIN报文通知时,它仅仅表示对方没有数据发送给你了;但未必你所有的数据都全部发送给对方了,所以你可以未必会马上会关闭SOCKET,也即你可能还需要发送一些数据给对方之后,再发送FIN报文给对方来表示你同意现在可以关闭连接了,所以它这里的ACK报文和FIN报文多数情况下都是分开发送的。
c.为什么是三次握手而不是四次
因为接收方已经处于linten状态等待发送方请求连接。

2.UDP协议

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

3.dns协议

3.1 概念

DNS: 域名解析系统
www.baidu.com — 14.215.177.39
windows本地dns解析文件: C:\Windows\System32\drivers\etc\hosts
查看dns缓存:ipconfig /displaydns

linux基础--网络知识_第18张图片

3.2 解析原理

linux基础--网络知识_第19张图片

4.ARP协议

已知IP地址解析mac地址信息
作用: 减少交换网络中广播的产生
头先是不知道目的mac地址,然后原端通过广播发送到目的端,然后给出其mac地址,双方都把对应的mac地址写入arp表,下次使用时不用再用广播的形式,直接使用就可以了,中途广播的主机也完善其arp表信息

5.DHCP协议

linux基础--网络知识_第20张图片

四.网络部分之IP地址

1.IP地址概念

二进制若为1则对应的十进制为:128 64 32 16 8 4 2 1

1.1 二进制 --> 十进制转换关系

01010011 —> 十进制 做求和运算
64+16+2+1=83

1.2 十进制 --> 二进制转换关系

172 —> 二进制 做求差运算
172 - 128 = 44 - 32 = 12 - 8 = 4 - 4 =0

2.IP地址分类

2.1 按照地址的范围进行划分

A B C D E
linux基础--网络知识_第21张图片
注意:网络位不能修改,一旦修改,就不能访问外网,只有运营商可以修改

2.2 按照地址用途进行划分

公网地址: 全球为一 护照
私网地址: 重复利用地址, 避免地址枯竭, 私网地址网段不能出现在互联网路由器路由表

2.3 按照通讯方式划分

2.3.1单播地址

网卡上配置的地址

2.3.2广播地址

主机位全为1的地址 192.168.1.11111111 --> 192.168.1.255

2.3.3网络地址

主机位全为0的地址 — 网络地址 --> 192.168.1.0

2.3.4组播地址

D类地址

2.4 主机地址计算

网络中主机数量=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

3.子网划分概念

将一个大的网络划分成几个小的网络,
划分后的每个子网都称为一个网络,也为一个局域网络
172.16.0.0 B类地址
不做子网划分

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

4.怎么进行子网划分

子网掩码: 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

五.网络部分之上网原理

1.办公环境上网原理

路由器配置:

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

2.虚拟主机上网原理

linux基础--网络知识_第22张图片
linux基础--网络知识_第23张图片
linux基础--网络知识_第24张图片

六.网络部分之系统路由配置

1.centos6(route 和网络相关的命令 使用net-tools)

linux基础--网络知识_第25张图片

1.1 静态默认路由

由于访问的地址都要经过运营商路由器R2,因此就把要去访问的地址都设为默认地址,R1路由器不用处理,
交给运营商路由器R2处理。
a 编写网卡配置文件
b 利用命令临时配置
route add default gw 10.0.0.2(网关地址)
route del default gw 10.0.0.2
作用: 实现主机访问外网, 用于测试新的网关地址

1.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
路由信息(用route -n查看)
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

1.3 静态主机路由

只能访问网络中的某一台主机
route add -host 10.0.3.201 dev eth1
route del -host 10.0.3.201 dev eth1

2.centos7(ip route 和网络相关的命令 使用ip route)

2.1 静态默认路由

1)编写网卡配置文件 vi /etc/sysconfig/network-scripts/ifcfg-eth0
2) 利用命令临时配置
ip route add default via 10.0.0.2
ip route del default via 10.0.0.2

2.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

2.3 静态主机路由

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

自我总结

1.引出网络主机通信的条件

1.要有传输介质
2.要有网卡
3.关于速率方面

2.引出交换机

当机子多了的时候,为了让不同主机之间相互通信
1.交换机通过MAC地址来相互通信,即来源 目的
2.当一台主机有MAC地址时,但不知道其他主机的mac地址,则可以采用广播的方式进行询问

3.引出路由器

当主机很多的时候,广播的时候可能会出现广播风暴
1.路由器使用的是ip地址(ip地址:网络部分 主机部分)
局域网标识 主机标识
2.一个交换机连接的是一个局域网,路由器将不同的局域网进行通信
3.当ip地址想要和另外的ip地址通信时,首先通过广播,然后路由器会有局域网标识和接口的对应,就可以把对应的ip地址发送出去了

4.引出静态路由

一个局域网跨越几个局域网需要路由信息,但每台路由器只有他相邻局域网的对应接口的路由信息,需要手动配置

5.引出NAT

当私网地址出外网的时候,由于有来有往,私网地址可以相同,但是外网返回给私网的时候,会发生不知道发送给哪个的疑惑,因此出现了NAT
遇到的问题
问题1 :网络是通的,但远程不上
原因:远程服务关闭
使用命令systemctl start sshd
问题2:改了端口后远程不上
检查防火墙 systemctl status firewalld(为开着状态)
使用命令:systemctl stop firewalld
setenforce 0
getenforce

你可能感兴趣的:(网络知识部分,网络,网络通信,路由器,局域网)