Pour diverses raisons, j'ai 3 routeurs WiFi haut débit chez moi (ou mon laboratoire de piratage personnel). Du côté WAN, l’un est FTTH, l’autre est ADSL et le troisième est 4G-LTE. Du côté WLAN, ils se voient attribuer des sous-réseaux 192.1.xx, 192.2.xx, 192.3.xx et tous sont configurés pour attribuer une adresse IP DHCP aux périphériques demandeurs dans la plage 192.x.1.0 - 192.x.200.0 au-dessus de la plage 192.x.200.0 sont réservés pour une adresse IP statique.
House-Hold (comme beaucoup, ces jours-ci) a une demi-douzaine de téléphones / tablettes Android et peu de PC. Tous les périphériques utilisent DHCP pour l'attribution d'adresse IP. Toutefois, comme on pourrait l’imaginer, un appareil peut être connecté à l’un des 3 routeurs WiFi et peut donc avoir une adresse IP quelconque (plage 192.x.1 ~ 192.x.200, où x = 1, 2, 3).
J'essaie de développer une application Android nécessitant l'utilisation de TCP / IP pour communiquer avec un serveur spécifique. Le serveur est une application Linux s'exécutant dans une machine virtuelle (invité Ubuntu 32 bits, s'exécutant sur l'hyperviseur VMWare Workstation Pro 14), sur un ordinateur portable Windows 10. L'adresse IP est également attribuée à l'ordinateur portable de manière dynamique (DHCP). La machine virtuelle Linux utilise une carte réseau virtuelle en mode NAT.
Voici un diagramme pour expliquer la configuration:
Le problème est qu'en raison de l'utilisation d'une adresse IP dynamique et de l'utilisation d'une adresse IP explicite (classe privée, donc impossible à gérer via DNS), je dois fréquemment reconfigurer l'adresse IP du serveur dans l'application client Android. Une solution simple consisterait à utiliser static-IP pour les serveurs. Cependant, je me demande s’il existe une autre approche, simple et intuitive. élégant ?
la source
Réponses:
Essayez une réservation DHCP, à condition que le micrologiciel de votre routeur la prenne en charge. Pour DHCPv4, tout ce dont vous avez besoin est une adresse MAC et l'adresse IP souhaitée. la réservation garantit que DHCP louera toujours l'adresse IP réservée à un périphérique avec l'adresse MAC donnée.
Les clients recevront toujours la même adresse, mais notez qu'ils sont toujours des clients DHCP. Si DHCP est mis hors ligne plus longtemps que la période de bail de DHCP, il perd l'adresse et retourne à une adresse APIPA. De plus, les applications nécessitant une adresse IP statique peuvent ne pas être satisfaites d'une réservation car l'adresse IP est toujours louée (ADDS par exemple).
J'espère que cela pourra aider.
la source
Il y a deux parties à cette question. La première partie explique comment traiter les 3 connexions WAN, la seconde partie, la recherche des adresses IP attribuées.
La deuxième partie n’est en réalité pas si difficile: vous devriez avoir un seul segment de réseau local pour toute votre maison, en utilisant les routeurs comme répéteurs Wifi si nécessaire. Sur ce segment de réseau local, vous avez besoin d’un seul serveur DHCP associé à un seul serveur DNS. Le serveur DHCP mémorise les noms de client dans la requête DHCP et les fournit au serveur DNS (ou vous pouvez attribuer des noms en fonction de l'adresse MAC).
De cette manière, vous pourrez accéder à tous les appareils de votre réseau domestique par leur nom. Certains routeurs offrent déjà ce type de fonctionnalité par défaut.
La partie difficile est les 3 connexions WAN. Les protocoles IP traditionnels n'autorisant pas le multihébergement, vous ne pouvez donc pas utiliser plusieurs connexions Internet en même temps. Je ne sais pas Pourquoi vous avez 3 connexions WAN, vous souhaitez peut-être une sorte de système de basculement ou vous voulez décider en fonction des périphériques clients.
Si vous ne voulez pas de solution unifiée et que vous insistez sur l'utilisation des 3 routeurs pour 3 sous-réseaux, vous pouvez toujours essayer de configurer un serveur DNS unique pour les trois, mais il sera plus difficile de donner à ce serveur DNS les informations actuelles.
Assigner des IP statiques est bien sûr aussi une solution, bien que vous deviez éditer les fichiers de configuration à chaque fois que quelque chose change, ce qui peut être compliqué. Je préfère donc une solution centralisée unifiée.
la source