Comment mapper une adresse IP à localhost?

16

Je veux mapper l'adresse IP 192.168.1.222 à 127.0.0.1 afin que si j'utilise 192.168.1.222 dans le navigateur Web ou la commande ping, j'obtienne la réponse (et celle de mon 127.0.0.1).

Est-ce possible via des tables de routage ou dois-je ajouter une sorte de carte réseau virtuelle?

J'essaie de résoudre ce problème sur une machine Windows 7 et je n'ai peut-être pas d'autres options qu'un Windows XP.

Je suis coincé là.

Sébastien
la source
Je ne sais pas si c'est possible, mais c'est facile à faire avec les noms d'hôtes. Est-ce juste pour un ordinateur?
Canadian Luke
D'accord, deux questions ici: 1. Si vous essayez d'accéder au système local dans un navigateur Web, pourquoi ne pas l'utiliser 127.0.0.1tout le temps? 2. Si c'est pour le système local, pourquoi s'occuper des IP encombrantes au lieu d'utiliser le nom d'hôte réservé localhost?
Iszi
@DiogoRocha Veuillez rendre vos modifications plus substantielles que celles-ci. Un seul caractère ou la mise en majuscule d'un terme ne sont pas assez pertinents pour une modification qui pousse les sujets à la première page. Ceci et cette rubrique s'appliquent aux modifications suggérées, mais le principe est valable même une fois que vous disposez des privilèges d'édition. Merci.
Daniel Beck
@Luke: Je ne peux pas travailler avec les noms d'hôtes donc le fichier hosts n'est pas viable ici
Sebastian
@ Iszi: J'en ai besoin pour faire penser à un logiciel, qu'il y a une autre machine présente.
Sebastian

Réponses:

15

Vous devrez attribuer l'adresse IP 192.168.1.222 à l'une de vos interfaces réseau. Modifier simplement la table de routage n'aura pas le résultat souhaité; le trafic arriverait en effet à l'hôte local, mais votre ordinateur conclura alors que le message n'a pas encore atteint sa destination. En l'absence d'autres options de transmission du message, il sera alors supprimé.

L'affectation de 192.168.1.222 à l'une de vos interfaces physiques serait la solution la plus simple, mais si vous n'avez pas d'interface de rechange et que vous ne souhaitez pas que vos modifications affectent le reste du réseau, vous pouvez créer une autre interface de bouclage, similaire à celle à 127.0.0.1.

La procédure a quelque peu changé depuis Windows XP . Ouvrez le gestionnaire de périphériques via le panneau de configuration et dans le menu Action, cliquez sur «Ajouter un matériel hérité». Si cette option est manquante, l'assistant peut être démarré via l'exécutable 'hdwwiz.exe'.

Gestionnaire de périphériques

Lorsque vous y êtes invité, sélectionnez le matériel manuellement dans une liste plutôt que de l'installer automatiquement. Dans les menus suivants, sélectionnez «Network Adapter», «Microsoft» en tant que fabricant et recherchez «Microsoft Loopback Adapter». Si le périphérique a été installé correctement, une nouvelle carte réseau sera apparue dans le gestionnaire de périphériques.

Ouvrez le Centre Réseau et partage via le panneau de configuration et cliquez sur «Modifier les paramètres de l'adaptateur» dans la barre de gauche. La fenêtre suivante apparaîtra, y compris notre adaptateur nouvellement installé.

Les connexions de réseau

Ouvrez ses propriétés. Dans l'onglet Réseau, sélectionnez l'élément IPv4 et cliquez sur le bouton Propriétés. Saisissez l'adresse IP que vous souhaitez attribuer à l'interface de bouclage. Parce que ce sera la seule interface sur son réseau, nous entrons «255.255.255.255» comme masque de sous-réseau.

Adresses IP

Voila.

C:\Users\Marcks>ping 192.168.1.122

Pinging 192.168.1.122 with 32 bytes of data:
Reply from 192.168.1.122: bytes=32 time<1ms TTL=128
Reply from 192.168.1.122: bytes=32 time<1ms TTL=128
Reply from 192.168.1.122: bytes=32 time<1ms TTL=128
Reply from 192.168.1.122: bytes=32 time<1ms TTL=128

Ping statistics for 192.168.1.122:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 0ms, Maximum = 0ms, Average = 0ms
Marcks Thomas
la source
1
Sous Windows 7, l'appareil s'appelait "Microsoft KM-TEST Loopback Adapter". Sinon, ce commentaire était parfait, et cela a parfaitement fonctionné pour moi! Merci beaucoup!
Nom réel
Sur le Gestionnaire de périphériques de Windows 10, cette option n'est plus disponible. Il est accessible en exécutant hdwwiz.exe.
Samir Aguiar
8

Exécutez sous l'invite de commande admin:

C:\Windows\system32>netsh int ip add address "Loopback" 192.168.1.222

C:\Windows\system32>netsh int ip show addresses

接口 "Loopback Pseudo-Interface 1" 的配置
    DHCP 已启用:                          否
    IP 地址:                           192.168.1.222
    子网前缀:                        192.168.1.0/24 (掩码 255.255.255.0)
    IP 地址:                           127.0.0.1
    子网前缀:                        127.0.0.0/8 (掩码 255.0.0.0)
    InterfaceMetric:                      75

C:\Windows\system32>ping 192.168.1.222

正在 Ping 192.168.1.222 具有 32 字节的数据:
来自 192.168.1.222 的回复: 字节=32 时间<1ms TTL=128
来自 192.168.1.222 的回复: 字节=32 时间<1ms TTL=128
lk_vc
la source
7

Cela devrait fonctionner dans Windows 7 et XP, à partir de la fenêtre de commande:

route ADD 192.168.1.222 MASK 255.255.255.255 127.0.0.1

Si vous souhaitez que la nouvelle route soit persistante entre les redémarrages:

route -p ADD 192.168.1.222 MASK 255.255.255.255 127.0.0.1
Raihan
la source
Cette méthode ne fonctionne pas. Je ne reçois pas le ping sur 192.168.1.222 pour retourner une réponse. Ce que j'ai fait maintenant, c'était d'ajouter plusieurs adresses IP à l'interface (IP Aliasing), mais même cela ne fonctionne pas, car le service avec lequel j'essaie de communiquer semble écouter uniquement 1 IP.
Sebastian
2
Maintenant que j'y pense, je suis sûr que cela ne fonctionnera pas à moins 192.168.1.222qu'une adresse IP n'appartienne réellement à la machine locale, auquel cas elle serait de toute façon redondante. Cela forcera l'ordinateur à envoyer des paquets destinés 192.168.1.222au bouclage, mais du côté de la réception, ils seront supprimés s'il ne s'agit pas de l'IP locale.
Iszi
Cela a parfaitement fonctionné pour moi, si et seulement si j'ajoute une entrée correspondante dans le fichier hosts. Cependant, notez que mon cas est inversé, en ce que je mappe localhost à une IP externe (dans ce cas, l'IP de mon hôte VM).
Jim O'Brien
@ JimO'Brien Cela signifie-t-il que vous l'avez utilisé à la route ADD 127.0.0.1 MASK 255.255.255.255 192.168.1.222place?
Shayan
Cette commande ne fonctionne pas pour moi, je reçois:The route addition failed: The parameter is incorrect.
Shayan