At 14:59 12/02/2001 +0100, you wrote:
>Si je d�finis un IP aliasing, je devrais pourvoir faire
>tourner deux serveurs sur le m�me port, mais chacun sur
>une IP diff�rente, non ?

En effet, il suffit que le serveur fasse un bind sur l'IP sp�cifique.

Petite explication th�orique sur le sujet pour expliquer un truc important 
� savoir.

Quand un serveur se met � l'�coute sur un port pr�cis, il fait un bind(). 
Jusque l� c'est simple. En g�n�ral, il fait un bind sur l'adresse IP 
0.0.0.0 (IN_ADDR_ANY) parfois not� *.
Dans le cas comme ici pour les interfaces multiples, on peut faire un bind 
sur une IP pr�cise. Par exemple, chez moi, le routeur vers internet a tous 
ses services en bind sur 127.0.0.1 et 10.x.x.x. Ainsi, personne ne voit de 
service � l'�coute sur internet.
Jusque l�, c'est bien.

La diff�rence maintenant entre Linux, Windows et certains Unix, c'est quand 
tu fais un bind sp�cifique sur port qui a d�j� un bind g�n�ral.
Genre, mon programme "bofklet" �coute le port 1234 et fait naturellement un 
bind *.1234.
Un utilisateur mal intentionn� lance netcat -l -p1234 -s10.11.12.13 pour se 
mettre � l'�coute sur 10.11.12.13.1234.
Sur Linux, il se fait jeter avec "address already in use".
Sur Windows NT (j'ai pas essay� 2000), AIX et plein d'autres, le netcat est 
� l'�coute ET PRIORITAIRE ! La prochaine connexion sur le port 1234 de 
cette machine sera sur le netcat !! Alors, imaginez un programme qui relaye 
la connexion au port localhost.1234 mais sauve au passage les donn�es...

Bien s�r, un utilisateur ne peut "rebinder" que les ports au-del� de 1024 
sans les droits root mais bon, c'est quand m�me bon � savoir... Pensez 
aussi aux risques pour un firewall qui laisse passer un protocole 
applicatif qui peut se faire rediriger innocemment sur le port telnet... 
(nc -l ne prendra que la 1e connexion, les autres iront normalement. 
Pratique...)

Eric.


[ [EMAIL PROTECTED] and [EMAIL PROTECTED] in ONE :)         ]
[ To subscribe or unsubscribe, go to http://linuxbe.org/ml.php     ]
[ http://LinuxBe.org - http://OpenBe.net - [EMAIL PROTECTED]  ]

Répondre à