计算机基础十一:计算机网络实战

1、章节导学

计算机基础十一:计算机网络实战_第1张图片

图二:

计算机基础十一:计算机网络实战_第2张图片

图三:

计算机基础十一:计算机网络实战_第3张图片

2、搭建基本服务框架

图一:网卡的工作模式

计算机基础十一:计算机网络实战_第4张图片

 

3、python操作字节序列

图一:

计算机基础十一:计算机网络实战_第5张图片

图二:

计算机基础十一:计算机网络实战_第6张图片

图三:

计算机基础十一:计算机网络实战_第7张图片

图四:

计算机基础十一:计算机网络实战_第8张图片

代码:

# -*- encoding=utf-8 -*-


import struct

# 八个字节
bin_str = b'ABCD1234'
print(bin_str)
# B一个字节转换为整数
# 把字节序列转换为整数  打印结果:(65, 66, 67, 68, 49, 50, 51, 52)  对应的是ASCII码的十进制表示
result = struct.unpack('>BBBBBBBB', bin_str)
print(result)
# H 两个字节转换为整数 此处只需要四个H就能处理八个字节了
result = struct.unpack('>HHHH', bin_str)
print(result)
# L 四个字节转换为整数 此处只需要两个L就能处理八个字节了
result = struct.unpack('>LL', bin_str)
print(result)
# s解析的就是ASCII码 此处有8个,所以要加个8
result = struct.unpack('>8s', bin_str)
print(result)
result = struct.unpack('>BBHL', bin_str)
print(result)

4、实现IP报文解析器

图一:

计算机基础十一:计算机网络实战_第9张图片

 

 

5、实现UDP报文解析器

 

 

 

 

 

 

6、实现TCP报文解析器

你可能感兴趣的:(计算机基础)