Connexion interne > externe > interne

Bonjour,

j’ai un problème d’accès en interne > externe > interne sur mon réseaux et je ne sais pas trop d’où cela peut venir.

J’explique :

nous avons une business Livebox 1000A connecter à un serveur debian 2.6.26-2-686, connecter au serveur un swith 8 port, et connecté au switch, 3 postes clients.
Business : 192.168.1.1 / 80.14.132.205 (acfam21.fr)
Serveur : 192.168.1.100 / 10.0.0.1 (serveur dhcp, imap, web)
poste client : 10.0.0.X

j’essaye d’établir une connexion depuis un poste client au serveur en passant par l’ip public de la livebox. Exemple acfam21.fr. Depuis un poste du réseau ou du serveur lui même ça ne fonctionne pas, impossible d’accéder à la page web. mais depuis l’extérieur cela fonctionne parfaitement.
Connexion du serveur au serveur en ssh sur l’ip externe ou le nom exemple :
ssh acfam21.fr connexion refused.
et connexion depuis un poste client sur imap.acfam21.fr impossible.

j’ai testé un ssh “ippublicdemaFree” depuis mon serveur persso qui a peut prêt la même archi, mais avec une freebox et cela fonctionne parfaitement.

mon avis est que la business livebox n’autorise pas les connexions interne > externe > interne. j’ai eu beau chercher dans les confs je n’ai pas trouvé d’option de se type. (j’ai désactivé le par-feu au cas ou mais rien n’y fait.)

les ports sont bien forwardé sur la box, et depuis un poste externe j’accède au serveur sans problème sur tout les protocoles.

J’ai cherché sur le net et d’après ce que j’ai lu, il serais impossible de forwarder sa propre adresse, mais dans ce cas la, pourquoi cela fonctionne sur mon serveur persso !

si vous avec une idée, cela me serais vraiment utile. mais si comme je le pense cela viens de la business Livebox je crois que je vais passer pas mal de temps avec orange, avant qu’il comprenne le problème.

exemple d’utilisation : se connecter au serveur imap depuis le réseaux interne ou depuis ailleurs sans modifier la configuration du client de messagerie (utilisation de imap.acfam21.fr, fonctionne depuis l’extérieur mais pas depuis l’intérieur)

Merci d’avance,
Fab

Bonjour,

A mon travail nous avons une livebox (la page de config montre que la livebox est une inventel)

depuis un poste client du réseaux local, j’arrive à prendre la main sur le serveur avec RDP (le serveur est un WindowsServeur20003, personne n’est parfait), je peux faire la même chose en accédant au FTP du serveur, et je vais tester la connexion SSH vers la virtualbox interne au serveur.

voilà un affreux dessin de ce qui marche chez nous :

Poste client - livebox - IP public - INTERNET - IP public - livebox - NAT vers IP local du serveur - serveur

donc si j’ai bien compris ton problème, c’est possible

Bonjour sechanbask,

Merci de ta réponse, effectivement, je me demande pourquoi j’ai pas pensé à cette solution avant.

je test et je te tien au courant.

Merci,
Fab

J’ai le même problème chez moi et j’avoue n’avoir jamais cherché une solution propre, ça m’intéresserait de connaitre une solution plus souple :

Pour contourner ce problème, je renseigne tout simplement sur mes postes clients la résolution IP/domaine dans le fichier hosts. Dans ton cas il suffit d’ajouter la ligne :

Dans ton fichier hosts qui est…

sous linux : /etc/hosts
sous win : c:\windows\system32\drivers\etc\hosts

Bonjour SpaTule,
Merci de ta réponse, mais je ne suis pas sur que cela changera le problème.

Les postes clients sont configuré avec une ip en 10.0.0.X attribué par le serveur, et l’ip du serveur en gateway 10.0.0.1 , si j’essaye de me connecter au serveur depuis un poste en 10.0.0.X sur l’ip 10.0.0.1 du serveur cela fonctionne, si je met le poste client en wifi sur la livebox il aura une ip en 192.168.1.X
et si je réessaie de me connecter à l’ip du serveur 192.168.1.100 cela fonctionne aussi.

Le problème arrive quand j’essaye depuis un poste client ou même du serveur lui même de me connecter à “acfam21.fr” qui est le nom de domaine de la société redirigé sur la livebox 80.14.132.205 qui elle forwarde les ports de connexion au serveur. (serveur > livebox > serveur (ne fonctionne pas)

Si j’essaie de me connecter depuis un autre réseaux externe sur acfam21.fr j’arrive sur la livebox qui redirige sur le serveur et ça fonctionne. essaye sur ton serveur de faire ssh tonnomdedomaine et si ça fonctionne c’est que c’est normal mais moi je n’y arrive pas ! l’impression que la business livebox fonctionne correctement mais refuse de forwarder une ip local.

De plus j’ai testé chez moi avec la même architecture je me connecte à mon serveur avec l’ip 192.168.1.1 et j’essaye un ssh monnomdedomaine et sa fonctionne parfaitement. (free) c’est incompréhensible !

mon fichier hosts du serveur est bien configurer mais je n’ai pas modifié ceux des postes. je vais tester au cas ou.

mon dessin c’est :
poste client > switch > serveur > livebox > ippublic > INTERNET > ippublic > livebox > forwarding de port sur le serveur > serveur

cela fonctionne parfaitement tant qu’on ne se trouve pas dans un des 2 réseaux local. (je sais je me répète mais c’est pour détailler au mieux !)

Rajouté au serveur pour que le réseaux 10.0.0.X puisse ce connecter à internet :

echo 1 > /proc/sys/net/ipv4/ip_forward
/sbin/iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

eth0 : 192.168.1.100
eth1 : 10.0.0.1

mais sa viens pas de la, puisque même du serveur j’arrive pas à me connecter.

j’espère avoir été clair dans mes explications.

Fab

C’est parce que la livebox ne fait pas de translation d’adresse pour le réseau interne.

  • Le client (IP_client_Lan) adresse une demande de connexion à IP public
  • La livebox renvoit ça à IP_Lan, le serveur reçoit donc une demande venant de IP_colient_Lan et répond à IP_client_Lan
  • IP_Client_Lan reçoit une réponse de IP_Lan alors qu’il attend une réponse de IP_public, il ignore cette réponse.

Utilise tcpdump pour voir ce phénomène. La solution consiste à forcer le NAT pour les connexions venant du LAN allant vers le serveur sur la livebox. Cependant je ne crois pas que la livebox soit capable de faire ça.

comment explique tu que ça ne fonctionne pas a partir du serveur, sachant que le serveur est connecté directement au cul de la livebox et sur la même ip ?

je pense que nous devons faire abstraction des postes clients et du réseaux 10.0.0.X. et ce concentrer sur le pourquoi le serveur connecté derrière la livebox ne peut se joindre elle même en passant par la livebox.

ssh localhost = fonctionne
ssh acfam21.fr = fonctionne pas

Merci de vos réponses, je vais quand même appeler orange en espérant qu’ils comprendront mon langage…

Fab

[quote]Les postes clients sont configuré avec une ip en 10.0.0.X attribué par le serveur, et l’ip du serveur en gateway 10.0.0.1 , si j’essaye de me connecter au serveur depuis un poste en 10.0.0.X sur l’ip 10.0.0.1 du serveur cela fonctionne, si je met le poste client en wifi sur la livebox il aura une ip en 192.168.1.X
et si je réessaie de me connecter à l’ip du serveur 192.168.1.100 cela fonctionne aussi.

Le problème arrive quand j’essaye depuis un poste client ou même du serveur lui même de me connecter à “acfam21.fr” qui est le nom de domaine de la société redirigé sur la livebox 80.14.132.205 qui elle forwarde les ports de connexion au serveur. (serveur > livebox > serveur (ne fonctionne pas)[/quote]

C’est exactement pour ça que je parle d’enregistrer la résolution de nom directement dans les fichier hosts. Essaye tu verra que ça fonctionne mais c’est “dégueulasse” puisqu’il faut se taper tout les fichiers hosts des postes client et aussi du serveur. Du coup, pour le cas du wifi, il te faut également enregistrer la ligne

192.168.1.100 acfam21.fr

mais j’ai du mal a cerner exactement l’archi de ton réseau : est ce comme ceci :

WAN/Internet
|
80.14.132.205
LiveBox Pro
192.168.1.1
|
192.168.1.100
Serveur (donc aussi passerelle/routeur)
10.0.0.1
|
Switch 8ports
| | |
clients en 10.0.0.X

:question:

acfam21.fr pointe vers une IP externe. Une connexion est un coupe IP1/IP2, le serveur essaye de faire une connexion

IP_LAN/IP_public et se retrouyve avec une réponse établissant une connexion entre IP_LAN/IP_Lan. Ça ne peut pas marcher. Fais un tcpdump sur le port ssh sur le serveur, tu verras les paquets et tu comprendras ce que je veux dire.

Bonjour,

J’ai fait ton tcpdump en étant connecté sur le serveur depuis chez moi sur le port ssh du serv :

22:42:48.495155 IP lns-bzn-49f-81-56-158-194.adsl.proxad.net.1169 > acfam.ssh: P 273:325(52) ack 20180 win 16520

On vois effectivement les paquets transmis entre chez moi et le serveur, mais rien quand je demande une connexion entre un post local et le serveur en passant par la livebox.

le fichier /etc/hosts actuel :
80.14.132.205 acfam.acfam21.fr
192.168.1.100 acfam
10.0.0.1 acfam
127.0.0.1 localhost

Acfam est le nom du serveur, si je modifie le nom des ip local acfam en acfam21.fr, le serveur fait un @localhost pour tout demande de connexion à acfam21.fr ce qui est normal, et effectivement la connexion ssh fonctionne puisqu’il ne passe plus par la livebox.

si la connexion du serveur acfam ne fonctionne pas en passant par la livebox sur acfam21.fr pourquoi le serveur de Fabien493 fonctionne en passant par la freebox sur fabien493.com ?
c’est exactement la même architecture pour simplifier :
1 : Domaine acfam21.fr > livebox 80.14.132.205 > Forwarde de port > serveur acfam
2 : Domaine fabien493.com > freebox 82.239.213.159 > Forwarde de port > serveur fabien493

Le problème viens de la !

je pense que Fran.b à raison :

[quote]C’est parce que la livebox ne fait pas de translation d’adresse pour le réseau interne.
… La solution consiste à forcer le NAT pour les connexions venant du LAN allant vers le serveur sur la livebox. Cependant je ne crois pas que la livebox soit capable de faire ça.[/quote]

quand on fait une connexion ssh sur acfam21.fr que la réponse à cette connexion est “Connection refused” et que dans les logs du serveur nous n’avons aucune trace, c’est que la livebox ne forwarde pas et que le serveur ne reçois aucune demande de connexion.
Dites-moi si je me trompe ?

Je vais chez ACFAM Lundi après-midi, étant sur site je vais encore faire quelques tests sur la livebox. et j’appellerais Orange pour trouvé une solution final à ce problème.

Merci à tous.

Fab

Une fois n’est pas coutume je remonte un vieux sujet. Mais c’est pour la bonne cause, j’y apporte une solution alternative. :slightly_smiling:

J’ai exactement le même type problème : PC nomade qui se connecte à un serveur LAN, ou bien à partir du LAN lui-même, ou à partir d’Internet (avec NAT sur la box), et impossibilité d’accéder au serveur LAN via l’IP externe lorsque le PC nomade est sur le LAN.

Ma solution est de définir sur la box une entrée DNS spécifique pointant vers l’IP LAN du serveur.
Inconvénients :

  • la box doit fournir une option pour rajouter des entrées DNS (Neuf/SFR propose cette option, pour les autres je ne sais pas)
  • le PC nomade doit utiliser les DNS du réseau local sur lequel il se trouve, récupérés par DHCP (pas de serveurs DNS fixes), donc la box elle-même lorsqu’il est sur le LAN
    Avantage : pas besoin de toucher aux fichiers hosts des différents postes.

Exemple pour que ça soit plus clair…

Serveur LAN : 192.168.1.100, écoute sur le port 999
IP publique de la box : 1.2.3.4 (hote.domaine.com) avec NAT du port 999 vers 192.168.1.100:999
La box contient une entrée DNS spécifique qui associe hote.domaine.com à l’IP locale 192.168.1.100. Cette entrée est prioritaire sur les informations retournées par les DNS publics.

[code]PC LAN -> requête DNS hote.domaine.com -> DNS de la box qui court-circuitent les DNS publics -> IP 192.168.1.100 -> connexion directe au serveur LAN

PC Internet -> requête DNS hote.domaine.com -> DNS locaux qui vont faire une demande récursive aux DNS publics -> IP 1.2.3.4 -> connexion à la box -> NAT vers le serveur LAN[/code]

En espérant que ça puisse servir à d’autres… :006