Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 13/09/2015, à 22:57

Crone123

Problème de NAT après migration

Bonjour,
J'avais un serveur sous Ubuntu 12.04 LTS. Tout fonctionnait très bien.
A cause d'un soucis matériel, j'ai du ré-installer le serveur, et j'ai donc décidé de mettre Ubuntu 14.04 LTS.

Je me suis fait un script pour générer des commandes iptables adaptées à mon réseau, et j'ai conservé ce script pour la migration.

Sur Ubuntu 12.04 LTS: Aucun soucis.
Sur Ubuntu 14.04 LTS: A priori aucun soucis, sauf que: Le NAT ne fonctionne plus.

Je m'explique:
Le serveur a 4 interfaces:
eth0 → Local
eth1 → Local
eth2 → Vers internet
wlan0 → Local

J'ai donc un bridge (br0) entre eth0, eth1, eth2 et wlan0.

Si par exemple j'ouvre un port, admettons le 8080 pour qu'il soit redirigé vers un autre serveur local, cette redirection doit fonctionner quelque soit l'interface réseau.
Donc, sur Ubuntu 12.04 LTS, cela fonctionnait correctement.
Sur Ubuntu 14.04 LTS, après avoir ré-vérifié mes règles, c'est pareil, aucun changement.

Alors pourquoi cela ne fonctionne pas sur Ubuntu 14.04 LTS?

Autre chose assez surprenante que j'ai remarqué: Je voulais essayer de comprendre ce qu'il se passe sur la connexion, par exemple: Si le serveur local répond directement au PC au lieu de repasser par le serveur, ça peut poser le soucis, mais ce n'est pas le cas. En fait, la connexion censée être en NAT arrive, elle est acceptée par le serveur, et il ne se passe rien. Aucune connexion ne va du serveur vers l'autre serveur.
J'ai utilisé Wireshark sur eth0 et c'est ce que j'ai vu.

Après je me suis dit: Et si j'utilisais Wireshark sur br0 pour voir? En vrai je suis censé voir la même chose (logique).
Sauf que, je ne sais pas pourquoi:
Si Wireshark écoute sur br0, la connexion fonctionne normalement, le NAT fonctionne comme sur Ubuntu 12.04 LTS.
Si Wireshark n'écoute plus, la connexion ne fonctionne plus en NAT.


En revanche, le nat qui va vers eth2 (qui n'est donc pas sur le bridge) fonctionne lui correctement quoi qu'il arrive. (ce qui permet aux ordis derrière le serveur d'avoir internet)

Le forward est bien activé coté kernel (sysctl), donc je ne vois vraiment pas ce qui peut causer ça yikes
Quelqu'un aurait t-il une idée?
Merci d'avance smile

PS: Ce n'est pas que pour le port 8080, je voulais aussi rediriger le port 23 du serveur vers le port 22 d'un PC, et le constat est exactement le même. Fonctionnel sur Ubuntu 12.04, et non fonctionnel sur 14.04, sauf si Wireshark est lancé (en tant que root)

Hors ligne