Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Communication réseau entre Qemu et linux

8 réponses
Avatar
Batyann811
Bonsoir,

J'ai "besoin" de faire tourner windows 98 sous qemu. Je l'ai donc
installé et je suis trés agréablement surpris par la vitesse d'émulation
mais il me reste un problème bien ennuyeux : pas moyen de faire
fonctionner la connexion réseau entre le PC émulé sous Qemu et mon vrai
PC sous linux. Qemu semble bien emulé une carte réseau puisqu'elle est
détectée pas win98. Je lui ai donc attribué une ip fixe (192.168.0.4) et
j'ai défini comme passerelle l'adresse sur mon réseau réel de mon PC
sous Linux (192.168.0.1). Malgré ça, rien ne se passe pas de réponse au
ping ni dans un sens ni dans l'autre.

Avez-vous déjà réussi à faire communiquer par réseau virtuel une machine
émulée sous qemu avec la machine hôte et si oui comment ?

Merci

8 réponses

Avatar
Marc
Batyann811 wrote:

Bonsoir,

J'ai "besoin" de faire tourner windows 98 sous qemu. Je l'ai donc
installé et je suis trés agréablement surpris par la vitesse d'émulation
mais il me reste un problème bien ennuyeux : pas moyen de faire
fonctionner la connexion réseau entre le PC émulé sous Qemu et mon vrai
PC sous linux. Qemu semble bien emulé une carte réseau puisqu'elle est
détectée pas win98. Je lui ai donc attribué une ip fixe (192.168.0.4) et
j'ai défini comme passerelle l'adresse sur mon réseau réel de mon PC
sous Linux (192.168.0.1). Malgré ça, rien ne se passe pas de réponse au
ping ni dans un sens ni dans l'autre.

Avez-vous déjà réussi à faire communiquer par réseau virtuel une machine
émulée sous qemu avec la machine hôte et si oui comment ?

Merci


Salut,

voila justement un sujet sur lequel je me suis penché il y a qq jours !

Il te faut une interface TUN au niveau du Linux (recompil de noyau
éventuelle, et charger le module tun).
Tu assigne une IP à cette nouvelle interface :
ifconfig tun0 [addr_ip] netmask [qui_va_bien] broadcast [qui_va_bien]
Attention, cette adresse ne doit pas être dans ton plan d'adressage
actuel, mais dans celui de la machine émulé car ton PC hote va devenir
un routeur (machine à 2 interfaces).
Il faut activer l'IP forwading :
echo 1 > /proc/sys/net/ipv4/ip_forward

Normalement ça roule après. (éventuellement mettre à jour les tables de
routages des autres équipements de ton réseau physique quand même).

Marc.

--
L'I2C sous Windows
http://perso.club-internet.fr/mbouget/index.html

ATTENTION : enlevez les X pour répondre (remove all X to reply)

Avatar
Batyann811
Marc wrote:


Salut,

voila justement un sujet sur lequel je me suis penché il y a qq jours !


Ben ça tombe bien ça !


Il te faut une interface TUN au niveau du Linux (recompil de noyau
éventuelle, et charger le module tun).
D'accord ben je vais essayer de voir de ce coté là.


Tu assigne une IP à cette nouvelle interface :
ifconfig tun0 [addr_ip] netmask [qui_va_bien] broadcast [qui_va_bien]
Attention, cette adresse ne doit pas être dans ton plan d'adressage
actuel, mais dans celui de la machine émulé car ton PC hote va devenir
un routeur (machine à 2 interfaces).
On peut vraiment pas rester dans le même plan d'adressage parce que j'y

connais pas grand chose à ça moi ?

Il faut activer l'IP forwading :
echo 1 > /proc/sys/net/ipv4/ip_forward

Ça c'est déjà fait !


Normalement ça roule après. (éventuellement mettre à jour les tables de
routages des autres équipements de ton réseau physique quand même).

Les tables de routages c'est iptables ? Si c'est ça je vais avoir du

boulot parce que mon firewall c'est un script que j'ai récupéré sur
internet sans trop chercher à comprendre.

Bon ben je vais m'y mettre mais j'aurai surement d'autres questions
d'ici peu.

Merci.

Avatar
Rakotomandimby Mihamina
On Wed, 15 Sep 2004 22:25:23 +0200, Batyann811 wrote:

Les tables de routages c'est iptables ?


non c'est 'route' (man route pour l'aide)
--
ASPO Infogérance - http://aspo.rktmb.org/activites/infogerance
Unofficial FAQ fcolc - http://faq.fcolc.eu.org/
Linux User Group sur Orléans et alentours.
Tél: + 33 2 38 76 43 65 (France)

Avatar
Sebastien Kirche
Le 15 Sep 2004, Batyann a dit :

Bonjour, j'ai aussi étudié la question il y a peu pour faire fonctionner le
Mac G3 émulé par PearPc en réseau.

Il te faut une interface TUN au niveau du Linux (recompil de noyau
éventuelle, et charger le module tun).
D'accord ben je vais essayer de voir de ce coté là.



Il est aussi possible qu'il faille créer le device associé à l'interface
TUN comme ce fut le cas chez moi : mknod /dev/net/tun c 10 200


Tu assigne une IP à cette nouvelle interface :
ifconfig tun0 [addr_ip] netmask [qui_va_bien] broadcast [qui_va_bien]
Attention, cette adresse ne doit pas être dans ton plan d'adressage
actuel, mais dans celui de la machine émulé car ton PC hote va
devenir un routeur (machine à 2 interfaces).
On peut vraiment pas rester dans le même plan d'adressage parce que

j'y connais pas grand chose à ça moi ?


Il devrait être possible de rester sur le même plan d'adressage avec qemu :
j'ai reçu par la liste de dev de pearpc un embryon de howto expliquant
commet faire. Il y est question d'activer les fonction de bridge ip dans
linux. Je n'ai pas encore testé, mais celui qui a envoyé le message a
indiqué que ça fonctionnait © chez lui.

Ce howto n'est pas encore dispo sur le site de pearpc (pearpc.sf.net) aussi
j'ai sauvé le message chez moi :
(http://sebastien.kirche.free.fr/pearpc_stuff/linux-bridge)

Pour aider à la compréhension du message, il faut savoir qu'au démarrage
pearpc crée une interface TUN appelée ppc puis il utilise le script ifppc-up
et lors de l'arrêt ifppc-down pour activer ou désactiver le routage ip.


Il faut activer l'IP forwading :
echo 1 > /proc/sys/net/ipv4/ip_forward

Ça c'est déjà fait !



J'espère que ça pourra te donner quelques idée pour utiliser qemu en réseau.

Sébastien Kirche


Avatar
Batyann811
Merci mais je crois que c'est un peu trop costaud pour moi niveau réseau.
Avatar
Batyann811
Marc wrote:
Batyann811 wrote:

Bonsoir,

J'ai "besoin" de faire tourner windows 98 sous qemu. Je l'ai donc
installé et je suis trés agréablement surpris par la vitesse
d'émulation mais il me reste un problème bien ennuyeux : pas moyen de
faire fonctionner la connexion réseau entre le PC émulé sous Qemu et
mon vrai PC sous linux. Qemu semble bien emulé une carte réseau
puisqu'elle est détectée pas win98. Je lui ai donc attribué une ip
fixe (192.168.0.4) et j'ai défini comme passerelle l'adresse sur mon
réseau réel de mon PC sous Linux (192.168.0.1). Malgré ça, rien ne se
passe pas de réponse au ping ni dans un sens ni dans l'autre.

Avez-vous déjà réussi à faire communiquer par réseau virtuel une
machine émulée sous qemu avec la machine hôte et si oui comment ?

Merci



Salut,

voila justement un sujet sur lequel je me suis penché il y a qq jours !

Il te faut une interface TUN au niveau du Linux (recompil de noyau
éventuelle, et charger le module tun).
Tu assigne une IP à cette nouvelle interface :
ifconfig tun0 [addr_ip] netmask [qui_va_bien] broadcast [qui_va_bien]
Attention, cette adresse ne doit pas être dans ton plan d'adressage
actuel, mais dans celui de la machine émulé car ton PC hote va devenir
un routeur (machine à 2 interfaces).
Il faut activer l'IP forwading :
echo 1 > /proc/sys/net/ipv4/ip_forward

Normalement ça roule après. (éventuellement mettre à jour les tables de
routages des autres équipements de ton réseau physique quand même).

Marc.



Bon je crois avoir un peu progresser dans la résolution de mon problème.

Tout d'abord j'ai décidé de faire tourner un linux dans mon PC émulé
puis, quand j'aurais réussi je passerais à un win98.

J'ai donc installé un linux émulé et le module tun se charge bien sur
mon vrai PC. J'ai configuré le réseau sur mes 2 machines ce qui donne :

vrai PC -> eth0 192.168.0.1
tun0 192.168.1.1

PC émulé -> eth0 192.168.1.2

Avec cette configuration je peux faire des ping dans tous les sens, ça
fonctionne bien. En revanche j'ai beau activer l'ip_forwarding sur le
vrai PC pas moyen de pinguer une adresse ip exterieure (ex :
213.228.0.42) à partir de mon PC émulé.

Si vous aviez une piste pour la suite...

Merci.


Avatar
no_spam
On Fri, 17 Sep 2004 00:19:44 +0200, Batyann811 wrote:

Marc wrote:
Batyann811 wrote:

Bonsoir,

J'ai "besoin" de faire tourner windows 98 sous qemu. Je l'ai donc
installé et je suis trés agréablement surpris par la vitesse
d'émulation mais il me reste un problème bien ennuyeux : pas moyen de
faire fonctionner la connexion réseau entre le PC émulé sous Qemu et
mon vrai PC sous linux.




[...]
Il faut activer l'IP forwading :
echo 1 > /proc/sys/net/ipv4/ip_forward
[...]


Bon je crois avoir un peu progresser dans la résolution de mon problème.

Tout d'abord j'ai décidé de faire tourner un linux dans mon PC émulé
puis, quand j'aurais réussi je passerais à un win98.

J'ai donc installé un linux émulé et le module tun se charge bien sur
mon vrai PC. J'ai configuré le réseau sur mes 2 machines ce qui donne :

vrai PC -> eth0 192.168.0.1
tun0 192.168.1.1

PC émulé -> eth0 192.168.1.2

Avec cette configuration je peux faire des ping dans tous les sens, ça
fonctionne bien. En revanche j'ai beau activer l'ip_forwarding sur le
vrai PC pas moyen de pinguer une adresse ip exterieure (ex :
213.228.0.42) à partir de mon PC émulé.


Je pense qu'il faut que tu "nat" le sous réseau tun0.
C'est ce que je fait, ça marche très bien:
iptables -A POSTROUTING -t nat -o eth0 -j MASQUERADE



Avatar
Batyann811
no_spam wrote:


Je pense qu'il faut que tu "nat" le sous réseau tun0.
C'est ce que je fait, ça marche très bien:
iptables -A POSTROUTING -t nat -o eth0 -j MASQUERADE



C'était bien un truc dans ce genre la.

Donc maintenant grace à votre aide à tous j'ai un win98 qui fonctionne
sous qemu avec un accés au net qui fonctionne. Il ne me reste plus qu'à
créer une répertoire partagé avec samba entre linux et win98 mais je
devrais réussir ça tout seul.

Merci à tous.