QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2371|回复: 0
打印 上一主题 下一主题

tcp的socket连接报文测试工具

[复制链接]
字体大小: 正常 放大

1189

主题

4

听众

2934

积分

该用户从未签到

跳转到指定楼层
1#
发表于 2024-3-31 17:21 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
# -*- coding: utf-8 -*-0 [  F" B! M0 T( m
import socket
! V, [. X6 y/ R4 P/ Gfrom myutil import *
, l8 h. z7 i7 z) Cfrom binascii import unhexlify as unhex
& `1 A5 z  l- m) n, h9 ^) ~from ctypes import *
$ L7 Z+ f4 p6 l1 z/ y' ^1 Jdll = cdll.LoadLibrary('mydll.dll')9 @' V4 ?6 K, f# n5 Z
print 'begin load mydll..'
: {, C- i4 j% i3 I2 G. O# v2 E; ^HOST, PORT = "192.168.51.28", 5800
1 L9 N1 f( c9 ?, l) b2 Ysd ="1234567812345678"2 S' x4 v, k6 w- g; X  ~2 t
# Create a socket (SOCK_STREAM means a TCP socket)
, o3 y9 \7 q/ j5 {1 Z' `sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)7 N( A- g& x3 G0 R9 x
try:7 j8 T$ o' o% o; C
    # Connect to server and send data
* z* d9 Z' @5 b3 \( L    sock.connect((HOST, int(PORT))
. H) U* O: w3 {6 A  W    print "Sent1 OK:"+ Q/ L) s+ ^; u. Q0 [, m
    print sd
% I! I9 D5 ]' Z+ K4 Z    # Receive data from the server and shut down
3 I9 ]$ i6 ?6 T+ K3 Z' Q6 q    received = sock.recv(1024)
; J" j* C3 w- B* ~( e) k    print "Received:"
# u) X0 ?7 R3 t    print_hex(received)* [' T. T0 p" f! I  c8 c4 H" F; V- [
    print  'received len is 0x%02x' %(len(received))
$ e, J) Z* X8 ^9 J    print  'received data analysis...'
; X) X4 D2 }) o! r3 K    re1=received[0:4]6 b. f5 w) y. y! t. x; u9 F3 F( K
    print_hex(re1)0 _& m- a% }% j3 x2 E/ P1 X
    re1=received[4:6]
9 J2 W6 `& \! t! l' H! h" i    print_hex(re1)
8 m7 b' u' ?( ]4 J% u8 M    re1=received[6:10]
% |6 L4 J7 M1 Z  C) k    print_hex(re1)
0 x" n$ L: k4 k9 J2 c    re1=received[10:16]
( Q9 q" `- v7 Q$ y    print_hex(re1)
; N2 [' C4 Z) M, x
4 i" W' S& l3 e/ |( h: f7 @% |    #pack2 send
' C7 w0 |, M6 t4 }0 F7 F    sock.send(sd2.decode('hex'))
  r- `9 V0 s$ N+ R' C/ g    print "Sent2 OK:"
3 r4 f5 @/ B( ?  f    print sd2
7 H1 J! m6 R5 a3 e8 }    # Receive data from the server and shut down
3 E- v  T+ v, x    received1 = sock.recv(1024)
. \( S; J; ]5 X% s    print "Received1:"; g+ e" z4 I* \1 m" L
    print_hex(received1)
* F% `% `' M3 V    print  'received1 len is 0x%02x' %(len(received1))- i# v* J3 o8 m1 a: j  Z

% [' N: X5 m9 n% P# x- U- o& Ufinally:
1 s# z) G. c0 {1 ?  @  I    sock.close()# D- n/ s, @2 v; D: c) q5 B* L) ~

/ X! m* ]4 I+ P! U6 Y1 x1 vs=raw_input('press any key to continue...')1 I/ r# z- y% K2 o( S* [8 m

$ V" P( Q+ q3 j3 F- g7 E/ ?3 i
* Y$ T! f' ^1 s1 G
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
您需要登录后才可以回帖 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085
fastpost

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2026-6-3 02:41 , Processed in 0.415812 second(s), 51 queries .

回顶部