Auteur Sujet: Linux : TCPping - faire un ping TCP quand l'ICMP est bloqué  (Lu 2639 fois)

0 Membres et 1 Invité sur ce sujet

vivien

  • Administrateur
  • *
  • Messages: 6 937
    • Twitter LaFibre.info
TCPping un outil pour faire des ping via TCP quand ICMP ne répond pas

Il n'est pas possible de pinger certaines LiveBox d'Orange, NeufBox de SFR et Bbox de Bouygues Telecom.

Quelle solution ?
=> TCPping vers un port TCP où les box répondent systématiquement : le port TCP 51005 (même si fermé)




Installation TCPping version 1.8 :

Sous linux (Ubuntu / Debian), exécuter la ligne suivante dans un terminal (si vous n'êtes pas root, votre mot de passe sera demandé) :
sudo wget -O /usr/bin/tcpping http://lafibre.info/images/tcpping/tcpping ; sudo chmod +x /usr/bin/tcpping ; sudo aptitude -y install bc tcptraceroute



Aide :

Usage: tcpping [-d] [-c] [-C] [-w sec] [-q num] [-x count] ipaddress [port]

        -d   print timestamp before every result
        -c   print a columned result line
        -C   print in the same format as fping's -C option
        -w   wait time in seconds (defaults to 3)
        -r   repeat every n seconds (defaults to 1)
        -x   repeat n times (defaults to unlimited)


See also: man tcptraceroute

vivien

  • Administrateur
  • *
  • Messages: 6 937
    • Twitter LaFibre.info
TCPping - faire un ping TCP quand l'ICMP est bloqué
« Réponse #1 le: 15 mai 2011 à 12:37:13 »
Exemple de TCPping vers une livebox (port TCP 51005) :

$ tcpping -r 0.2 -x 20 90.61.117.2 51005
seq 0: tcp response from AAubervilliers-752-1-30-2.w90-61.abo.wanadoo.fr (90.61.117.2) [closed]  3.759 ms
seq 1: tcp response from AAubervilliers-752-1-30-2.w90-61.abo.wanadoo.fr (90.61.117.2) [closed]  3.706 ms
seq 2: tcp response from AAubervilliers-752-1-30-2.w90-61.abo.wanadoo.fr (90.61.117.2) [closed]  3.761 ms
seq 3: tcp response from AAubervilliers-752-1-30-2.w90-61.abo.wanadoo.fr (90.61.117.2) [closed]  3.563 ms
seq 4: tcp response from AAubervilliers-752-1-30-2.w90-61.abo.wanadoo.fr (90.61.117.2) [closed]  3.415 ms
seq 5: tcp response from AAubervilliers-752-1-30-2.w90-61.abo.wanadoo.fr (90.61.117.2) [closed]  3.375 ms
seq 6: tcp response from AAubervilliers-752-1-30-2.w90-61.abo.wanadoo.fr (90.61.117.2) [closed]  3.355 ms
seq 7: tcp response from AAubervilliers-752-1-30-2.w90-61.abo.wanadoo.fr (90.61.117.2) [closed]  3.515 ms
seq 8: tcp response from AAubervilliers-752-1-30-2.w90-61.abo.wanadoo.fr (90.61.117.2) [closed]  3.343 ms
seq 9: tcp response from AAubervilliers-752-1-30-2.w90-61.abo.wanadoo.fr (90.61.117.2) [closed]  3.512 ms
seq 10: tcp response from AAubervilliers-752-1-30-2.w90-61.abo.wanadoo.fr (90.61.117.2) [closed]  3.292 ms
seq 11: tcp response from AAubervilliers-752-1-30-2.w90-61.abo.wanadoo.fr (90.61.117.2) [closed]  3.425 ms
seq 12: tcp response from AAubervilliers-752-1-30-2.w90-61.abo.wanadoo.fr (90.61.117.2) [closed]  3.576 ms
seq 13: tcp response from AAubervilliers-752-1-30-2.w90-61.abo.wanadoo.fr (90.61.117.2) [closed]  3.473 ms
seq 14: tcp response from AAubervilliers-752-1-30-2.w90-61.abo.wanadoo.fr (90.61.117.2) [closed]  3.747 ms
seq 15: tcp response from AAubervilliers-752-1-30-2.w90-61.abo.wanadoo.fr (90.61.117.2) [closed]  3.492 ms
seq 16: tcp response from AAubervilliers-752-1-30-2.w90-61.abo.wanadoo.fr (90.61.117.2) [closed]  3.358 ms
seq 17: tcp response from AAubervilliers-752-1-30-2.w90-61.abo.wanadoo.fr (90.61.117.2) [closed]  3.600 ms
seq 18: tcp response from AAubervilliers-752-1-30-2.w90-61.abo.wanadoo.fr (90.61.117.2) [closed]  3.448 ms
seq 19: tcp response from AAubervilliers-752-1-30-2.w90-61.abo.wanadoo.fr (90.61.117.2) [closed]  3.379 ms



Exemple de TCPping vers une Bbox  (port TCP 51005) ne répondant pas au ping ICMP :

$ tcpping -r 0.2 -x 20 88.26.54.2 51005
seq 0: tcp response from 88.26.54.2 [open]  29.810 ms
seq 1: tcp response from 88.26.54.2 [open]  28.940 ms
seq 2: tcp response from 88.26.54.2 [open]  28.155 ms
seq 3: tcp response from 88.26.54.2 [open]  29.297 ms
seq 4: tcp response from 88.26.54.2 [open]  29.476 ms
seq 5: tcp response from 88.26.54.2 [open]  27.494 ms
seq 6: tcp response from 88.26.54.2 [open]  29.160 ms
seq 7: tcp response from 88.26.54.2 [open]  28.261 ms
seq 8: tcp response from 88.26.54.2 [open]  28.321 ms
seq 9: tcp response from 88.26.54.2 [open]  29.009 ms
seq 10: tcp response from 88.26.54.2 [open]  29.095 ms
seq 11: tcp response from 88.26.54.2 [open]  29.861 ms
seq 12: tcp response from 88.26.54.2 [open]  29.041 ms
seq 13: tcp response from 88.26.54.2 [open]  29.389 ms
seq 14: tcp response from 88.26.54.2 [open]  27.705 ms
seq 15: tcp response from 88.26.54.2 [open]  27.937 ms
seq 16: tcp response from 88.26.54.2 [open]  28.435 ms
seq 17: tcp response from 88.26.54.2 [open]  28.721 ms
seq 18: tcp response from 88.26.54.2 [open]  28.628 ms
seq 19: tcp response from 88.26.54.2 [open]  28.886 ms



Exemple d'absence de réponse :

$ tcpping -r 0.2 -x 20 89.93.19.5 51005
seq 0: no response (timeout)
seq 1: no response (timeout)
seq 2: no response (timeout)
seq 3: no response (timeout)
seq 4: no response (timeout)
seq 5: no response (timeout)
seq 6: no response (timeout)
seq 7: no response (timeout)
seq 8: no response (timeout)
seq 9: no response (timeout)
seq 10: no response (timeout)
seq 11: no response (timeout)
seq 12: no response (timeout)
seq 13: no response (timeout)
seq 14: no response (timeout)
seq 15: no response (timeout)
seq 16: no response (timeout)
seq 17: no response (timeout)
seq 18: no response (timeout)
seq 19: no response (timeout)

vivien

  • Administrateur
  • *
  • Messages: 6 937
    • Twitter LaFibre.info
TCPping - faire un ping TCP quand l'ICMP est bloqué
« Réponse #2 le: 15 mai 2011 à 12:42:46 »
Installation d'autres version de TCPping
Exécuter la ligne dans un terminal (si vous n'êtes pas root, votre mot de passe sera demandé)

version 1.8 :
sudo wget -O /usr/bin/tcpping http://lafibre.info/images/tcpping/tcpping ; sudo chmod +x /usr/bin/tcpping ; sudo aptitude -y install tcptraceroute
Merci à Yann (pseudo Gilum sur lafibre.info) pour la version 1.8 !

version 1.7 :
sudo wget -O /usr/bin/tcpping http://lafibre.info/images/tcpping/tcpping1.7 ; sudo chmod +x /usr/bin/tcpping ; sudo aptitude -y install tcptraceroute

version 1.6 :
sudo wget -O /usr/bin/tcpping http://lafibre.info/images/tcpping/tcpping1.6 ; sudo chmod +x /usr/bin/tcpping ; sudo aptitude -y install tcptraceroute


Comportement en absence de réponse avec l'option -C (pour SmokePing) :
La version 1.7 a un comportement anormal (réponse 255 en cas d'absence de réponse).

version 1.8 :
$ tcpping -C -x 5 88.26.54.2 51005
88.26.54.2 : - - - - -

version 1.7 :
$ tcpping -C -x 5 88.26.54.2 51005
88.26.54.2 : 255 255 255 255 255

version 1.6 :
$ tcpping -C -x 5 88.26.54.2 51005
88.26.54.2 : - - - - -


Comportement quand l'hôte répond avec l'option -C (pour SmokePing) :
La version 1.6 a un comportement anormal.

version 1.8 :
$ tcpping -C -x 5 lafibre.info
lafibre.info : 27.973 27.995 28.015 27.904 27.641

version 1.7 :
$ tcpping -C -x 5 lafibre.info
lafibre.info : 27.973 27.995 28.015 27.904 27.641

version 1.6 :
$ tcpping -C -x 5 lafibre.info
lafibre.info : - - - - -

vivien

  • Administrateur
  • *
  • Messages: 6 937
    • Twitter LaFibre.info
TCPping - faire un ping TCP quand l'ICMP est bloqué
« Réponse #3 le: 15 mai 2011 à 12:47:29 »
TCPping est utilisable avec SmokePing :

Exemple pour faire un ping TCP sur le port 80 de n'importe quel site web :

++ lafibre_80
probe = TCPPing
menu = lafibre.info Port80
title = lafibre.info Port80 (Azylog) AS41405
host = 195.200.217.68
port = 80


N'oubliez pas de définir la "probe" TCPPing :

+TCPPing
binary = /usr/bin/tcpping
forks = 1


En cas de nombreux TCPping a effectuer, il est nécessaire de configurer plusieurs probe et de réparti les différents hôte a pinger vers les différentes probes TCPping :

+TCPPing
binary = /usr/bin/tcpping
forks = 20
offset = 20%

#+TCPPing2
#binary = /usr/bin/tcpping
#forks = 6
#offset = 34%

#+TCPPing3
#binary = /usr/bin/tcpping
#forks = 6
#offset = 51%

#+TCPPing4
#binary = /usr/bin/tcpping
#forks = 9
#offset = 68%

#+TCPPing5
#binary = /usr/bin/tcpping
#forks = 4
#offset = 85%

Pour les TCPPing2 à 5 il est nécessaire de faire ces modifications dans SMokePing :
# cd /usr/share/smokeping/lib/Smokeping/probes
# cp TCPPing.pm TCPPing2.pm
# cp TCPPing.pm TCPPing3.pm
# cp TCPPing.pm TCPPing4.pm
# cp TCPPing.pm TCPPing5.pm


Il est nécessaire de modifier le première ligne de chaque fichier afin que TCPPing reflète le nom :
package Smokeping::probes::TCPPing2;

corrector

  • Free adsl
  • *
  • Messages: 2 513
  • sur Paris
Linux : TCPping - faire un ping TCP quand l'ICMP est bloqué
« Réponse #4 le: 15 mai 2011 à 23:00:47 »
=> TCPping vers un port TCP où les box répondent systématiquement : le port TCP 51005 (même si fermé)
Tu as testé quelles box?

Ça intéresse quelqu'un de rassembler les infos sur le comportement des box depuis l'extérieur?

vivien

  • Administrateur
  • *
  • Messages: 6 937
    • Twitter LaFibre.info
Linux : TCPping - faire un ping TCP quand l'ICMP est bloqué
« Réponse #5 le: 16 mai 2011 à 07:25:19 »
J'ai testé les Livebox Orange et les Bbox Bouygues Telecom qui ne répondent pas au ping ICMP.

Les autres box répondent au ping ICMP normalement mais si tu veut je testerais le port 51005.
Le port 51005 c'est le port pour l'administration des Box en TR-69.

J'ai fait une recherche sur Google TR-69 51005 et je suis tombé un ping TCP d'une NeufBox sur... lafibre.info donc je rajoute les NeufBox à la liste.

corrector

  • Free adsl
  • *
  • Messages: 2 513
  • sur Paris
TCP/51005 sur les box
« Réponse #6 le: 16 mai 2011 à 17:15:06 »
J'ai testé les Livebox Orange et les Bbox Bouygues Telecom qui ne répondent pas au ping ICMP.

Les autres box répondent au ping ICMP normalement mais si tu veut je testerais le port 51005.
Le port 51005 c'est le port pour l'administration des Box en TR-69.

Ce qui veux donc dire que le port TCP/51005 est monopolisé par la box et ne peut plus être utilisé par l'abonné?

Sur Freebox, aucun port ni aucun protocole n'est pris par la box (jusqu'à preuve du contraire).

menet

  • Bbox fibre
  • *
  • Messages: 316
  • HFC 30 Mb/s Champs sur Marne (Bois de Grâce) 77
Linux : TCPping - faire un ping TCP quand l'ICMP est bloqué
« Réponse #7 le: 16 mai 2011 à 18:46:38 »
Existe t'il une version Windows de l'outil TCPping ?

L'avez-vous testé ?

Je n'ai pas cherché sur le WEB...  :-[

Merci pour les infos  ;)
Forfait Ideo Bbox "Fibre" de Bouygues à Champs/Marne (Bois de Grâce) 77 sur réseau câblé NumeriCable

corrector

  • Free adsl
  • *
  • Messages: 2 513
  • sur Paris
Linux : TCPping - faire un ping TCP quand l'ICMP est bloqué
« Réponse #8 le: 16 mai 2011 à 19:58:52 »
Existe t'il une version Windows de l'outil TCPping ?

Ça devrait marcher sur tout système qui comporte :
  • /bin/sh
  • /usr/bin/perl
  • make, fileutils/textutils/shellutils
  • un compilateur C
  • éventuellement man, etags, m4, automake...
Donc avec Cygwin, probablement pas de problème!

vivien

  • Administrateur
  • *
  • Messages: 6 937
    • Twitter LaFibre.info
Linux : TCPping - faire un ping TCP quand l'ICMP est bloqué
« Réponse #9 le: 16 mai 2011 à 23:09:32 »
Menet, si tu ne souhaite pas faire une compilation d'un outil linux sous Windows (bien plus difficile que de compiler un outil Linux sous Linux), tu peut utiliser Hping :
=> http://lafibre.info/tutoriels/hping

Enjoy !

corrector

  • Free adsl
  • *
  • Messages: 2 513
  • sur Paris
Linux : TCPping - faire un ping TCP quand l'ICMP est bloqué
« Réponse #10 le: 17 mai 2011 à 00:14:11 »
Il y a aussi nmap qui est déjà compilé pour Windows et qui peut scanner n'importe quel port ou plage de ports TCP (SYN, ACK...), UDP ou protocole IP en IPv4 ou en IPv6.

vivien

  • Administrateur
  • *
  • Messages: 6 937
    • Twitter LaFibre.info
TCP/51005 sur les box
« Réponse #11 le: 23 mai 2011 à 22:44:59 »
Ce qui veux donc dire que le port TCP/51005 est monopolisé par la box et ne peut plus être utilisé par l'abonné?

Sur Freebox, aucun port ni aucun protocole n'est pris par la box (jusqu'à preuve du contraire).

Voici le message que j'ai sur la NeufBox de SFR quand je tente d'ouvrir un port réservé :

Vous ne pouvez pas utiliser les ports suivants :

    1287/tcp
    1288/tcp
    2427/udp
    53456-63546/udp
    1290-1299/tcp
    5060/udp
    35500-35599/udp
    68/udp