1.网络的重要性:
我们的生活已经离不开网络。订餐,交通,旅游,娱乐....
所有的系统都有网络!
运维生涯50%的生产故障都是网络故障!
2.实现网络通讯具备的条件?
1)不同主机之前要有传输介质连接
有线(双绞线传播电信号)双向,同时收发
无线(无线电波) 发的时候,不能收
2)主机上必须有网卡硬件设备
网卡(mac地址)
网卡作用说明:
在发送信息时:将二进制(数字信号)信息转换为高低电压(电信号) 调至过程
再接收信息时:将高低电压(电信号)信息转换为二进制数(数字信号) 解调过程
3)在实现网络通讯时,通讯主机双方的网卡以及传输介质会进行协商
利用速率较低的方式进行传输
网卡速度参数 100Mbps==100M bit 每秒==每秒钟传输多少个bit(0或1)
网络传输数据单位:比特 bit 1bit=1/8byte
磁盘存储数据单位:字节 byte 1byte=8bit
100M宽带?
3.网络通讯名词概念解释
交换(扩充网线插槽,让更多的人,在同一个局域网共享上网)
傻瓜交换机(tplink/dlink/水星...)
程控交换机(配置管理,可控 思科、华为、华三)
路由(实现不同局域网之间的通信)
内网卡---交换机 192.168.11.0/24(192.168.11.1~192.168.11.254)
外网卡---运营商 122.71.227.79(铁通)
linux系统中查看路由表信息命令:(两个)
a. route -n
b. netstat -rn
一个教室的这么多人是怎么上网的呢?
查公网ip的方法:
windows,打开浏览器,访问百度,搜IP即可
linux:curl ifconfig.me
扩展:高级路由器还有上网行为管理器和防火墙功能哦
4. osi 7层模型
由ISO(国际标准化组织):定义了标准通讯模型
物理层 1层,指定一些网络设备规范 通信介质的信号到数字信号(二进制0101)转换
数据链接层 2层 可以实现通过交换找到真正目标主机 通过mac地址(物理网卡)通信 交换能力 二层设备
网络层 3层 IP地址,路由(通过公网ip来访问全世界) 路由功能 三层设备
可以实现通过路由找到目标网络
传输层 4层 保证数据传输的可靠性 tcp/udp tcp(可靠,速度慢) udp(不可靠,速度快) ...
端口(让不同的应用程序,同时使用网络)
会话层 5层 控制网络连接建立或者终止
表示层 6层 数据转换加密 压缩
应用层 7层 应用程序接口规范
利用OSI7层模型如何建立主机与主机之间的通信?
5. 数据封装,解封装
···
应用层---》数据
表示层---》数据
会话层---》数据
传输层---》目标端口+源端口+数据
网络层---》目标ip+源ip+目标端口+源端口+数据
数据链接层---》目标mac+源mac+目标ip+源ip+目标端口+源端口+数据
物理层---》将完整的数据包,转换成比特流(计算机识别的二进制)
两台主机间通过交换通讯的封包跟解封包的过程
两台主机间通过路由通讯的封包跟解封包的过程
6. tcp/ip模型 4层
在OSI7层模型的基础上做了简化
应用层
表示层
会话层 ----------应用层
传输层 ----------传输层
网络层 ----------网络层
数据链路层 ----------网络接入层
物理层
tcpip模型.png
常见协议端口
telnet 23
DNS 53
HTTP 80
SSH 22
SMTP 25
FTP 21
端口.png
TCP +端口 标识应用层协议
UDP+端口 标识应用层协议
TCP是进行可靠传输的
(把大数据包分成小数据包编上号,在传输的过程中有可能丢包,但会将丢掉的包重新传输,从而实现可靠传输)
UDP是进行不可靠传输的
(有些传输只需要一个数据包比如:QQ聊天,所以不需要拆分数据包,这个时候就需要UDP协议啦)
7. tcp三次握手,四次挥手
tcp的标识:
SYN:建立链接
ACK:回应标识
FIN 断开链接
PSH 数据包
URG 紧急指针
RST 重置(重传)
开始传输数据之前需要:tcp的三次握手
三次握手.png
思考?
很多同学都会想A同意连接B也同意连接啦,就传送数据呗,干嘛要3次握手呢?两次就可以啦。
数据传输结束的时候需要:tcp的四次挥手
四次挥手.png
tcp的数据传输过程:
tcp协议在传输数据的时候,需要先进行三次握手,传输上三层数据,四次挥手
单工、全双工、半双工
单工: (广播电台) 通讯时候,只有一方作为发送方,另一方作为接受方
半双工:(对讲机,WiFi) 1.通讯的某一时刻,只有一方作为发送方,另一方作为接受方
2.通讯时刻发生转变,发送方可以变为接收方,接收方可以变为发送方
全双工:(电话,网线) 同一时刻,一方皆可以是发送方,又可以是接收方
传输方式.png
TCP11种状态集
TCP三次握手:5种状态
何导画图
三次握手状态集.png
过程
00:最开始两台主机都处于关闭状态 closed
01:服务端将相对应服务进行开启 closed --- listen
02:客户端向服务端发出连接请求(SYN) closed --- syn_sent
03:服务端接收到连接请求(SYN),进行确认,发送ACK和SYN listen --- syn_rcvd
04:客户端接收到服务端发送的ACK和SYN,进行回复响应,发送ACK syn_sent --- established
05:服务端接收到客户端发送的ACK syn_rcvd --- established
TCP四次挥手:6种状态
何导画图
四次挥手状态集.png
过程
* TCP四次挥手过程中状态集转换
①. 客户端发送断开连接求 FIN 连接建立状态---fin_wait01(等ACK确认)
②. 服务端接收到断开请求,发送确认信息 ACK 连接建立状态---close_wait
③. 客户端接收到确认信息 ACK fin_wait01(等ACK确认)--- fin_wait02(等fin信息)
④. 服务端继续发送请求断开连接信息,以及确认信息 FIN ACK close_wait---last_ack
⑤. 客户端接收断开连接信息,发送确认信息 ACK fin_wait02(等fin信息)---time_wait
⑥. 服务端接收到客户端发送的确认信息 ACK last_ack --- closed
⑦. 客户端会在等待一段时间后2MSL(MSL 30s 60s) time_wait --- closed
3次挥手的情况
何导图
image.png
8.ip地址划分
8.1 什么是二进制?
计算机识别的一种数制
10进制 0-9 进位规则是“逢十进一”
二进制 0-1 进位规则是“逢二进一”
8.2. 二进制换算十进制
例子
1100 ==1X2^3+1X2^2+0X2^1+0X2^0 =12
1010 ==1X2^3+0X2^2+1X2^1+0X2^0 =10
11111111 ???
10101010 ???
十进制转二进制
10进制的10=1010
10进制的5=101
192 ???
172 ???
十进制转二进制.png
计算机
8.3 ip地址的分类
IP地址其实是32位二进制
01100100.00000100.00000101.00000110 100.4.5.6
0.0.0.0~255.255.255.255
a类 1.0.0.1~126.255.255.254
第一组:1-126开头的地址是A类
0<A类<127
b类 128.0.0.1~191.255.255.254
128<=B类<192
c类 192.0.0.1~223.255.255.254
d类 224.0.0.0~239.255.255.254 组播,多点广播
e类 240.0.0.0~255.255.255.254 科研
8.4 私有ip地址范围
局域网地址:
A 10.0.0.0~10.255.255.255
65536*256
B 172.16.0.0~172.31.255.255
65536*16
C 192.168.0.0~192.168.255.255
65536
127.0.0.0~127.255.255.255 本地回环地址
0.0.0.0 === 任意的目的地
8.5 ipv4地址不够用
0.0.0.0 ~ 255.255.255.255 == 256*256*256*256 = 4,294,967,296 42亿
为了缓解ipv4地址不够用的问题
1:ipv6 fe80::2e60:cff:fe9c:a4b3
成本 一直没有推下去
2: NAT Network Address Translation 网络地址转换
好处:
a:节约大量的公网ip地址
b:减少了网络攻击
9.子网掩码
子网掩码的作用:决定一个网段可用ip的数量
子网划分的概念:将一个大的网络划分成几个小的网络
192.168.11.0/24 === 192.168.11.0 netmask 255.255.255.0
11000000,10101000,00001011,00000000
11000000,10101000,00001011,11111111
11111111,11111111,11111111,10000000 255.255.255.0
192.168.11.0/24 === 192.168.11.0 netmask 255.255.255.0
网络号:子网位全为0
广播号:子网位全为1
192.168.11.0 网络号
192.168.11.1 起始地址
192.168.11.254 结束地址
192.168.11.255 广播地址
192.168.0.0/28 === 192.168.0.0 netmask 255.255.255.240
11000000.10101000.00000000.00000000
11111111.11111111.11111111.11110000
11000000.10101000.00000000.00000000
192.168.0.0 网络号
192.168.0.1 起始范围
192.168.0.14 结束范围
11000000.10101000.00000000.00001111
192.168.0.15 广播地址
如果子网掩码是25位的话 会把一个网段划分成两个网段
192.168.11.0/25 === 192.168.11.0 netmask 255.255.255.128
11000000,10101000,00001011,00000000 网络地址
11111111,11111111,11111111,10000000 255.255.255.128 子网掩码
11000000,10101000,00001011,00000000 192.168.11.0 网络号
11000000,10101000,00001011,01111111 192.168.11.127 广播地址
11111111,11111111,11111111,10000000 255.255.255.128
192.168.11.128/25 === 192.168.11.128 netmask 255.255.255.128
11000000,10101000,00001011,10000000 网络地址
11111111,11111111,11111111,10000000 子网掩码
11000000,10101000,00001011,10000000 192.168.11.128 网络号
11000000,10101000,00001011,11111111 192.168.11.255 广播地址
同一个网段的ip地址,才能直接相互通信,不同网段的ip地址,需要路由器才能相互通信!
限制只能有一个可用的IP
192.168.0.0/30 === 192.168.0.0 netmask 255.255.255.252
11000000.10101000.00000000.00000000
11111111.11111111.11111111.11111100
192.168.0.0 网络号
192.168.0.1 可上网的ip
192.168.0.2 网关
192.168.0.3 广播地址
192.168.0.4/30
192.168.0.4 网络号
192.168.0.5
192.168.0.6
192.168.0.7 广播地址
5个公网+1个网关+2个=8
8=2*3 11111000
255.255.255.248
a:红蜘蛛广播
b: 限制无线路由器的连接数
c: 运营商的固定ip数限制
10.DNS解析流程
10.1 DNS介绍
dns:domain name system域名系统
dns出现的原因,ip地址不好记
百度:111.13.100.92
腾讯:199.22.22.22
网易:123.55.22.66
dns服务器的作用:把域名解析成ip地址
域名:baidu.com
dns服务器:baidu.com 119.22.22.22
dns服务:udp 53端口
思考问题
能上qq,打不开网站
10.2.描述:打开浏览器输入www.oldboyedu.com地址之后回车,网站的打开流程?
1)把www.oldboyedu.com解析成公网ip地址
2)浏览器使用它的公网ip访问www.oldboyedu.com的网站服务器
用户打开浏览器,输入www.oldboyedu.com回车,上网的流程:
浏览器首先会调用系统。解析www.oldboyedu.com域名,首先查询本地DNS缓存,本地缓存没有,再看本地的hosts文件,本地hosts文件没有
就会把域名www.oldboyedu.com发送local dns(223.5.5.5)进行解析,local dns服务器收到你的域名解析请求,它也会查找本地缓存,如果没找到,local dns服务器就会向根域名服务器发送请求,
询问.com顶级域名服务器的地址,
根据.com顶级域名服务器的地址,找到.com的顶级域名服务器,
询问二级域名oldboyedu.com的地址,根据oldboyedu.com域名服务器的地址,最终找到了www.oldboyedu.com的解析记录
local dns服务器拿到www.oldboyedu.com的ip地址之后首先会返回给用户的操作系统,同时在本地缓存一份。用户的操作收到了local dns服务器的解析结果。这时候浏览器直接访问www.oldboyedu.com的网站服务器,同时把www.oldboyedu.com缓存到本地的DNS解析。
10.3.dns的命令
ipconfig /displaydns 显示DNS解析程序缓存的内容。
dig
yum install bind-utils
dig www.baidu.com +trace 解析过程
dig www.baidu.com
11.arp协议
arp address resolution protocol
arp 数据链路层
把ip地址解析成mac地址
作用:减少交换网络中广播的产生
11.静态路由项目
动态路由是指路由器能够自动地建立自己的路由表,并且能够根据实际情况的变化适时地进行调整。
静态路由是网络管理员手工将路由规则添加到路由表,不会发生改变。
route 命令
route add [-net|-host] [网域或主机] netmask [mask] [gw|dev]
route del [-net|-host] [网域或主机] netmask [mask] [gw|dev]
-n 查看路由表
增加 (add) 与删除 (del) 路由的相关参数:
-net :表示后面接的路由为一个网域;
-host :表示后面接的为连接到单部主机的路由;
netmask :与网域有关,可以设定 netmask 决定网域的大小;
gw :gateway 的简写,后续接的是 IP 的数值喔,与 dev 不同;
dev :如果只是要指定由那一块网路卡连线出去,则使用这个设定,后面接 eth0 等
route命令详解.png
Flags 含义:
U 路由是活动的
H 目标是个主机
G 需要经过网关
R 恢复动态路由产生的表项
D 由路由的后台程序动态地安装
M 由路由的后台程序修改
! 拒绝路由
设置不同网段进行通信
准备环境:
network01:修改主机名,修改IP地址,删除网关和dns
network02:修改主机名,修改eth0的IP地址,删除网关和dns,复制eth0的网卡配置文件,修改网卡name和网卡的设备名,ip地址
network03:修改主机名,修改IP地址,删除网关和dns
network01 eth0 10.0.0.11
network02 eth0 10.0.0.12
eth1 192.168.0.12
network03 eth1 192.168.0.13
路由设置
network01:
route add -net 192.168.0.0/24 gw 10.0.0.12
network02:
route add -net 10.0.0.0/24 gw 192.168.0.12
转发功能
临时
sysctl net.ipv4.ip_forward=1
永久
echo 'net.ipv4.ip_forward = 1' >>/etc/sysctl.conf
sysctl -p
添加永久路由(需要重启网络)
编辑或新建/etc/sysconfig/network-scripts/route-interface 文件中,比如
vi /etc/sysconfig/network-scripts/route-eth0
添加两条路由:
172.22.2.0/24 via 172.22.3.254 dev eth0
172.21.0.0/16 via 172.22.3.254 dev eth0
ping命令使用(禁止ping icmp--iptables)
ICMP协议
ICMP的全称是 Internet Control Message Protocol 。从技术角度来说,ICMP就是一个“错误侦测与回报机制”
设置ICMP数据包处理规则的方法也有两种,一种是在操作系统上设置包过滤,另一种是在主机上安装防火墙。
ping基于ICMP协议
两种类型数据包
echo reques ----ping请求
echo reply ----ping应答
ping 10.0.0.31 -c 5 --- -c 指定ping包数量
ping 10.0.0.31 -c 5 -i 3 --- -i 指定ping包间隔(单位秒)
ping 10.0.0.31 -c 5 -q --- -q 指定ping包不显示过程信息
ping 10.0.0.31 -c 10000 -f -- -f 开启急速ping功能
网友评论