2017-07-25 2 views
1

Je suis en train de réaliser snmpset en utilisant java, et je suis en utilisant la version château gonflable 1,52 bibliothèque pour coder les valeurs de OID, et maintenant je veux coder une adresse IP, comment pourrais-je reallize il? J'ai essayé ceci:Comment puis-je encoder l'adresse IP en utilisant la bibliothèque de château gonflable?

new GeneralName(GeneralName.iPAddress,"xx.xx.xx.xx"); 

mais obtenir un

snmpInASNParseErrs

erreur

MISE À JOUR:

OK, je pense que je suis très proche de la droite répondez maintenant, j'ai utilisé ceci:

InetAddress ip = InetAddress.getByName("xx.xx.xx.xx"); 
byte[] bytes = ip.getAddress(); 
v.add(new DERApplicationSpecific(0, new DEROctetString(bytes))); 

maintenant, le résultat est:

C/x/IpAddress_04_04_0a_00_00_64

encore besoin d'aide!

+0

Peut être est-ce une question double. Avez-vous vérifié https://stackoverflow.com/questions/43677981? La réponse suggère de passer à BC v1.56. – Robert

+0

mis à jour à 1.56, obtenez toujours l'erreur – zenis

Répondre

0

Enfin, je l'ai résolu ce problème en ceci:

InetAddress ip = InetAddress.getByName(ipv4Address); 
byte[] bytes = ip.getAddress(); 
v.add(new DERApplicationSpecific(0, bytes));