全程和就业作业
1、简述osi七层模型和TCP/IP五层模型
- osi七层模型
分为物理层、数据链路层、网络层、传输层、会话层、表示层、应用层
一个数据包通常会被各个层封装并传输给下一个层,以a给b发送数据为例,应用层会添加相应的应用层协议,如mysql,ssh等;然后表示层会将数据转换为b系统兼容的格式,如文字、图片等;会话层会决定双方何时建立连接,何时断开连接、以及保持多久的连接等;传输层管理连个节点之间的连接,为数据的传输提供可靠的连接,并添加相应的传输头,如传输协议tcp和端口号等;网络层会决定数据的路径选择和转寄,将网络表头添加数据包,形成报文。数据链路层负责网络的寻址、错误侦测和改错,当表头和表尾被加至数据包时,会形成数据帧,数据表头包含了物理地址和改错方法;物理层负责在局域网中传送数据帧, 负责管理电脑设备到各个网络设备之间互通。 - TCP/IP五层模型
分为物理层、数据链路层、internet层、传输层、应用层
以a给b发送hello为例,传输层会将应用层的hello封装,添加tcp/udp头,包含源端口、目标端口和协议等,传给Internet层,Internet层会添加ip包头,包含源地址、目标地址等,传给数据链路层,数据链路层会添加数据帧头,包含源mac地址、目标mac地址、校验信息等,最后由物理层传送到下一目标网络。
2、总结描述TCP三次握手四次挥手 - 三次握手
client发起建立tcp连接请求的SYN=1,seq=x的数据包,并从closed状态进入SYN_SENT状态
server接收到后,回复一个SYN=1,ACK=1,seq=y,ack=x+1的ACK包,并从LISTEN状态进入SYN_RECV状态。
client接受后,会进入ESTABLISHED状态,并回复ACK=1,ack=y+1,seq=x+1的ACK包。
server收到后,进入ESTABLISHED状态。双方建立连接 - 四次挥手
client发起断开连接请求,发送一个FIN=1,seq=x的FIN包,并从ESTABLISHED状态进入FIN_WAIT1状态
server收到后,发送一个ACK=1,ack=x+1,seq=y到client,此时client到server方向的连接断开,server进入CLOSE_WAIT状态
client收到后,进入CLOSE_WAIT2状态
server发送完所有数据后,会发送一个FIN=1,ACK=1,ack=x+1,seq=z的包给client,并进入 LAST_ACK状态
client收到后,回复一个ACK=1,ack=z+1,seq=x+1的包,并进入TIME_WAIT状态
server收到后,进入CLOSED状态
client等待完2倍的MSL状态,进入CLOSED状态。
3、描述TCP和UDP区别 - TCP是面向连接协议,支持错误检查,数据恢复重传,流量控制,拥塞控制,提供了可靠的网络访问;
- UDP非面向连接协议,有限错误检查,无数据恢复,重传,流量控制,拥塞控制等,提供了不可靠的网络访问,但UDP没有以上这些功能,自然传输性能比TCP更快,通常用于视频,语音等数据传输中。
4、总结ip分类以及每个分类可以分配的IP数量
IP分为A类地址,B类地址,C类地址,D类地址,E类地址
A:网络位是8位,主机位24位,可分配的IP数量是2^24-2=
B:网络位是16位,主机位是16位,可分配的IP数量是2^16-2=
C:网络位是24位,主机位是8位,可分配的IP数量是2^8-2=
D:组播多播地址
E:保留未使用地址
5、总结IP配置方法"
CentOS: - 编辑配置文件/etc/sysconfig/network-scripts/ifcfg-ethx
[root@centos8 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
# Generated by dracut initrd
NAME="eth0"
DEVICE="eth0"
ONBOOT=yes
NETBOOT=yes
UUID="ee1d9be0-11ff-4ff1-a1de-6e0ca0d72661"
IPV6INIT=yes
BOOTPROTO=static
IPADDR=10.0.0.18
PREFIX=24
GATEWAY=10.0.0.2
TYPE=Ethernet
DNS1=180.76.76.76
[root@centos8 ~]#
- IP命令临时添加
[root@localhost ~]# ip address add 10.0.0.98/24 dev eth0
[root@localhost ~]# ip ad show dev eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:29:3a:88:10 brd ff:ff:ff:ff:ff:ff
inet 10.0.0.8/24 brd 10.0.0.255 scope global noprefixroute eth0
valid_lft forever preferred_lft forever
inet 10.0.0.98/24 scope global secondary eth0
valid_lft forever preferred_lft forever
inet6 fe80::7a8:aa33:d28:202a/64 scope link noprefixroute
valid_lft forever preferred_lft forever
[root@localhost ~]#
- nmcli命令添加
[root@localhost ~]# nmcli connection add con-name eth0 ifname eth0 \
ipv4.method manual type ethernet ipv4.addresses 10.0.0.108/24 \
ipv4.gateway 10.0.0.2 ipv4.dns 114.114.114.114
Ubantu:
编辑配置文件,/etc/netplan/xx-IFNAME.config.yaml
tracy@ubantu1804:~$ sudo vim /etc/netplan/01-eth1-config.yaml
tracy@ubantu1804:~$ cat /etc/netplan/01-eth1-config.yaml
network:
version: 2
renderer: networkd
ethernets:
eth1:
addresses:
- 10.0.0.222/24
- 10.0.0.111/24
gateway4:
10.0.0.2
nameservers:
search:
- magedu.com
- magedu.org
addresses:
- 180.76.76.76
- 114.114.114.114
tracy@ubantu1804:~$
tracy@ubantu1804:~$ sudo netplan apply
架构作业
1、基于nfs实现openstack云盘容量的扩容。
2、安装配置tomcat,实现对java代码访问。"