1、简述osi七层模型和TCP/IP五层模型
TCP/IP与OSI最大的不同在于OSI是一个理论上的网络通信模型,而TCP/IP则是实际运行的网络协议;
1. OSI引入了服务、接口、协议、分层的概念,TCP/IP借鉴了OSI的这些概念建立TCP/IP模型。
2. OSI先有模型,后有协议,先有标准,后进行实践;而TCP/IP则相反,先有协议和应用再提出了模型,且是参照的OSI模型。
3. OSI是一种理论下的模型,而TCP/IP已被广泛使用,成为网络互联事实上的标准。
osi 七层模型包括: 物理层、数据链路层、网络层、传输层、应用层、会话层;
TCP/I五层模型包括:网络接口层、网际层、传输层、应用层;
对应关系:
2、总结描述TCP三次握手四次挥手
客户端A向服务器B建立连接的三次握手:
1、A请求:A请求建立连接,发送序列号为X、标志位SYN=1的包,请求建立连接,此时,A进入同步已发送状态(SYN-SEND);
2、B确认:B收到A发送的请求之后,若同意建立连接,发送序列号位Y、确认序号为X+1、SYN=1、ACK=1的包,此B进入同步已接收状态(SYN-RCVD);
3、A确认:A收到B的确认包后,发送序列号为X+1、确认序号为Y+1、ACK=1的包,确认收到;将该报文发出后,A进入已连接状态(ESTABLISHED),B收到之后进入已连接状态(ESTABLISHED);
三次握手完成;
客户端A和服务器B断开连接的四次挥手:
A发送断开连接请求:A发送FIN报文, 序列号为M,确认序号N(确认最后一个数据包序列号+1)、ACK=1、FIN=1;发送后,客户端进入FIN-WAIT-1状态;
B确认:B收到A的请求之后发送确认报文,序列号为N、确认号为M+1、ACK=1,确认A发送的请求收到,发送完后进入CLOSE-WAIT状态,此时还可能会向A发送数据;
A收到来自B的确认之后,进入FIN-WAIT-2状态,等待B发送连接FIN报文;
B确认:B发送FIN报文,序号为Q、确认号为M+1、ACK=1、FIN=1,准备关闭连接,B进入LAST-ACK状态;
A确认:A收到B的FIN报文后,发出确认报文,序号为M+1,确认号是Q+1,ACK=1,发送此报文后,等待2个msl时间后,进入CLOSED状态;
B收到A的确认之后,也进入CLOSED状态;
四次挥手完成。
发送序号随机生成,一次加1 ,防止被恶意***;
确认序号是期望的确认值,如果对方发来的确认序号不是期望值,丢弃数据包;
3、描述TCP和UDP区别
tcp: 传输控制协议,面向连接的可靠传输协议;
通信前需要建立虚拟链路,结束后拆除链路;
具有确认机制、重传机制、拥塞控制、窗口机制 ,数据不会丢失,且不重复,顺序到达;
错误检查;
速度慢,效率低;
UDP: 无连接的协议,不可靠传输协议;
没有确认机制,尽可能传输,容易丢包;
传输性能高,速度快,适合大量数据传输;
4、总结ip分类以及每个分类可以分配的IP数量
A类地址范围:0.0.0.0--127.255.255.255
网络号范围0.0.0.0---127.0.0.0
默认子网掩码:255.0.0.0
私网ip地址范围:10.0.0.0--10.255.255.255
每个网段中的可以分配的IP个数:2^24-2
B类地址:128.0.0.0---191.255.255.255
网络号范围128.0.0.0---191.255.0.0
默认子网掩码:255.255.0.0
私网ip地址范围:127.16.0.0---127.31.0.0
每个网段中的可以分配的IP个数:2^16-2
C类地址:192.255.0.0---192.255.255.255
网络号范围192.255.0.0---223.255.255.0
默认子网掩码:255.255.255.0
私网ip地址范围:192.168.0.0---192.168.255.255
每个网段中的可以分配的IP个数:2^8-2
D类地址范围:224.0.0.0---239.255.255.255
组播地址
E类地址范围:240.0.0.0---247.255.255.255
保留地址
5、总结IP配置方法
1、dhcp动态获取;
2、静态配置:
1)编辑网卡配置文件:/etc/sysconfig/network-scripts/ifcfg-IFACE
2)图形化配置:
nm-connection-editor
字符工具 :
system-config-network-tui,setup
nmtui nmtui-connect
nmtui-edit
nmtui-hostname
3)centos7 使用nmcli管理网络:
创建新的连接eth1-test,指定静态IP地址:
nmcli con mod “eth1-test” ipv4.addresses "192.168.43.111/24 192.168.43.254"
修改eth1的地址,并修改配置文件:
nmcli connection modify eth1 ipv4.method manual ipv4.addresses 3.3.3.3/24
创建新的连接eth1-test ,指定动态IP地址:
nmcli connection add con-name eth1-test ifname eth1 type ethernet ipv4.method auto
创建新的连接eth1-test ,指定静态IP地址:
nmcli connection add con-name eth1-test ifname eth1 type ethernet ipv4.method manual ipv4.addresses 1.1.1.1/24
4)临时改静态IP
1)ip addr add
2)ifconfig IFACE IP netmask NETMASK
ifconfig eht0 192.168.43.111/24
3)ip addr { add | del } IFADDR dev STRING
ip addr add 192.168.43.111/24 dev eth1 label eth1:0 scope link
ip a a 192.168.43.112/24 dev eth1 label eth1:1
架构班小伙伴作业看这里:
1、基于nfs实现openstack云盘容量的扩容。
2、安装配置tomcat,实现对java代码访问。
来源:51CTO
作者:wyy1991
链接:https://blog.51cto.com/5440126/2466134