QQ登录

只需要一步,快速开始

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

tcp的socket连接报文测试工具

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

1189

主题

4

听众

2934

积分

该用户从未签到

跳转到指定楼层
1#
发表于 2024-3-31 17:21 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
# -*- coding: utf-8 -*-
  F. _6 o7 H; m4 p; w& W2 u- t2 vimport socket) E* n; p& e  t: p9 c
from myutil import *
. E4 }: G9 q% G5 O0 r5 efrom binascii import unhexlify as unhex& G) o1 r5 O0 y6 Y
from ctypes import *, n+ x$ J( a) Q3 q9 b( E" a
dll = cdll.LoadLibrary('mydll.dll')
; ]* C9 e0 O- w: a; N  k0 d3 _print 'begin load mydll..'; J. t0 K& ^* Y3 s3 y/ i0 ?1 P
HOST, PORT = "192.168.51.28", 5800; \6 |' @" O/ g( h+ ^
sd ="1234567812345678"
. |8 Q& W. U- N1 u/ [/ ?1 j# Create a socket (SOCK_STREAM means a TCP socket)
" f# j& C- O( I( Z# Hsock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)# ]6 B, |, u6 x) A/ @
try:* I7 ]! ?; E2 o' ~2 ^8 k
    # Connect to server and send data: |/ ^' X( j# ^) ?. a% r
    sock.connect((HOST, int(PORT))  U# ?1 I& U6 D3 z3 J& r4 Z8 }
    print "Sent1 OK:"0 R3 N: n3 H. Z8 |$ v
    print sd
/ K) L" k! D9 L& y2 b! `    # Receive data from the server and shut down
+ [& S' ]8 W6 Z: w) r4 j% f    received = sock.recv(1024)
' q, u# m; s0 X8 \& z    print "Received:"
5 y* L8 g: P0 c  i    print_hex(received)
! I- q3 z0 Y, s" K1 b) f: B- W$ t# w    print  'received len is 0x%02x' %(len(received))4 _/ P8 D5 o5 ]' N& a. r" w
    print  'received data analysis...'
' |6 g% K6 b$ @0 G/ s    re1=received[0:4]
8 C4 k. X; \/ f! x' s9 c. C    print_hex(re1)
2 R4 a2 {4 h" |    re1=received[4:6]/ M  h+ X8 _9 Q% x+ L0 n7 \) b
    print_hex(re1)- g) \; i" u+ ]) ~- W& L! t
    re1=received[6:10]
6 W/ s8 |+ j* I: y* y% Y8 h    print_hex(re1)
9 {2 t2 v! D3 Z) P& x! d5 h! e$ W    re1=received[10:16]
0 [  h9 G  Z& w# Y9 ]9 d/ n    print_hex(re1)% k( q3 {- N$ o1 T4 g

1 S1 H! }( e( f  y8 _7 N) \    #pack2 send
1 I1 Y, X0 z* l3 W* U    sock.send(sd2.decode('hex'))
  J5 I) D: Q1 D    print "Sent2 OK:"
% {' k2 Y  |! N5 @+ x  H+ _% b3 r    print sd2
. c5 p* `- e  |, a+ v6 k    # Receive data from the server and shut down8 Z! L" R" ~" l3 i
    received1 = sock.recv(1024)
, z) W+ z- J& y& b# ~, P" Q6 S    print "Received1:"
3 h& }( y/ V# ]) ^4 U% Y2 L    print_hex(received1)
: Q! ~+ K; P! v: C    print  'received1 len is 0x%02x' %(len(received1))
. c6 E) p* W, b8 I2 B
& V. e0 H* R- J- wfinally:  }- P4 L+ C1 @$ [1 \" ?) r
    sock.close()) B$ g( F) q3 a# R

5 @4 g: ~' v& f- W& hs=raw_input('press any key to continue...')
6 ^, H4 |9 C1 O" U7 |
* Y( N) Y% }8 E* U5 C: P0 A9 L2 c  d! Y% r! E: Q1 ~$ J
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:13 , Processed in 0.522513 second(s), 51 queries .

回顶部