QQ登录

只需要一步,快速开始

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

tcp的socket连接报文测试工具

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

1186

主题

4

听众

2923

积分

该用户从未签到

跳转到指定楼层
1#
发表于 2024-3-31 17:21 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
# -*- coding: utf-8 -*-
5 G/ l6 o. u  Q  Q. R% u6 Himport socket9 \( ?. H) o, Q% D
from myutil import *
& ]! G7 I" E. E. U6 ^from binascii import unhexlify as unhex' B$ r; ?$ p3 ?3 Q7 R6 Z
from ctypes import *% w9 Y1 Z1 A% @
dll = cdll.LoadLibrary('mydll.dll')
! Q& ?0 e) {1 M1 V7 `. T* C. ^print 'begin load mydll..'5 u, n( M, t4 u) I% A1 C3 x
HOST, PORT = "192.168.51.28", 5800
; s% M1 _8 x' m7 r/ |1 O* Wsd ="1234567812345678"% T; I  e: Y# C# F, O9 T& q6 |$ I
# Create a socket (SOCK_STREAM means a TCP socket)3 L( W: J/ G  ~2 j+ h  }$ G7 o
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)4 ?$ D" b; N6 |0 Y3 I! {  m. b+ f1 x
try:0 a+ ~. z6 t0 E. R
    # Connect to server and send data% u7 X7 U% v& J5 P
    sock.connect((HOST, int(PORT)): K5 s8 X3 n6 K& z4 Y8 X8 m
    print "Sent1 OK:"/ s0 R* m+ [* d/ O# w' s
    print sd
* ]" c- [+ M0 r1 s$ G# l    # Receive data from the server and shut down
  E8 X& J2 F' d, P$ Q6 G    received = sock.recv(1024)
. Z3 s0 }2 C, [# F! S    print "Received:": q6 u5 n7 c; r( T& G) P# e# S
    print_hex(received), i# N2 r1 M, d4 A$ x; |
    print  'received len is 0x%02x' %(len(received))8 v' d) \8 ^  w# e3 ]
    print  'received data analysis...'" Q" T# f" q7 |6 W# D9 u
    re1=received[0:4]9 p1 ~- }; g4 c& i4 S7 i( m: H
    print_hex(re1)/ }) t$ ]5 ^& K1 [
    re1=received[4:6]: E+ l9 G5 T- ^  _/ _' Y" _
    print_hex(re1)
$ \( I  A) E! y3 f" L1 P  Y    re1=received[6:10]
7 P9 e7 d, g. D. W/ C' f    print_hex(re1)6 L! |  Q' y2 j; r$ r6 {4 q3 b
    re1=received[10:16]
. P( F7 c7 C, F1 D    print_hex(re1)# Z9 m0 u9 I2 B$ E$ S
6 W6 F0 a2 l! n3 |9 f& \
    #pack2 send
' Z; c( H' k' P+ x    sock.send(sd2.decode('hex'))
, q9 i# [/ T& g3 P: ~    print "Sent2 OK:"
9 I0 J! u5 R7 [; @1 x    print sd2: ~' S4 V- g6 P: @/ w: A* }7 ?3 i
    # Receive data from the server and shut down
  H5 A5 Y6 k% ?0 X6 u" s; g    received1 = sock.recv(1024)& b" k% P# ^* D, }( l
    print "Received1:"7 P1 b; S* d/ v3 \9 Z0 s* c
    print_hex(received1)
9 X( A1 g7 G' F( E    print  'received1 len is 0x%02x' %(len(received1))
/ \$ y: F3 \( w3 }7 l: L! w( h
  r( [0 e( b9 {4 l6 C* F8 Qfinally:# I2 q* _6 V0 e+ P* b0 T7 ]) e3 e
    sock.close()
8 {7 t3 S: ~7 ~
4 v2 ?. Z; u" B7 ]% q" k/ \s=raw_input('press any key to continue...')
+ z" f! c9 V1 {4 o0 L9 e2 k4 s
. N) q9 o4 e* l5 j4 I# y. A) \+ B9 V* l
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-4-18 10:12 , Processed in 0.397492 second(s), 51 queries .

回顶部