Question

Je dois construire un émulateur de périphérique qui peut communiquer sur l'adresse IP réelle

Je dois créer autant d'instances que je peux pour le périphérique. Avec une adresse IP et l'adresse MAC pour chaque instance de l'émulateur

peut peut-il me guider comment cela peut être atteint?

Était-ce utile?

La solution

Il y a cinq ou six ans, j'étais coincé écrire une couche d'émulation de réseau pour un jeu PS2. On m'a dit que tous les comportements classiques d'une connexion Internet devait être affiché; caractéristiques de perte réalistes, réorganisation des paquets, la latence, paquet précipitation induite par la perte. Essentiellement, on m'a dit de mettre en œuvre l'Internet dans quelques semaines.

Je suggère simplement rebondir tout notre trafic de jeu au large d'un serveur d'écho à distance. Quand on m'a dit qu'il était absolument interdit d'envoyer du trafic de développement au-dessus des fils publics, je simplement créé un serveur que tout le monde a leur PS2 devkits à qui stocker chaque paquet reçu et envoyer un doppleganger (plein d'un identifiant pour le paquet d'origine plus un tas d'ordures au hasard pour faire de la même taille) vers les serveurs d'écho que je courais. Lorsque le doppleganger a été reçu, je passerais le paquet d'origine à sa destination d'origine.

Boom. simulation Internet avec toutes les épines en moins de 8 heures.

Mise à jour:

Étant donné le succès de la réponse ici, je réimplémentées le service d'écho de jeu un certain temps. Il semblait que github pourrait être un meilleur endroit pour cacher, donc ici, il est : Si cela fonctionne pour tu es bon! Sinon, laissez-moi savoir. J'attends son état actuel est fragile, au mieux.

Autres conseils

Ajouter une plage d'adresses IP virtuel dans Windows

Voir le 21 Février 2006, 13:18 réponse post par gil.elessar

.

Pour votre référence:

Netsh des commandes pour l'interface IP

commandes netsh

Vous pouvez utiliser les commandes dans le protocole contexte pour configurer les paramètres TCP / IP IP Interface Netsh (y compris les adresses, les passerelles par défaut, les serveurs DNS et WINS serveurs) et pour afficher la configuration et des informations statistiques.

Une idée simple woul être utilisé à User-Mode Linux (UML) , un port du noyau Linux dans l'espace utilisateur. Il permet à plusieurs systèmes Linux (connue en tant qu'invités) pour exécuter comme une application dans un système Linux normal (connu sous le nom de l'hôte).

Il très léger, en CPU et de la mémoire. Par exemple, je suis en utilisant plus de 10 UML dans le même temps sur un « pas trop récente » PC, en utilisant Netkit , un simulateur de réseau basé sur UML. UML est léger car il est une application native, pas lourd virtualisation (VMWare, VirtualBox, qemu) ni para-virtualisation (Xen).

Comme les interfaces réseau sont mises en œuvre pour pouvoir se connecter à d'autres machines UML (à l'aide uml_switch), vous pouvez avoir une adresse MAC que vous voulez. Si vous avez besoin de connecter ces machines UML à votre système ou des hôtes externes, vous pouvez créer des périphériques virtuels en utilisant TUN / TAP.

PS: Si vous êtes sous Windows, vous pouvez CoLinix , port de noyau Linux pour M $ OS, je ne sais pas si elle a les mêmes caractéristiques que UML.

Vous pouvez essayer d'utiliser des adaptateurs de rebouclage. L'utilisation de ce que vous pouvez définir une adresse IP ou Mac. Fonctionne très bien pour émulant diverses connexions réseau.

vous devez étudier la couche de liaison de données en profondeur dans la partie de codage - alors vous pouvez comprendre la façon dont il se adresse MAC et la communication b / w mac et ip

en fonction du type d'appareil dont vous avez besoin, vous pouvez être heureux avec un certain nombre de moteurs de PC virtuels, les frais généraux est élevé (PC tout est émulé au lieu d'une interface réseau) de sorte que vous ne serez pas finir avec 1000 machines , mais cela est une solution « hors de la boîte. » - et chaque PC virtuel peut avoir un certain nombre de cartes de réseau virtuel

Je vous suggère de mieux ne pas commencer à réinventer la roue. Il y a du matériel ainsi que des solutions logicielles pour ce problème particulier. Ils sont également très bien adaptés à la charge réseau (et débit) -ÉTUDES.

L'inconvénient est ces legs sont assez chers.

traceur Cisco pakcet vous permet de simuler le trafic réseau avec une interface utilisateur graphique. Im surpised personne n'a mentionné que (limité à ses dispositifs de cisco mais la norme est la même à travers des dispositifs de sorte qu'il serait l'apprentissage des commandes pour votre appareil spécifique).

Essayez de faire une recherche sur Google, car dans des circonstances normales sa seule disposition des étudiants CCNA mais je gardé une copie parce que mon professeur m'a laissé.

Ou vous pourriez trouver quelqu'un quelque part a affiché une copie de leur classe sur Internet.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top