QQ登录

只需要一步,快速开始

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

tcp的socket连接报文测试工具

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

1189

主题

4

听众

2934

积分

该用户从未签到

跳转到指定楼层
1#
发表于 2024-3-31 17:21 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
# -*- coding: utf-8 -*-
! o3 @6 e% G3 U& E) Zimport socket
1 o1 R1 ]  B7 k& Ufrom myutil import *. C+ ?9 Y! x+ b) x- o4 T. I" X1 t
from binascii import unhexlify as unhex  ?7 f5 F9 p6 R4 s* p3 Z+ j3 i+ J
from ctypes import *: b6 H) n5 p; a+ n- Y' Z
dll = cdll.LoadLibrary('mydll.dll'), r0 v$ [. z! [* |8 Y
print 'begin load mydll..'
* T- S: R8 T+ u3 T1 rHOST, PORT = "192.168.51.28", 5800
0 k& x7 k4 q3 A& A! l0 dsd ="1234567812345678"7 ~7 i  l, u1 b( ~  v* R
# Create a socket (SOCK_STREAM means a TCP socket)9 X4 T" s, l; L
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)& j1 I( F" {' O: @+ i
try:& V+ n& z: I& W1 R
    # Connect to server and send data
4 J' Q2 O1 I$ L, q& C    sock.connect((HOST, int(PORT))1 x+ Q0 X% G+ @3 p( `" W+ d" C
    print "Sent1 OK:"
% q+ i$ t/ @) e1 a9 s    print sd
$ C; m4 d: B2 L8 M- i. }    # Receive data from the server and shut down
2 l" p( k9 O# \/ f2 D8 |3 E* E    received = sock.recv(1024)
( t7 d! ^, j( x2 g9 E    print "Received:"
8 b+ H, {  l0 x1 [: V    print_hex(received)
% Z7 S) Y7 d3 y4 S$ w* C    print  'received len is 0x%02x' %(len(received))& g  i# @" v) r/ V4 s: A+ N
    print  'received data analysis...'* V/ `" X; |  X  |1 B
    re1=received[0:4]
6 s' [0 F: T7 r/ ~    print_hex(re1)' [! Z) [* j# \" }5 ~3 c
    re1=received[4:6]
1 Q# E& a4 |# X) H    print_hex(re1)
+ x' J" O7 @# @0 V' e( I" Z# L    re1=received[6:10]5 H( P- k' G! |8 M) ?
    print_hex(re1)" H! m) C7 a3 M" s- t
    re1=received[10:16]
/ e, r& ]/ ^9 L$ m    print_hex(re1)
2 Z8 x- `% N  Q' ]$ l1 {) g8 b9 `  K; ]' Q5 M/ @
    #pack2 send( e, h; i: ^  _, C; g
    sock.send(sd2.decode('hex'))
2 B" q, p- ]2 c5 A6 {! Y( C7 ~: X" v    print "Sent2 OK:"5 {( {: b7 o; K/ j2 b9 c* T
    print sd2
; T; w4 ?* `# ?/ ~( M$ O. _    # Receive data from the server and shut down) }0 Q, A- X8 o# C0 I1 z" R
    received1 = sock.recv(1024)4 k6 `8 `- \+ b! b5 z/ S
    print "Received1:"
6 K* j9 T8 F) I    print_hex(received1)
# @) _/ b) \; z  ^' i    print  'received1 len is 0x%02x' %(len(received1))* D9 b$ F6 ~2 m- S; l! |

6 A- U7 p' u* I/ t+ X' E" Z$ rfinally:. z" k# O# F' P5 y
    sock.close()3 y' Q/ g/ K" l. ?, t- c) m
. d' n' X4 F) ~' l3 T7 N
s=raw_input('press any key to continue...')
* w2 k" e: M' h8 b. A3 ]
, v1 q; E, x; X4 A. a: T  b" U6 Q0 r; o$ o
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-7-18 05:03 , Processed in 0.368038 second(s), 51 queries .

回顶部