一、总结描述TCP三次握手四次挥手
在网络通信中客户机与服务器进行数据通信前先建立TCP链接;
1)客户端向服务器发送一段TCP报文,包括
- 标记位为SYN,表示请求建立新链接;
- 序号为Seq = 1
- 客户端进入SYN-SENT状态
2)服务器收到客户端的TCP报文后,状态由Listen 状态进入SYN-RCVD阶段; - 标志位为SYN和ACK,表示确认Seq序号有效,服务器能正常接受到数据,同意建立新的链接。
- 确认好Ack=X+1;表示收到客户端的序列号seq并将值加一作为自己的序号值;
- 客户端进入了ESTABLISHIED阶段。
- 客户端接收到ack确认报文后向server发出ack报文,并分配资源,自此TCP链接建立完成。
4)四次挥手过程
4.1)A、B处于 ESTABLISHED状态
4.2)A发出连接释放报文段并处于FIN-WAIT-1状态
4.3)B发出确认报文段且进入CLOSE-WAIT状态
4.4)A收到确认后,进入FIN-WAIT-2状态,等待B的连接释放报文段
4.5)B没有要向A发出的数据,B发出连接释放报文段且进入LAST-ACK状态
4.6)A发出确认报文段且进入TIME-WAIT状态
4.7)B收到确认报文段后进入CLOSED状态
4.8)A经过等待计时器时间2MSL后,进入CLOSED状态。
二、描述TCP和UDP区别
- 是否连接
UDP:无连接
TCP:面向连接 - 是否可靠
UDP:不可靠传输,不使用流量控制盒拥塞控制
TCP:可靠传输,使用流量控制和拥塞控制 - 连接对象个数
UDP:支持单播、多播、广播等功能
TCP :只提供单播通讯 - 传输方式
UDP:面向报文
TCP :面向字节流 - 首部开销
UDP:开销小,紧8字节
TCP :首部最小20字节,最大60字节 - 适用场景
UDP:适用于实时应用(如IP电话、视频会议、直播等)
TCP :适用于要求可靠传输的应用,例如文件传输
三、总结IP分类以及每个分类可以分配的IP数量。
1)IP分类
- A类地址
最大网络数:126(2*7-2)
IP地址范围:0.0.0.0-127.255.255.255
最大主机数量:16777214
私有IP地址范围:10.0.0.0-10.255.255.255 - B类地址
最大网络数 :16384(2^14)
IP地址范围 :128.0.0.0-191.255.255.255
最大主机数 :65534
私有IP地址范围 :172.16.0.0-172.31.255.255 - C类
最大网络数 :2097152(2^21)
IP地址范围 :192.0.0.0-223.255.255.255
最大主机数 :254
私有IP地址范围 :192.168.0.0-192.168.255.255 - D类
D类地址为保留的组播地址224.0.0.0-239.0.0.0
四、总结IP配置方法
Linux 下配置IP有四种方法。
1)ifconfig命令配置法。
临时配置使用,由于未写入到配置文件保存,计算机重启后配置将自动失效。配置命令如下:
ifconfig ethx ipaddress netmask x.x.x.x
# ethx中的x指第几块网卡,一般默认是0,centos7以后命名为ens*
# 如下:
[magedu@localhost ~]$ ifconfig eth0 192.168.192.131 netmask 255.255.255.0
#执行结果如下:
[magedu@localhost ~]$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:29:11:6f:17 brd ff:ff:ff:ff:ff:ff
inet 192.168.192.131/24 brd 192.168.192.255 scope global noprefixroute eth0
valid_lft forever preferred_lft forever
inet6 fe80::9c07:144d:99ed:e6df/64 scope link noprefixroute
valid_lft forever preferred_lft forever
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 52:54:00:00:84:fc brd ff:ff:ff:ff:ff:ff
inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
valid_lft forever preferred_lft forever
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc fq_codel master virbr0 state DOWN group default qlen 1000
link/ether 52:54:00:00:84:fc brd ff:ff:ff:ff:ff:ff
2) neat命令图形界面配置法
由于不常用,工作中也基本上不用,所以未安装。
注意:配置完成后需要执行网卡重启(service network restart或者systemctl network restart)
3)netconfig命令配置法
4)修改配置文件配置法
[magedu@localhost ~]$ cd /etc/sysconfig/network-scripts/
[magedu@localhost network-scripts]$ ls
ifcfg-ens33 ifcfg-eth0
[magedu@localhost network-scripts]$ vim ifcfg-eth0
五、使用nmcli实现bonding
[root@localhost ~]# nmcli connection add con-name bond0 type bond ifname bond0 mode 0
Connection 'bond0' (74ecc510-f26b-4d6c-a038-46545bff4fb1) successfully added.
[root@localhost ~]# nmcli connection add type bond-slave ifname ens7 master bond0
Connection 'bond-slave-ens7' (86c61a8a-f685-4d34-90ee-163e60104a29) successfully added.
[root@localhost ~]# nmcli connection add type bond-slave ifname ens3 master bond0
Connection 'bond-slave-ens3' (3daeedce-b2e0-4958-9373-1e4c38e4a7e2) successfully added.
[root@localhost ~]#
[root@localhost network-scripts]# nmcli connection up bond0
Connection successfully activated (master waiting for slaves) (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/5)