1
u_short port = 32768 + 666;

I don't know why they added 32768 with 666. Is there any meaning? where does 666 comes from?

The range of the destination port is from 33434 to 33534. Why they haven't directly specify as 33434 (32768 + 666 = 33434)

Kara
  • 6,115
  • 16
  • 50
  • 57
pretty
  • 67
  • 2
  • 10

1 Answers1

0

"Random Factoid: The value of 33434 as the starting port for Traceroute comes from adding the numbers 32768 (2^15, or half of the maximum value of the UDP port range) and 666 (the mark of Satan)."

Source: http://cluepon.net/ras/traceroute.pdf

Dave Ross
  • 3,313
  • 1
  • 24
  • 21
  • But how can i accept this. There might be some historical reason behind that, i think so. Why van jacobson use 666? Will you answer this please. In commeting statement of source code they specified as, u_short port = 32768 + 666; /* start udp dest port # for probe packets */ . So the 666 is for probe packets but i don't know what it really indicates – pretty Jun 18 '16 at 10:37
  • @pretty The exact choice of the port doesn't really matter. The traceroute packets need to be sent to distinct ports, and the easiest way to do that is to start somewhere (33434 for the first packet) and keep incrementing (33435 for the second, etc.). The 32768 does have meaning (all port numbers between that and 65536 are intended for client use, so it's very unlikely that someone is waiting for traffic on that port; which is good for traceroute), but the 666 is just some number. TL;DR You have to start somewhere. –  Jun 20 '16 at 22:36