Contrôler les connexions de winsock

Contenu du snippet

cette source permet de contrôler ceux qui vont le connecter à votre controle winsock. Par exemple, empêcher le monde de ce connecter par internet, permettre uniquement à une certaine tranche d'IPs de se connecter..

C très simple

Source / Exemple :


'METTEZ ÇA DANS UN BOUTON. ÇA AJOUTE UNE IP QUI DEVRA ETRE VALIDE A UNE LISTE
'REMPLACEZ "proxaddr" PAR LE NOM D'UN CONTRÔLE LISTBOX
Dim col, mess As String, str As String, total As String
mess = InputBox("Quel est le style ou une adresse du réseau sécuritaire?" & vbCrLf & "Exemple : 192.168.0.xxx/127.0.0.1/192.168.xxx.xxx", , "192.168.0.xxx")
col = Split(mess, ".")
If UBound(col) <> 3 Then Exit Sub
For i = 0 To UBound(col)
str = col(i)
If Len(str) > 3 Then Exit Sub
If LCase$(str) = "xxx" Then
total = total & LCase$(str) & "."
GoTo suitecheck
End If
If str > 255 Or str < 0 Or IsNumeric(str) = False Then Exit Sub
total = total & str & "."
suitecheck:
Next
total = Left(total, Len(total) - 1)
For i = 0 To proxaddr.ListCount - 1
If total = proxaddr.List(i) Then Exit Sub
Next
proxaddr.AddItem total

'\\\
'à mettre dans l'évènement connection_request de winsock
' REMPLACEZ "proxec" PAR LE NOM DE VOTRE CONTRÔLE WINSOCK
' REMPLACEZ "proxaddr" PAR LE NOM DE LA LISTE D'EN HAUT
Dim col, Ok As Boolean, col2, ip As String
ip = proxec.RemoteHostIP
col = Split(ip, ".")
For i = 0 To proxaddr.ListCount - 1
Ok = True
col2 = Split(proxaddr.List(i), ".")
For j = 0 To UBound(col)
If col2(j) <> "xxx" And col(j) <> col2(j) Then Ok = False
Next
If Ok = True Then GoTo suiteacc
Next
suiteacc:
If Ok = False Then
'si l'user n'est pas accepter
else
'si il est accepter
end if
'\\\

Conclusion :


simple, efficace

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.