• # truc simple pour faire du NAT

    Posté par . En réponse au message 2 cartes reseau. Évalué à 2.

    Ca ne répond pas peut-être pas entièrement à ta question, mais j'ai chez moi une machine qui est connectée au Net (via un modem routeur et une carte Ethernet), et j'en ai une 2e derrière qui me sert de magnétoscope numérique, reliée par un câble croisé Ethernet à la 1e. J'ai donc 2 cartes Ethernet.

    Je n'ai pas mis en place de firewall (cf plus bas une raison), mais j'ai utilisé le script suivant sur la 1e machine pour connecter ma 2e machine au Net, en faisant du NAT (Network Address Translation), c'est à dire que ma 2e machine a une IP privée (en 192.168.x.y).

    # Load the NAT module (this pulls in all the others).
    #modprobe iptable_nat (chargé automatiquement chez moi)

    # In the NAT table (-t nat), Append a rule (-A) after routing
    # (POSTROUTING) for all packets going out eth0 (-o eth0) which says to
    # MASQUERADE the connection (-j MASQUERADE).
    iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

    # Turn on IP forwarding
    echo 1 > /proc/sys/net/ipv4/ip_forward

    J'ai trouvé cette manip ici http://www.netfilter.org/documentation/HOWTO/NAT-HOWTO-4.htm(...) .

    Si tu es relié au Net via "ppp0", tu remplaces "eth0" ci-dessus par "ppp0". Pour ma part j'ai un modem routeur donc je suis relié en Ethernet avec lui.
    l'IP forwarding sert uniquement à ce que les paquets soient transmis depuis la 2e machine vers le Net (et inversement), ce que tu appelles "faire le pont".

    En l'état, la 2e machine n'est pas joignable directement depuis l'extérieur puisqu'elle a une IP privée. Je ne crois pas qu'un firewall serve à quelque chose dans ces conditions.

    Pour la liaison entre la 1e et la 2e machine, j'ai fait ceci :
    - côté 1e machine : ifconfig eth1 192.168.100.100
    - côté 2e machine : ifconfig eth0 192.168.100.101 et puis route add default 192.168.100.100 (en fait c'est fait automatiquement au démarrage avec les réglages via le centre de contrôle de ma distrib, pour toi sous Windows ce sera pareil)
    et tu peux "pinger" les machines entre elles. Je conseille d'ajouter un nom dans /etc/hosts pour rendre plus agréable l'accès entre les machines.