为什么我用wiresharktcp挥手包只抓到了三个?
抓挥手包时只抓到了三个
客户端代码
import socket
host="121.42.196.153"
port=9527
BUFF_SIZE=1024
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((host, port))
print("connect to server host %s port %d"%(host,port))
while True:
data=input(">")
if data=='exit':
s.close()
break
s.sendall(str.encode(data))
pass
服务端代码
import socket
host=''
port=9527
BUFF_SIZE=1024
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.bind((host,port))
s.listen()
print("server start at %d"%(port))
while True:
client,address=s.accept()
print("client %s connect"%(str(address)))
while True:
data=client.recv(BUFF_SIZE)
if not data or data==b"exit":
client.close()
break
print("recv data %d"%(len(data)))
print(">%s"%(data.decode('utf-8')))
print("this connect close")
pass
s.close()
print("server stop")
正常的四次挥手包应该是
client->fin
server->ack
server->fin
client->ack
这个看上去像是合并了两个包 这是正常的情况吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论