L'adresse IP de la conversion en décimal et vice versa
Suppose que mon nombre décimal est 9766322441
de sorte que son correspondant est 70.30.65.9
mais lorsque cette adresse IP IC converti en arrière, sa donne des exemples de différents nombre décimal 1176387849
... et quand je convertir l'adresse IP pf google.com j'.e 64.233.187.99
puis il donne la 1089059683
et conversion inverse donne la bonne adresse IP que j'ai.e 64.233.187.99
...
Ma question est quel est le problème avec le la au-dessus de mentionner le numéro? J'ai aussi essayer avec 9579342332
mais le même résultat. Il donne le mauvais conversion inverse??
Quelle est la raison derrière elle??
Vous pouvez utiliser cette calculatrice pour les calculs.
OriginalL'auteur akshay1728 | 2012-08-26
Vous devez vous connecter pour publier un commentaire.
Adresses IPv4 sont sur 32 bits.
Le nombre
9,766,322,441
ne peut pas être représenté sur 32 bits (max:4,294,967,295
).vous devriez vérifier la validité de la saisie,
9.766.322.441
n'est pas une adresse IP valide.il n'y a pas de solution pour convertir n'importe quel numéro à 10 chiffres ip et vice versa..il y a limite que vous avez mentionner
bien sûr, il y a une limitation, pouvez-vous vous représenter le nombre décimal 7 avec 2 bits? Non! Avec deux bits, vous pouvez représenter 0, 1, 2 et 3. Avec des adresses IPv4 vous avez seulement 32 bits, vous devez vous conformer à cette disposition.
ok merci beaucoup
OriginalL'auteur Vincenzo Pii
Vous avez des valeurs incorrectes 70.30.65.9 correspondent à 1176387849 mais jamais avec 9766322441.
Limitation de 32 bits - Java: comment faire pour convertir déc à 32 bits de type int?
C++ Exemple de conversion IP décimale:
C'est la classe JAVA pour convertir IP décimale:
Un autre exemple JAVA pour convertir IP décimale:
Fonction PHP pour convertir IP à decimical:
Essayer de l'appliquer, par exemple:
Un autre exemple en PHP pour convertir IP à decimical:
Celui-ci va vous fournir le même résultat que celui ci-dessus:
En PHP, par exemple pour convertir un nombre décimal en IP:
monsieur, je veux la solution générale en c, java
Oh, je suis très désolé, ne remarquent pas cela, je pensais que c'était le PHP!
mais monsieur il n'y a limitation de 32 bits...9766322441 ne peut pas être représenté dans adresse ip que d'autres sont en train de dire... je veux la coversion pour les deux numéro de téléphone mobile à la propriété intellectuelle et pour le numéro de mobile
Veuillez lire ensuite: stackoverflow.com/questions/4984130/...
OriginalL'auteur Ilia Rostovtsev
Vous dépassez l'IPV4 valide gamme avec la valeur décimale de 9766322441. Si la traduction de l'hexagone, il vous donne la valeur 0x2461E4109 qui occupe 5 octets au lieu de 4:
La calculatrice simplement tronque la valeur de l'octet avec la valeur de 0x02 et convertit la valeur en utilisant les 4 moins importante octets.
Les calculs pour la 0x461E4109 vous donne le "70.30.65.9" qui est présenté par le calculateur.
Comment le faire en Java:
Je recommande l'utilisation de la norme des classes Java pour InetAddress manipulations. Cela devrait fonctionner à la fois en IPV4 et IPv6: http://docs.oracle.com/javase/1.5.0/docs/api/java/net/InetAddress.html
Vous cherchez peut-être à quelque chose comme (j'ai utilisé Java plus de 10 ans, donc n'hésitez pas à corriger les erreurs de syntaxe si vous en trouvez)
L'IPv6 exemple couvre également le cas de la "compression des zéros" dans l'adresse (les "::" entre 51 et 4).
De toute façon, vous pouvez vérifier cela pour la conversion d'un tableau d'octets entier:
Tableau d'octets et Int conversion en Java
Veuillez noter, cependant, que le format IPV6 utilise 16 octets pour une seule adresse IP, donc je ne suis pas sûr si vous pouvez vous le représenter avec une seule valeur entière comme indiqué dans la calculatrice.
OriginalL'auteur Alex
En lisant le post original, et le suivi des postes en réponse à l'réponses, j'ai l'impression que l'original de votre "10 chiffres décimaux" est en fait un numéro de téléphone que vous voulez quelque tour en une adresse IP.
Il ne fonctionne pas de cette façon. C'est comme demander comment prendre une adresse MAC et de le convertir en une adresse IP. Les numéros de téléphone et les adresses IP sont attribuées par les deux autorités différentes. Il n'y a pas d'algorithme pour lier les deux.
OriginalL'auteur Joel Gridley
En fait les adresses IP PEUVENT être convertis à 32 bits de java entiers c'est juste que le nombre peut être négatif. C'est vraiment ok parce que vous pouvez converti à l'autre sans perte de données. Maintenant, si vous voulez vraiment utiliser un supplément de 32 bits et de le stocker dans un long tellement il n'a pas l'aspect négatif de java que vous pouvez, mais son gaspillage de ressources. Vous pouvez écrire une fonction pour convertir en long et il s'affiche non signée mais de le stocker dans et int.
OriginalL'auteur Edward Capriolo
La question était de savoir pourquoi 9766322441 convertir 70.30.65.9 mais lors de sa conversion, il donne 1176387849 au lieu de 9766322441. La réponse est parce que 4294967296 est le plus haut possible nombre décimal représenté par la propriété intellectuelle 256.256.256.256.
Ci-dessus 4294967296 il vous permet de convertir un nombre en dessous de 256.256.256.256 sur le voyage de retour tout comme rouler le compteur kilométrique de votre voiture. 9766322441 est clairement plus du double de la valeur de 4294967296 et finit par rouler le compteur kilométrique à deux reprises de se retrouver avec 1176387849 sur le troisième rouleau de l'odomètre. Ce nouveau numéro sera ensuite de les convertir vers et à partir d'une adresse IP normalement c'est au sein de la gamme.
OriginalL'auteur user2840831
Il y a aussi quelques façons de le faire dans Excel. certains calculs sont en désordre, mais le plus simple est d'utiliser une Fonction Définie par l'Utilisateur comme vu dans ce post Comment faire pour Trier les Listes d'Adresses IP dans Excel
OriginalL'auteur Andre Roberge