web-dev-qa-db-fra.com

Est-il possible d'utiliser des adresses IP globales sans Internet?

Est-il possible d'utiliser des adresses IP globales sans Internet?

De toute évidence, les adresses IP privées doivent être utilisées sans accès à Internet. Mais je suis curieux de savoir si nous pouvons utiliser n'importe quelle adresse IP comme IP privée. Est-il possible de le faire?

Par exemple, pouvons-nous utiliser 8.8.8.8 comme une adresse IP privée dans un réseau privé (qui n'a jamais accès à Internet, rien dans le réseau ne connaît 8.8.8.8 est utilisé comme Google DNS)?

22
user9414424

Il est absolument possible - il n'y a rien de magique à propos de l'espace IPv4, et tout fonctionne de la même manière. Les maux de tête viennent de nombreuses années sur la ligne lorsque ce réseau est intégré à Internet.

66
davidgo

Oui c'est possible, mais pas recommandé.

Au lieu de cela, vous devez utiliser les blocs alloués RFC1918 et un petit réseau comme vous le pouvez. Évitez d'utiliser 10.0.0.0/8 pour votre réseau domestique avec une poignée de périphériques.

Plus de détails à https://tools.ietf.org/html/rfc1918 et son remplacement https://tools.ietf.org/html/rfc6761

Une bonne règle de base est d'utiliser une taille de réseau de 4X le nombre maximum de périphériques que vous pouvez exécuter sur ce réseau, ou A/24 (254 hôtes) selon la taille supérieure. A/24 simplifie également le sous-réseau.

Alors, utilisez 10.Vous.Veufstreetnumber.yourbirthyear.0 ou 192.168.votreurheightincm.0 Soyez créatif!

Si vous êtes susceptible de créer un VPN de site à site, envisagez la gamme 172.16-TROS-31.0.0 à titre de candidat - car c'est un peu messier et est donc moins utilisé.

Une autre raison de ne pas utiliser de gamme publique existante, est que la mise en cache DNS pourrait gâcher des périphériques qui modifient des réseaux. =IE Ordinateurs portables et téléphones et tablettes pourraient cacher "dns.google.com" comme 8.8.8.8 et continuez à utiliser cet enregistrement une fois qu'ils se sont connectés à votre réseau local. Ou que quelqu'un rentre à la maison et votre nom d'hôte de "FileServer .Local "La résolution de 8.8.8.8 pourrait être mise en cache pour le TTL de l'enregistrement.


Exemple de réutilisation de la propriété intellectuelle stupide - Retour dans la journée du poste de travail VMware J'ai essayé d'utiliser 127.99.99.0/24 En tant que réseau IP, sur la base qu'il était plus spécifique que les interfaces de bouclage 127.0.0.0/8.

Cela a parfaitement fonctionné pour VMware et pour Linux VMS. Mais Windows (XP?) Dit "STOP, NON" Dès que vous avez mis 127 dans le premier octet de l'adresse IP. Je n'ai jamais essayé d'allouer IPS via DHCP à l'époque.

Les possibilités de conséquences involontaires sont énormes.


Et parfois, rarement, la mise en réseau classeuse vous gâchit. J'avais l'habitude de gérer un réseau de 192.168.0.0/16 et il y avait beaucoup de choses coexistant heureusement, Windows 95, XP, NT4, Linux, Mac, imprimantes, etc.

Ensuite, nous avons eu un tas de Linksys WRT54GL APS, et ils n'accepteraient pas un masque Netmasque plus grand que/24 lorsqu'il est utilisé avec 192.168. En effet, à l'origine 192.168.0.0 a été défini comme

256 Réseaux de classe C contigus

Donc, le réseau devait être de 256 hôtes ou plus petits. Cela n'est jamais apparu avec un kit Linksys et un flash avec OpenWrt était heureux d'utiliser le réseau complet/16.

Le résultat de ceci est A/24 est plus que suffisant pour la plupart des utilisateurs. A/8 ou/16 est stupide surdimensionné.

18
Criggie

Oui, cela peut être fait. Non, tu ne veux pas. Contrairement à d'autres réponses que je vois, je suis sur le point de plonger dans plus de détails sur pourquoi (en particulier pour ma deuxième phrase).

Disons que vous contrôlez un ordinateur et vous pouvez définir son adresse IP. Et vous devez donc taper une adresse IP de 8.8.8.8. Peux-tu faire ça? Oui.

Maintenant, "Routing" pourrait être un problème (car je vais élaborer dans une partie ultérieure de cette réponse). Cependant, il peut y avoir des moyens autour de cela. Donc, disons qu'une extrémité distante a contacté votre serveur ICMP et a couru sur "Ping 8.8.8.8". Votre serveur ICMP serait-il (généralement intégré dans les composants logiciels "TCP/IP Stack")? Ouais. Aucun problème.

Disons que vous démarrez un serveur sur cet ordinateur, tel qu'un serveur DNS. Si votre ordinateur exécutait un serveur DNS et reçu la réponse, cela pourrait-il répondre et que tout fonctionne-t-il? Oui. Aucun problème.

Disons que vous démarrez un serveur HTTP. Si un autre ordinateur a ouvert un navigateur Web et a fini par communiquer sur votre ordinateur avec l'adresse IP, votre ordinateur pourrait-il répondre et tout fonctionne? Euh ... eh bien ... auparavant que la réponse était "oui". Mais, maintenant, les choses ont un peu plus compliquée grâce à HPKP. Pour plus de détails, vous pouvez voir page Web de Wikipedia sur la touche HTTP Public Key ]. Donc, cela pourrait ne pas fonctionner si bien. Pour résumer: Les navigateurs Web populaires ont considéré cela un style d'attaque et sont venus avec quelques détails sur les certificats/liaisons HTTPS appropriés pour certains des meilleurs sites du monde. Une autre technique associée peut être "préchargement de TVST", qui est liée à la TVHS ("Sécurité de transport stricte HTTP"). Ainsi, lorsque les gens installent des versions modernes de navigateurs Web, ces navigateurs peuvent venir avec quelques détails sur certains sites Web. Si votre faux site "Google" ne correspond pas aux attentes, le navigateur peut intervenir (et laissez probablement la fin de l'utilisateur final du problème).

Et, comme vous l'avez suggéré, si vous faites ces sortes de choses, le site légitime ne pourra pas être contacté sur cette adresse IP.

Maintenant, pourquoi je dis que tu ne veux pas faire ça?

Tout d'abord, il y a une meilleure solution. Avoir des appareils compter sur DHCP. Ensuite, sur votre réseau local, disposez d'un serveur DHCP qui pointe des endroits pour utiliser vos serveurs DNS locaux, à une adresse sensible (par exemple, FEC0: 0: 0: FFFF ::/126 ou une adresse IPv6 commençant par FD ou peut-être FEC0: , ou IPv4 en utilisant les gammes d'adresses de l'IETF BCP 5 ("RFC 1918")). Si vous normalisez que pour les machines clientes, les systèmes mobiles fonctionneront probablement à distance et sur votre réseau local comme vous le souhaitez.

Le grand défi avec faire des choses comme vous vous attendez à router. Si vous configurez une adresse 192.168.55.3/24 et un autre ordinateur au 192.168.55.105/24 tente de communiquer avec vous, les ordinateurs reconnaîtront la/24 (alias un masque de sous-réseau de 255.255.255.0) et déterminez que rien correspondant aux trois premiers octets (à partir de "192.168.55.") est sur le réseau local et essayera une communication directe.

Si un client DNS est au 192.168.55.105/24 et essayez de communiquer avec 8.8.8.8, l'ordinateur reconnaîtra que 8.8.8.8 ne correspond pas aux trois premiers octets. L'ordinateur tentera donc d'envoyer le trafic à un périphérique de passerelle. , le plus souvent une "passerelle par défaut" qui envoie des informations à Internet. (Cet appareil "passerelle" doit être sur le réseau local. En utilisant plus de termes techniques, la passerelle doit être dans le même sous-réseau.)

Il existe donc trois approches qui pourraient être faites pour que vos ordinateurs puissent toujours communiquer avec 8.8.8.8

  • Vous pouvez rendre votre clientèle illégitimement utiliser la gamme 8.8.8.0/24. Ensuite, 8.8.8.8 semblerait proche. Notez que cela enfreindrait les communications valides à 8.8.8.8, et vous ne pouviez pas utiliser simultanément cette stratégie pour que vos ordinateurs locaux soient dans la même gamme de clôtures près d'une même adresse.
  • Vous pouvez faire utiliser votre système local 192.168.55.105/0 au lieu de 192.168.55.105/24. Cela signifie que vous utilisez un masque de sous-réseau de 0.0.0.0, vous avez donc maintenant convaincu votre ordinateur que 8.8.8.8 est une adresse locale. Donc, les communications n'auront pas accès à votre "passerelle par défaut", mais les communications tenteront plutôt d'atteindre 8.8.8.8 directement sur votre réseau local. Si le client et le serveur le font, cela fonctionnera probablement. [.____]
    • Cependant, en utilisant l'exemple extrême montré ici, ce que vous avez effectivement effectué est de convaincre votre ordinateur que toutes les adresses IP font partie de votre réseau local. Ainsi, cette méthode illégitime a maintenant convaincu l'ordinateur concerné que l'intégralité de l'Internet doit être traitée comme sur votre réseau local. Maintenant au lieu de briser les communications avec le site Google légitime au 8.8.8.8, vous avez effectivement brisé des communications avec toutes les adresses IP légitimes sur Internet. Aie. Mauvais.
  • Vous pouvez configurer un routage personnalisé sur votre périphérique "passerelle par défaut", de sorte que les informations envoyées à 8.8.8.8 soient redirigées à l'adresse IP locale de vos désirs, au lieu d'être transmis à votre fournisseur de services Internet.

Bien que la troisième approche puisse théoriquement travailler sans trop de problèmes ni effets secondaires indésirables, le plus grand inconvénient est qu'il exige que vous ayez une boue avec routage de la circulation. Si vous allez à la boue avec quelque chose, je vous suggère de bien comprendre.

En tant que personne qui comprend le routage du trafic, je suggérerais que vous ayez peut-être besoin d'une certaine expertise pour briser avec succès les connexions légitimes que vous souhaitez (au réel 8.8.8.8) tout en cas de casser les connexions légitimes que vous ne voulez pas cassée. Et si vous avez beaucoup d'expertise pour retirer cela, vous avez probablement également une expertise pour simplement exécuter un serveur DNS sur une adresse privée établie. Alors, pourquoi ne pas faire des choses de manière normalisée qui est moins susceptible de causer des effets secondaires rares étranges qui sont plus difficiles à prévoir et à dépanner?

En réponse à ce que vous avez posé et comment vous avez demandé, oui, techniquement, quelque chose comme cela pourrait être possible. Mais gardez-nous aussi à l'esprit que si la communication ne va pas où elle devrait aller, cela est souvent décrit comme un "homme au milieu" ("mitm") attaque. Les connexions de navigateur Web ont déjà évolué pour soutenir HKPK pour vaincre de tels shenanigans. Un fait moins connu est que le DNS a été largement remplacé par l'utilisation d'EDN (en utilisant des "mécanismes d'extension pour DNS") et un fait plus largement connu est qu'il existe des améliorations plus récentes à la sécurité DNS appelée DNSSEC. Si vous n'êtes pas au courant de cela, alors vous rendez compte que les responsables actuels du code de logiciel basé sur Internet populaire devraient déjà être utiles avant de vous, afin que vous puissiez garder cela à l'esprit avant d'essayer d'inclure une "attaque MITM" comme Une partie critique d'une sorte de nouvelle conception d'une nouvelle conception de tout réseau vous supervise.

Donc, pour résumer, la principale raison pour laquelle je pense que vous ne voulez pas faire cela pour un réseau réel (plutôt qu'un laboratoire de test où vous explorez des possibilités) est simplement que, pour accomplir des objectifs légitimes utiles, il y a une meilleure façon. . Ce qui est, lorsque vous essayez de concevoir comment votre réseau se comporte, faites les choses de bonne manière. Vous êtes susceptible de subir moins de douleur dans l'ensemble.

Pour clarifier au cas où cela a été oublié, la "bonne façon" que je parle de faire consiste simplement à exploiter votre serveur DNS local sur une adresse privée, de tromper personne et d'encourager les ordinateurs à utiliser l'adresse privée locale ou à compter sur DHCP, et faire appel à vos serveurs DHCP locaux de compter sur votre serveur DNS local. C'est un style de conception plus honnête qui ne casse pas la capacité de communiquer avec un site public et est largement soutenu afin que les responsables des normes Internet soient moins susceptibles de faire quelque chose qui enfreint un tel design légitime sur de nombreux réseaux locaux utilisés dans l'ensemble du monde.

8
TOOGAM

En théorie, cela devrait aller.

En pratique:

  1. peut casser des hypothèses tierces.
    [.____] Vous pouvez utiliser des logiciels/matériels qui supposent que certaines conventions de propriété intellectuelle contiennent des comportements involontaires lorsque vous cassez ces hypothèses.

  2. peut déclencher des bugs cachés.
    [.____] Certains logiciels buggy fonctionnent bien dans la plupart des cas, mais des spécificités étranges pourraient les déclencher. Ces bugs peuvent être réparés lorsqu'ils sont remarqués, mais si vous utilisez une configuration non standard, le potentiel de rencontre des bogues que personne d'autre n'a eu aucune chance de courir avant d'augmenter.

  3. peut confondre les autres travaillant avec votre réseau.
    [.____] Même si vous êtes cool en vous souvenant que 8.8.8.8 signifie quelque chose d'autre dans votre réseau interne, cela pourrait potentiellement confondre les autres. Collaborateurs, support technique, les gens qui lisent un journal que vous pourriez partager sur un forum d'aide, etc., pourraient avoir des problèmes avec elle.

  4. peut créer des contradictions dans des caches.
    [.____] Si des périphériques de votre réseau étaient déjà connectés auprès de l'Internet global, ils peuvent disposer d'adresses IPv4 stockées dans leurs paramètres, des règles de pare-feu, etc., provoquant potentiellement des collisions indésirables lorsqu'elles rejoignent le réseau local.

En théorie, des conceptions de tiers et de bogues pauvres pourraient ne pas être votre faute. Mais dans la pratique, vous pourriez commencer à croire aux fantômes .

3
Nat