Bonjour, je débute en python et je bloque pour envoyer des bytes (au sens données non interprétées comme du string) à un serveur socks. Voilà mon debut de fonction pour instancier une connexion avec un serveur socks v5:
Le problème se pose quand je dois formater les quatre octets de mon ip. Si quelqu'un pouvait m'aider j'apprecierais grandement. Merci.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 def buildpacktV5(IP): #Cette partie est bien interpréte comme des bytes s='\x05' #version de socks s=s+'\x01' #demande connexion TCP/IP s=s+'\x00' #réservé s=s+'\x01' #IPv4 #------------------------------------------------------------------- #c'est ici que je bloque for s2 in IP.split('.'): #on met l'ip s2=hex(int(s2)) s=s+s2.replace('0x','\x') #Comment formater s2 correctement? Ici j'obtiens: # Invalid \x escape s=s+'\x00' s=s+'\x50' sok=socket.socket(socket.AF_INET,socket.SOCK_STREAM) sok.connect(('127.0.0.1',25000)) sok.send(s) sok.close()
Partager