[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Faire fonctionner Apache sur une seule interface



Salut,

Sylvain Sauvage a écrit :
Dimanche 30 avril 2006, 20:04:36 CEST, franck05@free.fr a écrit :

Je n'arrive pas à configurer Apache 2 sur une Debain Sarge utilisée comme passerelle avec deux interfaces réseaux eth0 (vers le net) et
eth1 vers mon LAN.
Comme j'utilise squid et que je voudrais le faire tourner sur le port
80 d'eth1 pour qu'il soit obsolète pour les utilisateurs,

« obsolète » ? Qu'entends-tu par « que [squid] soit obsolète pour les
utilisateurs » ?

Oui, je suis curieux aussi.

je souhaite
qu'apache ne fonctionne que sur eth0, or il fonctionne sur les 2
interfaces.

Je ne pense pas que ce soit possible : une socket TCP peut être lié à une adresse locale particulière mais pas à une interface.

J'ai donc essayé  dans httpd.conf :

Listen 192.168.0.1:80

et j'obtiens l'erreur suivante :

Forcing reload of web server: Apache2(98)Address already in use: make_sock: could not bind to address 192.168.0.1:80
no listening sockets available, shutting down
Unable to open logs

Normal : un seul programme par port.
Il n'y a qu'un port par machine, et pas un port par IP.

Si, il y a bien un port par adresse locale : on peut avoir plusieurs sockets en écoute sur le même port mais des adresse locales différentes, l'adresse 0.0.0.0 comptant pour toutes les adresses locales en même temps.

Facile à tester :
$ nc -l -p <port> -s <adresse_locale> &
$ nc -l -p <port> -s <autre_adresse_locale> &
$ netstat -ltn

On pourrait donc avoir squid qui écoute sur l'adresse d'eth1 (si la configuration de squid le permet) et apache qui écoute sur l'adresse d'eth0, tous les deux sur le port 80. Mais cela n'empêche toujours pas d'accéder à n'importe lequel des deux services par n'importe quelle interface, du moment qu'on s'adresse à l'adresse sur laquelle il écoute.

On pourrait penser qu'il y a un port par interface, mais non.

Non, en effet. Juste un port par adresse locale.

[Rien à ajouter au reste de la réponse]



Reply to: