[HN Gopher] How did I get here?
       ___________________________________________________________________
        
       How did I get here?
        
       Author : zachlatta
       Score  : 314 points
       Date   : 2025-11-07 20:01 UTC (1 days ago)
        
 (HTM) web link (how-did-i-get-here.net)
 (TXT) w3m dump (how-did-i-get-here.net)
        
       | ChrisArchitect wrote:
       | Previous Show HN: from the dev in 2023:
       | 
       | https://news.ycombinator.com/item?id=38531604
        
       | paulddraper wrote:
       | Doesn't seem to be working?
        
         | ninju wrote:
         | HN Hug of death ?
        
           | archmaster wrote:
           | It's like when your uncle squeezes you at Christmas. You're
           | glad to see him again, but it's just a liiiitttleee... too...
           | much... for... your... lungssss,.,.,.,
        
       | arionmiles wrote:
       | I thought this was going to play a Talking Heads song
        
         | fredland wrote:
         | letting the days go by
        
         | archmaster wrote:
         | check the html :)
        
           | arionmiles wrote:
           | Nice!
        
       | Razengan wrote:
       | I thought this was going to be a review of life choices
        
         | einpoklum wrote:
         | The review of life choices happens in our heads when we click
         | this link on the main HN page.
         | 
         | (sigh) I'm just thinking those thoughts right now.
        
       | aidenn0 wrote:
       | And if you haven't ever seen it before, run
       | tracepath -m60 bad.horse
       | 
       | and also                 openssl s_client -connect
       | signed.bad.horse:443 -servername signed.bad.horse
        
         | fragmede wrote:
         | also                   ssh funky.nondeterministic.computer
        
           | avipars wrote:
           | noice, got rick rolled
        
         | lenova wrote:
         | Nice! Dr. Horrible would be proud of this geeky tribute:
         | > tracepath -m60 bad.horse       [...]       16:  bad.horse
         | 81.233ms asymm 10       19:  he.rides.across.the.nation
         | 85.365ms asymm 11       20:  he.got.the.application
         | 96.067ms asymm 13       23:  it.needs.evaluation
         | 112.377ms asymm 15       24:  a.heinous.crime
         | 114.826ms asymm 17       25:  a.show.of.force
         | 120.842ms asymm 18       26:  bad.horse
         | 133.089ms asymm 20
        
         | avipars wrote:
         | also
         | 
         | ssh watch.ascii.theater
        
       | bongodongobob wrote:
       | Doesn't work. Traceroute showed only 1 hop.
        
         | metabagel wrote:
         | Read the green text
        
         | decafbad wrote:
         | Mine too. Maybe it's CGNAT.
        
       | F00Fbug wrote:
       | This is not my beautiful website.
        
         | reaperducer wrote:
         | This is not my beautiful home-page.
        
           | googlryas wrote:
           | There are packets at the bottom of the network stack
        
             | maybelsyrup wrote:
             | And you may find yourself
             | 
             | Behind the keyboard of a large PC
        
               | fragmede wrote:
               | Typing in code you don't understand
        
               | tres wrote:
               | And you may find your site in beautiful cloud, with a
               | beautiful bounce rate.
        
               | chickensong wrote:
               | And you may ask yourself
               | 
               | Well, how did _ip route_ here?
        
               | helix278 wrote:
               | Letting the bytes go by
        
       | andrewshadura wrote:
       | Same as it ever was.
        
       | FredPret wrote:
       | > "You may have noticed that the traceroute progressively loads
       | in lines above the bottom line. Web pages can only load forward.
       | Since I didn't want to use any JavaScript, I did the hackiest
       | thing possible: every time I update the traceroute display, I
       | embed a CSS block that hides the previous iteration! Since
       | browsers render CSS as the page is loading, this made it look
       | like the traceroute was being edited over time."
       | 
       | Love this
        
         | tshaddox wrote:
         | You can also do out-of-order HTML streaming without JavaScript
         | using declarative shadow DOM. For example:
         | 
         | https://lamplightdev.com/blog/2024/01/10/streaming-html-out-...
        
           | archmaster wrote:
           | oh yeah i saw this! newer than the website though :)
        
       | advisedwang wrote:
       | > This reverse traceroute is still helpful. The paths will be
       | roughly the same, likely differing only in terms of which
       | specific routers see your packet.
       | 
       | This is categorically incorrect. While the AS path is often the
       | same, the actual peering points are almost always quite
       | different. Most ASes use hot-potato routing - getting packets to
       | the next AS at the closest peering point to the source of the
       | traffic. (And even if cold-potato routing is used, that's still
       | asymmetric). In addition if there are two options with the same
       | AS-path-length hot-potato routing can lead to different AS paths.
       | This can happen if there's two mutual transit providers between
       | source and destination and various other situations.
       | 
       | (EDIT: fixed hot/cold mixup)
        
         | archmaster wrote:
         | Anecdotally, I've run a bunch of traceroutes and reverse
         | traceroutes to different locations and they tend to follow the
         | same AS paths -- although sometimes the traceroute will surface
         | more routing through your ISP (especially from college
         | networks). In general you are correct, though, and I would love
         | to explain more about hot-potato vs. cold-potato (and other
         | interesting routing decisions) in the future. Either way, the
         | results the reverse traceroute provides are good enough for the
         | purposes of explaining the internet, IMO!
        
         | immibis wrote:
         | FYI what you described is hot-potato routing: each AS gets rid
         | of it as soon as possible.
         | 
         | You may think this is unfair, and yes, it is, but it's also
         | quite logical when you consider you don't know where the packet
         | is going in the destination AS. If you have a network spanning
         | Berlin and Hamburg and the packet is going to a different
         | network that also spans Berlin and Hamburg, and you
         | interconnect at both points, and you don't know which city it's
         | actually going to, handing it off at the closest interconnect
         | doesn't risk round-tripping it for no good reason.
        
           | advisedwang wrote:
           | ha yes thank you. I worked for a AS that mostly did cold-
           | potato routing so grabbed the wrong term trying to describe
           | the common case.
        
           | toast0 wrote:
           | > You may think this is unfair, and yes, it is
           | 
           | I'm interested in your definition of fairness that makes hot
           | potato routing unfair.
           | 
           | In my mind, hot potato is fair, every packet gets treated the
           | same, and (mostly) every provider does the same thing.
           | 
           | > it's also quite logical when you consider you don't know
           | where the packet is going in the destination AS. If you have
           | a network spanning Berlin and Hamburg and the packet is going
           | to a different network that also spans Berlin and Hamburg,
           | and you interconnect at both points, and you don't know which
           | city it's actually going to, handing it off at the closest
           | interconnect doesn't risk round-tripping it for no good
           | reason.
           | 
           | There are ways to help with this, BGP MED (multi-exit
           | discriminator) or path extention can help guide towards the
           | best place to deliver traffic. But especially for last mile
           | traffic, you do want it on the destination network sooner
           | than later; if traffic is genetated in Berlin, and the
           | ultimate destination is Hannover and the Hannover endpoint is
           | connected to both Berlin and Hamburg on the destination
           | network, delivering at Berlin provides a better experience
           | than delivering to Hamburg, even though Hamburg is closer to
           | Hannover, because the transit to Hamburg was unnecessary. And
           | if the destination is only connected to Hamburg, delivering
           | in Berlin works about the same as delivering in Hamburg
           | (depending on capacity and use from Berlin to Hamburg on both
           | networks).
           | 
           | There's certainly situations where having options would be
           | nice, but having options makes things complex, so typical
           | users can't really influence routing. If you have v4 and v6,
           | you may find that routing differs between the two and that
           | does give you a bit of a choice.
        
       | mjmas wrote:
       | > Seems like this hit the Hacker News front page again, and the
       | server's having some trouble pinging all of you. Feel free to
       | read the article, but if you want to see your tracereoute you
       | might need to bookmark and check back tomorrow :)
       | 
       | > - Lexi, Nov 7, 3:16 PM PST
        
         | archmaster wrote:
         | somewhat better now! added a bit more concurrency. lesson
         | learned: use tokio next time
        
       | o11c wrote:
       | Hmm, after several seconds it gave up and displayed raw markup
       | ... I'm not sure _exactly_ why in this case, but ...
       | 
       | One of the major infelicities of the web is that CSS is specified
       | to ignore truncation, and there is no way to fix this. Now think
       | about what happens if something like `display: inline-block` gets
       | truncated before the `-`.
        
       | bagels wrote:
       | I tried it out, and found out that my primary internet connection
       | had failed, and I was on the backup due to a power outage earlier
       | today. Useful!
        
         | mr_toad wrote:
         | The route less travelled.
        
       | cat-whisperer wrote:
       | it's not loading for me. :'(
        
         | IncreasePosts wrote:
         | Now you must visit how-didnt-i-get-there.net
        
       | msephton wrote:
       | I see the trace route, but none is glowing green
        
       | chrismorgan wrote:
       | The page _started out_ working without JavaScript as it says, but
       | then the replacement HTML was encoded as text:
       | <noscript>         <style>#strYQt8 { display: none; }</style>
       | &lt;div id=&#39;stro29i&#39;&gt;           ...
       | 
       | (Edit: filed https://github.com/hackclub/how-did-i-get-
       | here/pull/3.)
        
       | aiiotnoodle wrote:
       | Sometimes my 'You are here' top part reads,                 Host
       | ASN     Network                 Region
       | 123-456-789-101.static.kc.net.uk AS19905 UltraDDoS Protect
       | Global
       | 
       | And other times it reads,                 Host
       | ASN     Network                 Region
       | 123-456-789-101.static.kc.net.uk AS12390 Kingston Communications
       | Europe
       | 
       | What's going on here? I found the provider but what's with the
       | 50/50 swap? It seems to randomly alternate between the two.
        
       | lloydatkinson wrote:
       | Hetzner, yuck.
        
         | immibis wrote:
         | Does it really exist if it's not a pile of AWS Lambdas?
        
           | lloydatkinson wrote:
           | Lambda is even more yuck.
        
         | loloquwowndueo wrote:
         | Why is Hetzner yuck?
        
       | donatj wrote:
       | I have old components on my personal site that used to do a
       | similar trick for streaming data without JavaScript but between
       | nginx buffering and cloudflare I have not been able to sort out
       | getting it to actually work these days. Worked fine on Apache in
       | 2005 lol
        
       | reisse wrote:
       | So they blocked me by IP (I guess) and I didn't get there! Nice.
        
         | captainkrtek wrote:
         | Or ICMP is blocked on your network
        
       | basilikum wrote:
       | 502
        
         | archmaster wrote:
         | check again!
        
       | PeterStuer wrote:
       | I can't help it. The Once in a Lifetime link is tattooed on my
       | brainstem.
       | 
       | I read this title and that opening bass line just starts flowing.
        
         | kgwxd wrote:
         | I instantly started having an existential crisis.
        
       ___________________________________________________________________
       (page generated 2025-11-08 23:01 UTC)