Sunday, October 6, 2019

Fedora 30 : The paris-traceroute tool.

Today I tested two Linux tools named:paris-traceroute. This tool can be install with dnf tool. This tool named paris-traceroute was implemented by Xavier Cuvellier. Debugged and enhanced by Brice Augustin. The techniques invented by the authors of Paris-traceroute to enumerate the paths of ECMP flow-based load balancing. I used the address to test this tool.
[root@desk mythcat]# paris-traceroute -p icmp
[root@desk mythcat]# paris-traceroute -i
[root@desk mythcat]# paris-traceroute -l
Using the verbose mode the tool will print debug messages:
[root@desk mythcat]# paris-traceroute -v
[DEBUG](, 222)dst_addr =
[DEBUG](, 340)protocol     = udp
[DEBUG](, 341)src_add      = 
[DEBUG](, 342)dst_addr     =
[DEBUG](, 343)ttl_initial  = 1
[DEBUG](, 344)ttl_max      = 30
[DEBUG](, 345)tos          = 0
[DEBUG](, 346)probe_length = 0
[DEBUG](, 347)algo         = hopbyhop
[DEBUG](, 348)timeout      = 5000
[DEBUG](, 349)delay        = 50
[DEBUG](, 350)max_try      = 3
[DEBUG](, 351)max_missing  = 3
[DEBUG](, 352)id_initial   = 1
[DEBUG](, 353)resolve      = true
[DEBUG](, 354)ipid         = false
[DEBUG](, 246)p_proto = 1
[INFO](, 216)waiting for the first packet..

[INFO](, 48)HopByHop algo
[INFO](, 183)Send probe, ttl=1, id=1
[DEBUG](, 247)==> UDP Probe :
[DEBUG](, 346)IP4 header :
[DEBUG](, 347)tos                = 0
[DEBUG](, 348)total_length       = 30
[DEBUG](, 349)ttl                = 1
[DEBUG](, 350)protocol           = 17
[DEBUG](, 353)source_address     = 
[DEBUG](, 355)dest_address       =
[DEBUG](, 143)UDP header :
[DEBUG](, 144)source_port        = 
[DEBUG](, 145)dest_port          = 
[DEBUG](, 146)datagram_length    = 10
[DEBUG](, 147)checksum           = 12584
[DEBUG](, 250)Data :
[DEBUG]0x01 0x00 
[DEBUG]0x45 0x00 0x00 0x1e 0x00 0x01 0x00 0x00 
[DEBUG]0x01 0x11 0x00 0x00 0xc0 0xa8 0x00 0x8f 
[DEBUG]0x08 0x08 0x08 0x08 0x82 0xb0 0x82 0xb1 
[DEBUG]0x00 0x0a 0x28 0x31 0x01 0x00 
[INFO](, 276)Captured first packet!

[DEBUG](, 280)Incoming message :
[DEBUG](, 281)parsing.. ef72baa0 58
[DEBUG]0x45 0xc0 0x00 0x3a 0x5c 0xcd 0x00 0x00 
[DEBUG]0x40 0x01 0x9b 0x55 0xc0 0xa8 0x00 0x01 
[DEBUG]0xc0 0xa8 0x00 0x8f 0x0b 0x00 0xc6 0x62 
[DEBUG]0x00 0x00 0x00 0x00 0x45 0x00 0x00 0x1e 
[DEBUG]0x00 0x01 0x00 0x00 0x01 0x11 0xe8 0x87 
[DEBUG]0xc0 0xa8 0x00 0x8f 0x08 0x08 0x08 0x08 
[DEBUG]0x82 0xb0 0x82 0xb1 0x00 0x0a 0x28 0x31 
[DEBUG]0x01 0x00 
[DEBUG](, 285)Incoming message parsed :
[DEBUG](, 346)IP4 header :
[DEBUG](, 347)tos                = 192
[DEBUG](, 348)total_length       = 58
[DEBUG](, 349)ttl                = 64
[DEBUG](, 350)protocol           = 1
[DEBUG](, 353)source_address     = 
You can see more about this tool here. Another tool is dublin-traceroute works like paris-traceroute but introduces a new technique for NAT detection ( this is not in the Fedora repo).