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

0 Membres et 1 Invité sur ce sujet

vivien

  • Administrateur
  • *
  • Messages: 47 083
    • 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 :

- Chez Orange, le port TCP 50805 répond systématiquement pour TR-069
- Chez Bouygues Telecom, le port TCP 51005 répond systématiquement pour TR-069
- Chez Free, le port 113 (ident) apparaît souvent fermé depuis l'extérieur, mais ce n'est pas systématique.
- Chez SFR, il n'y a pas de port TCP ouvert de l'extérieur, mais la Neufbox répond souvent au ping ICMP.




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 https://lafibre.info/images/tcpping/tcpping ; sudo chmod +x /usr/bin/tcpping ; sudo apt -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
« Modifié: 17 décembre 2015 à 20:04:38 par Marin »

vivien

  • Administrateur
  • *
  • Messages: 47 083
    • 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: 47 083
    • 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 https://lafibre.info/images/tcpping/tcpping ; sudo chmod +x /usr/bin/tcpping ; sudo apt -y install tcptraceroute
Merci à Yann (pseudo Gilum sur lafibre.info) pour la version 1.8 !

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

version 1.6 :
sudo wget -O /usr/bin/tcpping https://lafibre.info/images/tcpping/tcpping1.6 ; sudo chmod +x /usr/bin/tcpping ; sudo apt -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: 47 083
    • 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

  • Invité
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: 47 083
    • 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

  • Invité
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

  • Abonné RED by SFR THD (câble)
  • *
  • Messages: 764
  • FTTLA +200 Mb/s (Bois de Grâce) Champs/Marne 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  ;)

corrector

  • Invité
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: 47 083
    • 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 :
=> https://lafibre.info/tutoriels/hping

Enjoy !

corrector

  • Invité
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: 47 083
    • 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