RE: [linux-neuchatel] [PHP] Socket SOCK_RAWbloqué sous Linux ?

Christian Wagner wchristian at gmx.ch
Sat Mar 3 20:50:17 CET 2007


Oui mais ça ne donne pas la possibilité de réaliser des tests de latences
efficaces.

J'aurais réellement voulu réaliser un vrai pur ping :)

-----Message d'origine-----
De : linux-neuchatel-bounces at lists.alphanet.ch
[mailto:linux-neuchatel-bounces at lists.alphanet.ch] De la part de
Jean-Frederic
Envoyé : samedi, 3. mars 2007 18:49
 : Activités Linux à Neuchâtel et environs
Objet : RE: [linux-neuchatel] [PHP] Socket SOCK_RAWbloqué sous Linux ?

On Sat, 2007-03-03 at 18:01 +0100, Christian Wagner wrote:
> Donc si je comprends bien y a aucunes solutions pour que je puisse
réaliser
> cela avec un simple utilisateur tout en réalisant quelque chose de tout
> intégré dans mon script PHP ?

Si facile:
+++
<?php
  // $service_port = getservbyname('ssh', 'tcp');
  // $address = gethostbyname('jfcpc');
  $service_port = getservbyname('echo', 'tcp');
  $address = gethostbyname('localhost');
  $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
  $result = socket_connect($socket, $address, $service_port);
  if ($result == false) {
    echo "socket_connect() failed.\nReason: ($result) " .
socket_strerror(socket_last_error($socket)) . "\n";
  } else {
    echo "OK.\n";
}
?>
+++
Il te reste a trouver un service qui devrait toujours fonctionner sur la
machine que tu veux tester. (ssh, http etc)

A+

Jean-Frederic

> 
> -----Message d'origine-----
> De : linux-neuchatel-bounces at lists.alphanet.ch
> [mailto:linux-neuchatel-bounces at lists.alphanet.ch] De la part de
> Jean-frederic Clere
> Envoyé : samedi, 3. mars 2007 10:24
> À : Activités Linux à Neuchâtel et environs
> Objet : Re: [linux-neuchatel] [PHP] Socket SOCK_RAW bloqué sous Linux ?
> 
> Marc SCHAEFER wrote:
> 
> >On Fri, Mar 02, 2007 at 06:45:39PM +0100, Christian Wagner wrote:
> >  
> >
> >>J’aimerais réaliser quelques statistiques à distance via un script PHP
et
> >>n’aimerait pas faire passer mes instructions par une commande system
pour
> >>faire ping. Hors pour réaliser cela je dois passer par la création d’un
> >>    
> >>
> >
> >C'est pourtant la solution la plus simple,
> >
> 
> Se connecter a un service comme echo (7/tcp par example) ou ssh (22/tcp) 
> me parait la bonne idee.
> 
> J'ai par example un projet qui utilise php dans une servlet et un 
> system() ferait un fork()+exec() ce qui serait un desastre vu les Gbytes 
> utilises par la JVM.
> 
> A+
> 
> Jean-Frederic
> 
> > car:
> >
> >schaefer at reliant:~$ ls -l `which ping`
> >-rwsr-xr-x 1 root root 30724 Nov 11  2005 /bin/ping
> >
> >  
> >
> >>socket avec un SOCK_RAW. 
> >>    
> >>
> >
> >Sous UNIX, ce genre de chose est réservé à l'administrateur.  Le bit 's'
> >(SUID) de la commande ping lui donne les droits root pendant son
> >exécution.
> >
> >  
> >
> >>Ca fait plus d'une semaine que je recherche une solution mais toujours
> rien
> >>malheureusement.
> >>    
> >>
> >
> >  
> >
> >>Le user qui se charge de apache n'est pas root si jamais.
> >>    
> >>
> >
> >C'est mieux.
> >
> >_______________________________________________
> >linux-neuchatel mailing list
> >linux-neuchatel at lists.alphanet.ch
> >http://lists.alphanet.ch/mailman/listinfo/linux-neuchatel
> >
> >  
> >
> 
> _______________________________________________
> linux-neuchatel mailing list
> linux-neuchatel at lists.alphanet.ch
> http://lists.alphanet.ch/mailman/listinfo/linux-neuchatel
> 
> _______________________________________________
> linux-neuchatel mailing list
> linux-neuchatel at lists.alphanet.ch
> http://lists.alphanet.ch/mailman/listinfo/linux-neuchatel

_______________________________________________
linux-neuchatel mailing list
linux-neuchatel at lists.alphanet.ch
http://lists.alphanet.ch/mailman/listinfo/linux-neuchatel





More information about the linux-neuchatel mailing list