linux练习题七

一、简述osi七层模型和TCP/IP五层模型

OSI七层模型:

物理层(Physical Layer)
实际上就是设备之间连接的传输介质,为数据链路层提供物理连接,主要定义了系统的电气、机械、过程和功能规范,传输的基本单位是 比特流(bit),即0和1,就是最基本的电信号或光信号。
数据链路层(Data Link Layer)
是在设备间建立数据链路联接,为网络层提供差错控制和流量控制服务。主要功能是互联设备之间传送和识别 数据帧(frame)
网络层(Network Layer)
为数据在节点之间传输创建逻辑链路,通过路由选择传输 数据包(packet)的最佳路径,从而实现拥塞控制、网络互联等功能。
传输层(Transport Layer)
管理两个节点之间的 数据段(segment)传输。负责可靠传输(处理数据报错误、数据包次序等传输问题,确保数据被可靠地传送到目标地址)
会话层( Session Layer)
负责维护两个节点之间建立、管理和终止应用程序之间的会话,确保点到点传输不中断,以及管理数据交换等功能。
表示层(Presentation Layer)
是处理在两个通信系统中交换信息的表示方式,主要包括数据格式变化、数据加密与解密、数据压缩与解压等。表示层为应用层所提供的服务包括:语法转换、语法选择和联接管理。
应用层(Application Layer)
用户的通信内容要由应用进程解决,应用层为应用程序进程(例如:电子邮件、文件传输和终端仿真)提供专门的网络程序服务。SMTP、DNS和FTP都是7层协议。

TCP/IP五层模型:

应用层 应用层决定了向用户提供应用服务时通信的活动。TCP/IP协议族内预存了各类通用的应用服务。比如,FTP(File Transfer Protocol,文件传输协议)和DNS(Domain Name System,域名系统)服务就是其中两类。HTTP协议也处于该层。
传输层:传输层对上层应用层,提供处于网络连接中的两台计算机之间的数据传输。在传输层有两个性质不同的协议:TCP(Transmission ControlProtocol,传输控制协议)和UDP(User Data Protocol,用户数据报协议)。
网络层:网络层用来处理在网络上流动的数据包。数据包是网络传输的最小数据单位。该层规定了通过怎样的路径(所谓的传输路线)到达对方计算机,并把数据包传送给对方。与对方计算机之间通过多台计算机或网络设备进行传输时,网络层所起的作用就是在众多的选项内选择一条传输路线。
数据链路 层(又名 网络接口 层):用来处理连接网络的硬件部分。包括控制操作系统、硬件的设备驱动、NIC(Network Interface Card,网络适配器,即网卡),及光纤等物理可见部分(还包括连接器等一切传输媒介)。硬件上的范畴均在链路层的作用范围之内。
 
TCP与OSI对应关系:

TCP/IP及其他协议在OSI模型(开放系统互联(Open System Interconnection))的位置:

具体7层
数据格式
功能
典型设备
协议
应用层
Application
数据Data
网络服务与使用者应用程序间的一个接口
终端设备(PC、手机、平板等)
例如:HTTP、SMTP、SNMP、FTP、Telnet、SIP、SSH、NFS、RTSP、XMPP、Whois、ENRP
表示层
Presentation
数据Data
数据表示、数据安全、数据压缩
终端设备(PC、手机、平板等)
例如:XDR、ASN.1、SMB、AFP、NCP
会话层 
Session
数据Data
会话层连接到传输层的映射;会话连接的流量控制;数据传输;会话连接恢复与释放;会话连接管理、差错控制
终端设备(PC、手机、平板等)
例如:ASAP、TLS、SSH、ISO 8327 / CCITT X.225、RPC、NetBIOS、ASP、Winsock、BSD sockets
传输层 
Transport
数据组织成数据段Segment
用一个寻址机制来标识一个特定的应用程序(端口号)
终端设备(PC、手机、平板等)
例如:TCP、UDP、RTP、SCTP、SPX、ATP、IL
网络层 
Network
分割和重新组合数据包Packet
基于网络层地址(IP地址)进行不同网络系统间的路径选择
网关、路由器
例如:IP、ICMP、IGMP、IPX、BGP、OSPF、RIP、IGRP、EIGRP、ARP、RARP、 X.25
数据链路层 
Data Link
将比特信息封装成数据帧Frame
在物理层上建立、撤销、标识逻辑链接和链路复用 以及差错校验等功能。通过使用接收系统的硬件地址或物理地址来寻址
网桥、交换机
例如:以太网、令牌环、HDLC、帧中继、ISDN、ATM、IEEE 802.11、FDDI、PPP
物理层
Physical
传输比特(bit)流
建立、维护和取消物理连接
光纤、同轴电缆、
例如:线路、无线电、光纤、信鸽
双绞线、网卡、中继器、集线器
 
 

常用的应用层协议有:

运行在TCP协议上的协议:
    HTTP(Hypertext Transfer Protocol,超文本传输协议),主要用于普通浏览。
    HTTPS(Hypertext Transfer Protocol over Secure Socket Layer, or HTTP over SSL,安全超文本传输协议),HTTP协议的安全版本。
    FTP(File Transfer Protocol,文件传输协议),由名知义,用于文件传输。
    POP3(Post Office Protocol, version 3,邮局协议),收邮件用。
    SMTP(Simple Mail Transfer Protocol,简单邮件传输协议),用来发送电子邮件。
    TELNET(Teletype over the Network,网络电传),通过一个终端(terminal)登陆到网络。
    SSH(Secure Shell,用于替代安全性差的TELNET),用于加密安全登陆用。
运行在UDP协议上的协议:
    BOOTP(Boot Protocol,启动协议),应用于无盘设备。
    NTP(Network Time Protocol,网络时间协议),用于网络同步。
    DHCP(Dynamic Host Configuration Protocol,动态主机配置协议),动态配置IP地址。
其他:
    DNS(Domain Name Service,域名服务),用于完成地址查找,邮件转发等工作(运行在TCP和UDP协议上)。
    ECHO(Echo Protocol,回绕协议),用于查错及测量应答时间(运行在TCP和UDP协议上)。
    SNMP(Simple Network Management Protocol,简单网络管理协议),用于网络信息的收集和网络管理。
    ARP(Address Resolution Protocol,地址解析协议),用于动态解析以太网硬件的地址。
 
 

二、、总结描述TCP三次握手四次挥手

 
SYN,ACK,FIN存放在TCP的标志位,一共有6个字符:
SYN:代表请求创建连接,所以在三次握手中前两次要SYN=1,表示这两次用于建立连接。
FIN:表示请求关闭连接,在四次分手时,我们发现FIN发了两遍。这是因为TCP的连接是双向的,所以一次FIN只能关闭一个方向。
ACK:代表确认接受,不管是三次握手还是四次分手,在回应的时候都会加上ACK=1,表示消息接收到了,并且在建立连接以后的发送数据时,都需加上ACK=1,来表示数据接收成功。
seq:序列号,当发送一个数据时,数据是被拆成多个数据包来发送,序列号就是对每个数据包进行编号,这样接受方才能对数据包进行再次拼接。
        初始序列号是随机生成的,这样不一样的数据拆包解包就不会连接错了。
ack:这个代表下一个数据包的编号,这也就是为什么第二请求时,ack是seq+1,
 

三次握手:

(1)Client主动发送 SYN=1到Server请求建立连接,并发送随机序列号seq=x 的数据包到 Server( Server由SYN=1知道Client要求建立连接)
(2)Server收到Client请求后要确认联机信息,向Client发送SYN=1,ACK=1表示同意建立连接,并发送随机序列号为seq=y的数据包,ack=x+1 (Client的seq+1)表示确认收到Client的序列号为seq=x的数据包,请求发送下一个序列号为x+1的数据包。
(3)Client收到后检查ACK=1,ack=x+1确认Server同意建立连接并已正确接收Client发送的数据包,此时 Client会再次发送 ack= y+1 (Server的seq+1)表示成功接收Server发送的数据包,seq=x+1(即第一次的seq+1,Server的ack,表示下一个数据包序列号), Server收到后确认seq值与ACK=1,则连接建立成功。
 

四次挥手:

(1)Client发送FIN=1到Server请求断开连接,发送随机序列号seq=u的数据包到Server。
(2)Server收到断开连接请求后,发送一个ACK=1给Client表示确认接受,并发送随机序列号seq=v的数据包,ack=u+1表示成功接收Client发送的数据包
(3)Server再次发送FIN=1,ACK=1,seq=w,ack= u+1,用来关闭Server到Client的数据传送。
(4)Client收到Server的确认消息(ACK=1)和断开请求(FIN=1,ACK=1)后,接着发送一个ACK=1给Server,发送Client的下一个数据包seq=u+1,ack=w+1(上一个消息seq+1)表示接收到Server的数据包。
 

有限状态机FSM:Finite State Machine

CLOSED 没有任何连接状态
LISTEN 侦听状态,等待来自远方TCP端口的连接请求
SYN-SENT 在发送连接请求后,等待对方确认
SYN-RECEIVED 在收到和发送一个连接请求后,等待对方确认
ESTABLISHED 代表传输连接建立,双方进入数据传送状态
FIN-WAIT-1 主动关闭,主机已发送关闭连接请求,等待对方确认
FIN-WAIT-2 主动关闭,主机已收到对方关闭传输连接确认,等待对方发送关传输连接请求
TIME-WAIT 完成双向传输连接关闭,等待所有分组消失
CLOSE-WAIT 被动关闭,收到对方发来的关闭连接请求,并已确认
LAST-ACK 被动关闭,等待最后一个关闭传输连接确认,并等待所有分组消失
CLOSING 双方同时尝试关闭传输连接,等待对方确认
 

三、描述TCP和UDP区别

区别:
 
TCP
UDP
是否连接
面向连接
无连接
是否可靠
可靠传输,使用流量控制和拥塞控制
不可靠传输,不使用流量控制和拥塞控制
连接对象个数
只能是一对一通信
支持一对一,一对多,多对一和多对多交互通信
传输方式
面向字节流
面向报文
传输速度
速度慢
速度快
首部开销
首部最小20字节,最大60字节
首部开销小,仅8字节
适用场景
适用于要求可靠传输的应用,例如文件传输
适用于实时应用(IP电话、视频会议、直播等)
 
TCP的优点: 可靠,稳定 TCP的可靠体现在TCP在传递数据之前,会有三次握手来建立连接,而且在数据传递时,有确认、窗口、重传、拥塞控制机制,在数据传完后,还会断开连接用来节约系统资源。 TCP的缺点: 慢,效率低,占用系统资源高,易被攻击 TCP在传递数据之前,要先建连接,这会消耗时间,而且在数据传递时,确认机制、重传机制、拥塞控制机制等都会消耗大量的时间,而且要在每台设备上维护所有的传输连接,事实上,每个连接都会占用系统的CPU、内存等硬件资源。 而且,因为TCP有确认机制、三次握手机制,这些也导致TCP容易被人利用,实现DOS、DDOS、CC等攻击。
UDP的优点: 快,比TCP稍安全 UDP没有TCP的握手、确认、窗口、重传、拥塞控制等机制,UDP是一个无状态的传输协议,所以它在传递数据时非常快。没有TCP的这些机制,UDP较TCP被攻击者利用的漏洞就要少一些。但UDP也是无法避免攻击的,比如:UDP Flood攻击…… UDP的缺点: 不可靠,不稳定 因为UDP没有TCP那些可靠的机制,在数据传递时,如果网络质量不好,就会很容易丢包。 基于上面的优缺点,那么: 什么时候应该使用TCP: 当对网络通讯质量有要求的时候,比如:整个数据要准确无误的传递给对方,这往往用于一些要求可靠的应用,比如HTTP、HTTPS、FTP等传输文件的协议,POP、SMTP等邮件传输的协议。 在日常生活中,常见使用TCP协议的应用如下: 浏览器,用的HTTP FlashFXP,用的FTP Outlook,用的POP、SMTP Putty,用的Telnet、SSH QQ文件传输 ………… 什么时候应该使用UDP: 当对网络通讯质量要求不高的时候,要求网络通讯速度能尽量的快,这时就可以使用UDP。 比如,日常生活中,常见使用UDP协议的应用如下: QQ语音 QQ视频 TFTP ……
 
 
 

四、总结ip分类以及每个分类可以分配的IP数量

IP地址分类

 
定义
范围
网络数
每个网络中的主机数
默认子网掩码
私有地址
保留地址
应用
A类地址
第一个字节为网络号,后三个字节为主机号。第一个字节最高位是0
1.0.0.0 - 126.255.255.255
126
2^24-2
255.0.0.0
10.0.0.0~10.255.255.255 
127.X.X.X
一般用于大型网络
B类地址
前两个字节为网络号,后两个字节为主机号。第一个字节前2位是10
128.0.0.0 - 191.255.255.255
2^14
2^16-2
255.255.0.0
172.16.0.0~172.31.255.255 
169.254.X.X
一般用于中等规模网络
C类地址
前三个字节为网络号,最后一个字节为主机号。第一个字节前3位是110
192.0.0.0 - 223.255.255.255
2^21
2^8-2
255.255.255.0
192.168.0.0~192.168.255.255
 
一般用于小型网络
D类地址
不分网络地址和主机地址,第一个字节前4位是1110
224.0.0.0 - 239.255.255.255
 
 
 
 
 
多播地址,一般用于多路广播用户
E类地址
不分网络地址和主机地址,第一个字节前4位是1111
240.0.0.0 - 255.255.255.255
 
 
 
 
 
保留地址
回环地址
 
127.0.0.0
 
 
 
 
 
也是本机地址,等效于localhost或本机IP。一般用于测试使用

特殊地址

0.0.0.0
0.0.0.0不是一个真正意义上的IP地址。它表示所有不清楚的主机和目的网络
255.255.255.255
限制广播地址。对本机来说,这个地址指本网段内(同一广播域)的所有主机
127.0.0.1~ 127.255.255.254
本机回环地址,主要用于测试。在传输介质上永远不应该出现目的地址为“127.0.0.1” 的 数据包
224.0.0.0到239.255.255.255
组播地址, 224.0.0.1特指所有主机, 224.0.0.2特指所有路由器。 224.0.0.5指OSPF路由器,地址多用于一些特定的程序以及多媒体程序
169.254.x.x
如果Windows主机使用了DHCP自动分配IP地址,而又无法从DHCP服务器获取地址,系统会为主机分配这样自动私有地址
 
 
 

五、总结IP配置方法

①ifconfig进行临时配置

ifconfig eth0 192.168.44.6 netmask 255.255.255.0
或者
ifconfig eth0 192.168.44.6/24
修改:
查看:

②ip命令临时配置

 ip addr add 192.168.44.6/24 dev eth0 
修改:
查看:

③setup工具配置(centos7不支持)

同system-config-network或system-config-network-tui一样的配置页面
 
配置完毕,选择“OK”“Save”“Save&Quit”依次保存退出配置页面
 

④nm-connection-editor图形工具配置

centos6配置:
centos7配置

⑤nmcli命令行工具配置   --推荐使用

 nmcli con mod eth0 ipv4.addresses 192.168.44.7/24 
注:命令实际修改的是配置文件
修改网卡IP
查看网卡信息

⑥通过网卡配置文件修改

编辑网卡配置文件/etc/sysconfig/network-scripts/ifcfg-eth0
修改网卡、子网掩码配置:
IPADDR=192.168.44.7
PREFIX=24
:wq保存退出
重启网络服务
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值