Engineer distributes resume via IPv6 traceroute
cv6.poinsignon.orgHere's what it looks like:
$ traceroute cv6.poinsignon.org
traceroute to cv6.poinsignon.org (2001:bc8:3eff:c0::ff), 30 hops max, 80 byte packets
1 gateway 0.795 ms 0.789 ms
[...]
8 hello (2001:bc8:3eff:c0::1) 1.431 ms 1.202 ms
9 My.name.is.Louis.Poinsignon (2001:bc8:3eff:c0::2) 1.649 ms 1.274 ms
10 I.am.a.network.and.systems.Engineer (2001:bc8:3eff:c0::3) 1.695 ms 2.090 ms
11 This.is.my.resume.over.traceroute (2001:bc8:3eff:c0::4) 1.698 ms 1.793 ms
12 o---Experience---o (2001:bc8:3eff:c0:ee::) 1.829 ms 2.052 ms
13 2018.Cloudflare.NetworkEngineer.SF (2001:bc8:3eff:c0:ee::cf3) 2.261 ms 2.155 ms
14 2017.Cloudflare.NetworkEngineer.London (2001:bc8:3eff:c0:ee::cf2) 2.293 ms 1.284 ms
15 2016.Cloudflare.NetworkEngineer.Intern.SF (2001:bc8:3eff:c0:ee::cf1) 1.136 ms 1.205 ms
16 2015.CEA.SoftwareEngineer.Intern.France (2001:bc8:3eff:c0:ee::cea) 1.204 ms 1.226 ms
17 o---Education---o (2001:bc8:3eff:c0:ed::) 1.360 ms 1.607 ms
18 2015-2016.DrexelUni.Exchange.CE.Philadelphia (2001:bc8:3eff:c0:ed::1) 1.237 ms 1.312 ms
19 2011-2016.UTT.Master.CE.France (2001:bc8:3eff:c0:ed::2) 1.492 ms 1.604 ms
20 o---Skills---o (2001:bc8:3eff:c0:51::) 1.565 ms 1.418 ms
21 C.Java.Python.Golang (2001:bc8:3eff:c0:51::1) 1.364 ms 1.536 ms
22 Net.Linux.Automation (2001:bc8:3eff:c0:51::2) 1.381 ms 1.266 ms
23 Statistics.Maths.Photoshop (2001:bc8:3eff:c0:51::3) 1.504 ms 1.431 ms
24 o---Various---o (2001:bc8:3eff:c0:7a::) 1.461 ms 1.519 ms
25 Swimming.and.karate (2001:bc8:3eff:c0:7a::1) 1.378 ms 1.473 ms
26 Piano (2001:bc8:3eff:c0:7a::2) 1.552 ms 1.683 ms
27 o---Contact---o (2001:bc8:3eff:c0:c0::) 1.551 ms 1.486 ms
28 mail.jobs.at.poinsignon.org (2001:bc8:3eff:c0:c0::1) 1.576 ms 1.473 ms> Cloudflare.NetworkEngineer
Ah, that explains a lot. Not that anyone else couldn't do such a thing, but I feel like even amongst more "hacker" types it takes a relatively specialized background to pull a trick like this (at least statistically; I'm sure there are outliers).
It’s because practical experience with technologies like BGP is difficult to acquire without sufficient capital to run a network. You can of course purchase a /24 and dabble (search HN for blog posts describing exactly that). And you can experiment with large deployments in simulators. But network optimization is inherently more of a practical pursuit than a theoretical one, so most broad and consistent learning opportunities are siloed to large organizations where you can accrue daily experience with the stack.
This is really unfortunate, and I mostly blame Cisco and Juniper. They suffocated an entire academic discipline with obfuscated terminology driven more by their business models than anything resembling the OSI model or open standards. That’s why WireGuard feels like such a breath of fresh air after 20 years of L2TP/IPSec.
I applaud companies like Cloudflare and Fly.io for their openness in sharing techniques and open sourcing so much of their code. It goes a long way toward lowering the barriers to self-teaching and experimenting with the latest networking software. And I’m sure HR is happy about the increasingly large applicant pool of qualified networking engineers – even if some hires do eventually leave by advertising their resume to anyone who sends them an IPv6 trace-route :)
I think consolidation has also lead to this knowledge/experience, at least among younger engineers, being siloed in larger companies rather than spread out among many smaller companies. I started in the industry when the Internet was still relatively new, and at that time most companies I worked with had their own ASN & address space and were running BGP, whereas nowadays most companies just use the cloud.
44Net and hamnet are also interesting to those with radio amateur licenses. Many folks run their own AS an BGP in that range.
Fun Fact ; I'm not sure if it was RIP or BGP, but a certain Cisco Founder stated that they wouldnt have come up with the routing protocol if it weren't for Hoffman and LSD.
I really have no idea what any of those acronyms mean.
The drug
RIP = Routing Information Protocol BGP = Border Gateway Protocol LSD = Lysergic Acid Diethylamide
Would love to read more about this.
> search HN for blog posts describing exactly that
Know any offhand? Search is a bit tough for a common number like 24. The concept sounds interesting
Oh wow you’re right - and neither “autonomous system” nor “AS” are much better keywords! I think this post from 2017 [0] is the one I’m remembering, but I’m pretty sure I saw another one more recently and now I can’t find it (edit: skitter found it! see sibling comment)
“BGP” is a signal-yielding search [1]. And any post from benjojo’s blog [2] is always a must-read.
[0] https://news.ycombinator.com/item?id=15727115
[1] https://hn.algolia.com/?dateRange=all&page=0&prefix=true&que...
Thanks!
A quick search turned up https://news.ycombinator.com/item?id=30178655
it's ipv6 so a /120 would do!
You can easily obtain a /44 and your own ASN as an individual, through various RIPE LIRs, no questions asked. If you're in the US, you'll have to procure an overseas VPS so you have a European presence.
Yesterday i was watching LSD documentary (https://www.netflix.com/title/80229847). They briefly stated that LSD usage in California was very likely to have accelerated invention of computers. It helped people with problem solving.
How is that relevant?
You can contribute to the Solana core tech team, with the incentive alignment of underlying token value as a partial backer!
I think they're doing some really cool stuff on the network optimization level. As an example, Solana recently implemented QUIC in its latest release: https://github.com/solana-labs/solana/projects/74
Are they still using that hand-wavy "cryptographic proof that a duration of time has passed"?
What we care about is getting all the nodes to agree on what order the transactions occurred (aka "Proof of History"). And Solana's goal is to reach that agreement quickly, that's why they call themselves the most performant blockchain.
So how does Solana introduce a concept of "time" without relying on a central authority?
Solana uses a "hash that runs over itself continuously with the previous output used as the next input". Performing a hash over and over again takes some time. Then, someone can quickly verify that this "time" has occurred. The verification of the hashes can be parallelized on a GPU, which makes the verification extremely quick.
https://medium.com/solana-labs/proof-of-history-a-clock-for-...
Do you mean Proof of History? The concept is made concrete in Solana, but actually any blockchain that hashes a set of transactions in each of its successive slots/blocks can be used to prove that time has passed.
You can verifiably be assured of a temporal ordering between transactions that were hashed in different slots because the output of a slot/block is hashed and used as an input for the next block/slot.
Solana claims to prove that a certain duration of time has passed, which is a different and much stronger claim than just temporal ordering. The details of their claims, last I heard (which was some talks in Berlin years ago) were extremely hand-wavy and apparently not well understood even by some people working on the project.
This is a very old and oft-repeated trick though.
https://github.com/blechschmidt/fakeroute
https://github.com/antifork/hopfake
https://github.com/jprenken/rickroute
https://github.com/sams-gleb/ipv4-traceroute-fake
https://github.com/job/ipv6-traceroute-faker
And so on…
I remember being a 13yo kid sitting on IRC doing exactly this for fun years ago back when IP addresses were cheap and easy to come by. But spoofing military IPs in the traceroute was more fun.
Believe it or not, you might have very specific interests :)
If a 13 year old was using irc regularly in 2022 I would be concerned for them. Not thata 13 year old shouldn't use irc but I would wonder how they found that destination, especially given the countless other sinks for internet denizens
Free software development and chat still largely happens over IRC: witness irc.gnome.org and libera chat.
As a 13 year old, if I had access to internet instead of buying Slackware floppies from local software "pirates" (they also had all the DOS stuff like Wordperfect and games), I'd probably be hanging around IRC.
I don't think there was much to be concerned about me back then.
I'm curious why you would be concerned. I've seen a good number of teenagers hanging around and playing with computers.
How would you spoof arbitrary IPs? IIUC it's poked at as the next hop...?
(Mhm, embarrassingly out of the loop)
I _think_ that if you know the real source and real destination of an ICMP message, you can just forge back a message with an arbitrary TTL exceeded message, from any "I'm IP address xxx" address. Those can come from a lot of rando IPs because the intent of them is just "at this hop, the TTL ran out", and the hops the original sender wouldn't know anyway. A lot of fake hops would be essentially impossible if you examined the real BGP routes and stuff, but verifying that in real time sounds hard enough that I bet nobody bothers.
I'd have to do a lot more research and testing to verify though, not something I've played with in practice, and obviously my terminology isn't even right above, so take it for what it's worth.
If you return fake IPs in a traceroute you won't be able to control the reverse DNS which is the point of this exercise.
You can however control the IPs, so you can pick IPs with funny nsa.gov/.mil/fbi rdns (and matching forward records).
I understood this current thread to be another, separate, stupid ICMP trick. I wouldn't think the two tricks can be combined.
Fakeroute was the funniest thing in the world back then. Thank you.
Thanks for sharing these links.
Not sure how he did it, but my first guess would be just a bunch of virtual interfaces on a linux box with a->b->c->d->e->etc routing, and something like the tc command[1] to add enough latency to each one that traceroute sees them all.
If he's scripted it to do all the virtual nic creation and dns ptr entries, it would be interesting to see.
[1] https://bencane.com/2012/07/16/tc-adding-simulated-network-l...
Virtual interfaces aren't necessary, and would be overkill. All he needs on his server is to listen on a raw network socket, read the incoming packet's IP TTL value, then forge and send an ICMP "time exceeded" response with the source IP address set to a value that depends on the TTL. The entire thing could be done in 20-30 lines of Python.
Next to that he set up a DNS server configured with PTR records that map these forged IP addresses to arbitrary hostnames of his choices.
For maximum 'performance' you can do it in-kernel with eBPF :^) https://github.com/simmsb/traceroute-spoof
Sure, another way to do it, though the python would have to get the peer address, extract 64 bits of the incoming msg, table lookups of hop count -> forged address, decrement hop counts, etc. A shell script creating virtual interfaces and routing wouldn't likely be much longer than 20-30 lines either.
There is no need to do "table lookups of hop count" or to "decrement hop counts". The IP TTL value is just a field that can be read from the IP header, which is trivial since the Python would get the entire IP header from the raw socket. If you see a TTL=1 you send back the forged response as coming from $IP_1, if you see a TTL=2 you forge the response as coming from $IP_2, etc. The forged response can always contain the same default TTL.
> table lookups of hop count -> forged address
>> There is no need to do "table lookups of hop count"
>> If you see a TTL=1 you send back the forged response as coming from $IP_1, if you see a TTL=2 you forge the response as coming from $IP_2
You're describing a table lookup of the forged address using the hop count.
Right, I understand you now.
traceroute(1) uses the IP Time-To-Live (TTL) field, not network latency. So just a bunch of virtual interfaces on a suitable *nix should be enough.
Ah, right, hop count ceiling and decrement from each hop.
Specifically timed latency might be fun to delineate sections for the viewer though.
Feels like we’re a dying bread with everything cloud first and serverless.
Eh, smaller slice of a bigger pie. Somebody has to make "the cloud" work so that everybody else doesn't have to worry about the underlying bits as much.
Dying breed? Though dying bread sounds like an interesting metaphor.
There are always nerdy kids learning this stuff.
Especially when the breed has "died"
Ah so this is how "the next best thing since sliced bread"s die :'(
I think that many HRs would be suspicious about somebody who worked at each job for 2.261 ms.
It is not length of experience that counts, but skill. Some people with 100ms experience have just done the same millisecond over and over.
It's contracting work, so the short duration makes sense!
2.261ms, aka a billable hour!
You've earned yourself a promotion.
He must have added Apple at some point. Here's what I got (using mtr):
19. hello 0.0% 14 141.6 140.5 139.1 141.6 0.7 20. my.name.is.louis.poinsignon 0.0% 14 141.9 142.1 141.2 143.3 0.5 21. i.am.a.network.and.systems.engineer 0.0% 14 140.5 140.4 139.7 141.6 0.5 22. this.is.my.resume.over.traceroute 0.0% 14 140.5 140.4 140.0 141.5 0.5 23. o---experience---o 0.0% 14 139.9 140.4 139.4 141.4 0.5 24. 2021.apple.engineer.sf.usa 0.0% 14 140.7 140.5 139.8 141.2 0.4 25. 2018.cloudflare.engineer.sf.usa 0.0% 14 140.8 140.4 139.4 142.8 0.9 26. 2017.cloudflare.engineer.london.uk 0.0% 13 142.2 142.6 141.4 147.5 1.5 27. 2016.cloudflare.engineer.intern.sf.usa 0.0% 13 149.7 141.2 139.1 149.7 2.7 28. o---education---o 0.0% 13 142.1 142.1 141.3 144.1 0.7 29. 2015-2016.drexeluni.exchange.ce.philadelphia.usa 0.0% 13 140.9 140.3 139.5 141.3 0.5 30. 2011-2016.utt.master.ce.france 0.0% 13 143.1 142.3 140.8 143.3 0.7 31. o---skills---o 0.0% 13 140.3 140.9 139.7 146.0 1.6 32. golang.c.python 0.0% 13 142.2 142.4 141.1 146.0 1.2 33. networks.linux.automation.kafka.clickhouse.kubernetes 0.0% 13 139.6 140.5 139.3 142.2 0.8 34. statistics.maths 0.0% 13 141.6 142.1 141.2 142.8 0.5 35. o---various---o 0.0% 13 141.8 142.4 141.8 144.8 0.8 36. swimming.karate.piano 0.0% 13 139.8 141.4 138.7 155.2 4.2 37. o---contact---o 0.0% 13 140.1 140.3 138.6 141.7 0.8 38. mail.jobs.at.poinsignon.org 0.0% 13 141.1 142.5 141.1 145.4 1.1 39. cv6.poinsignon.org 0.0% 13 139.4 140.3 139.4 141.2 0.5Remember when they said we'd never run out of IPV6 addresses?
Good times.
Will age just like the famous quotes about 640K of memory is enough.
they never anticipated the internet of internet of things. What a shame.
speaking as a software developer who has generally forgotten what little i know of routing, that is really cool
i love how the low bits of the addresses in hex are cognates for both the section and the actual content of the name/line.
also, looking glasses... jeez. i haven't heard or thought of those in _years_.
Why have you traceroute ip instead of domain?
> Host mail.jobs.at.poinsignon.org not found: 3(NXDOMAIN)
(A bit of a missed opportunity; the author should really set a AAAA record there IMHO)
There's no actual requirement that your PTR records resolve back to the same IP. Historically very little software bothered to check, and most of the Unix-y diagnostic software has never been updated to do so...
> Historically very little software bothered to check
For some reason, most IRC servers tend to do this.
Unless you send email.
you could have multiple IPs attached to a domain which could mess up this trick.
I also wonder why not use use the domain, much easier.
Bad copy/paste
So is that mail.jobs@ or mail+jobs@... or jobs@
A total flop on the last line
I bet if he can do this trace route thing, he can get all those emails going to his own domain regardless of who they are addressed to
I would presume a better way would be to not make people feel unsure of what it is, and just pick something thats super clear.
Or it's a filter. No need to send anything if you are unsure.
I didn't realize that arbitrary interpretation of vague text was a criteria for a great employer
Not really. From the lines above one can deduce that the dot represents space or colon, for obvious technical reasons. As such, I'd interpret
asmail.jobs.at.poinsignon.orgmail: jobs@poinsignon.orgI still think it's mail.jobs@ - so I'd hope the engineer set up collection on both addresses.
It'd probably be a lot safer to just have the line be "jobs.at.[...]"
Edited to add: Oh also - from the same line you can infer that a dot means a dot - the ".org" at the end confuses the meaning. Perhaps it'd be clearer if they went 100% slashdot and had ".DOT.org"
Yes really, you can see even in the other replies the interpretations are not 100% clear.
It took me a minute to realize it wasnt some form of "mail+jobs" or "mail.jobs". It wasnt until I wrote the last line of my comment that it was "mail jobs@"
My interpretation was mail: jobs@poinsignon.org
My interpretation would be mail+jobs@example.com, given that it's become the de facto standard, and mail@example.com looks like his main one.
I'm not sure it can be a de facto standard with the number of sites that flatly refuse to recognize + as a valid character in email addresses. There's so many that I gave up and started just using . instead.
Really, you're arguing about the email in a traceroute CV being somewhat ambiguous? Having to traceroute the thing is going to be a much bigger filter. And it's quite clear if you just read it out as spoken text and then try to get the address from that. Really, anyone actually interested in contacting the guy will manage just fine.
An extremely mediochre attitude. You must simply believe that things shouldn't be the best they can be, but rather things that are easily fixable for clarity should just be accepted. Typical garbage in garbage out.
You can see there is more than a few replies of people who are confused about the email.
"Ah yes, here is a thing thats a big filter, so let me make the email yet another filter but instead of just (EASILY) fixing it I will just use that as an excuse to leave it"
How about... (huge surprise here......... wait for it)....... one just makes it better, such as:
jobs.AT.domain.DOT.com
I quite honestly cannot even understand the mental processes some people here go through. It's so clear, yet you're also not the first arguing for a retarded justification instead of just "fix it by making it less ambiguous" which is the ONLY correct answer. That is... unless you don't care about getting emails to your resume.
Oh noes you just doxxed their email address on the https
It's probably more accurate to "Oh noes this HN post is going to get this guy a few dozen really lucrative job offers".
Doxxing usually implies ill intent but having your personal information broadcast to HN is likely only to result in a few of the hiring managers that haunt here sending a cold offer.
Yes I thought so, as in you're quoted thing was exactly what I meant, sarcasm doesn't serialise well
I don't think writing obfuscated email address as plaintext is doxxing, but it may be collected spam bot.
"That's very nice but can you email me a copy in Microsoft Word DOCX format please?"
I’m just about to live this hell. On advice from a friend, my response will be a simple one: no, because it doesn’t exist. It was written in Markdown [0]. Here’s a PDF.
I’m expecting the usual pushback, and will reciprocate. I’ll let you know how it goes.
[0]: https://github.com/johnnydecimal/resume/blob/main/resume.md
(Yeah I shamelessly inserted my own résumé.)
Pandoc does a good job of generating docx files from markdown
Went through this. Gave up and remade it in Word. Practical beats pure sometimes. Tough for us HN types.
Can’t u just insert a screenshot of the of the pdf in a word document?
Not if you want the job. They run the word files through screening software which processes the text.
I gave up, I now generate my CV in docx from JSON, and convert that to PDF.
I work for a company that was acquired by Leidos relatively recently. Hello fellow coworker.
Sure thing!
unzip resume.docx; cd resume; dd if=/dev/random of=crap.tax bs=1M count=19;cd ..; zip resume.docx resume
You're going to be sitting there for a while waiting for blocking random to fill 19MB. You want urandom.
These days, blocking random isn't a thing anymore. /dev/random and /dev/urandom just do the same non-blocking operation.
Reply with:
traceroute cv6.poinsignon.org | pandoc -o whywhywhy-o-why.docx
Great, but not Bad Horse great.
No wonder we're running out of IPv4 addresses.
It's only a /27, they were quite affordable a year or ten ago. A full /24 went for about $2500 back in 2015 when this was made and you can subdivide that to 8 customers who all get 30 usable addresses. Bit expensive for a joke, but not unmaintainably so.
It's silly that ISPs have messed up their IPv6 deployment so badly that there's a "shortage" of IPv4 addresses now. Of course, IPv4 was never going to be enough; there are too many people on earth.
I wonder whether you could do this with a lower number of IPs, just repeating them in the traceroute reply. You might not be able to build a real network like that, but if you're manually replying to ICMP with a raw socket, this should be possible, I doubt the client tries to de-duplicate based on addresses.
I guess you didn't really look; these are IPv6 addresses.
not in the link gp was responding to
"IMCP" looks to be a typo.
Normally wouldn't bother to mention, but, you know, CVs
Might be a 'Frencho'.
Where do you see IMCP?
The typo was fixed a few hours later
I’d like to imagine one of the troubleshooting steps for Cloudflare’s help desk when they see an uptick in customer service disruption complaints is to hit up Louis to ask if he’s updating his resume again.
That's how it's done probably https://github.com/blechschmidt/fakeroute
Except this doesn't have custom text. All the IP addresses correspond to real domain names
Another implementation https://blog.benjojo.co.uk/post/traceroute-haikus and I've seen many more.
Awesome, this one works
I guess the site can only be reached over IPv6? It seems I only have IPv4 :(
That could be a feature if he didn't want to work at companies that don't have a IPv6 network :)
Doesn't seem to be the case, apple.com does not have an AAAA record. :(
Also shame on Microsoft for no full IPv6 support in WSL2.
(The CV posted above is outdated, this is what the traceroute shows today)
8 37 ms 36 ms 36 ms hello [2001:bc8:3eff:c0::1] 9 32 ms 32 ms 31 ms My.name.is.Louis.Poinsignon [2001:bc8:3eff:c0::2] 10 33 ms 32 ms 31 ms I.am.a.network.and.systems.engineer [2001:bc8:3eff:c0::3] 11 35 ms 36 ms 35 ms This.is.my.resume.over.traceroute [2001:bc8:3eff:c0::4] 12 37 ms 35 ms 36 ms o---Experience---o [2001:bc8:3eff:c0:ee::] 13 36 ms 35 ms 35 ms 2021.Apple.Engineer.SF.USA [2001:bc8:3eff:c0:ee::714] 14 33 ms 34 ms 31 ms 2018.Cloudflare.Engineer.SF.USA [2001:bc8:3eff:c0:ee::cf3] 15 32 ms 34 ms 33 ms 2017.Cloudflare.Engineer.London.UK [2001:bc8:3eff:c0:ee::cf2] 16 38 ms 36 ms 35 ms 2016.Cloudflare.Engineer.Intern.SF.USA [2001:bc8:3eff:c0:ee::cf1] 17 36 ms 35 ms 34 ms o---Education---o [2001:bc8:3eff:c0:ed::] 18 36 ms 35 ms 34 ms 2015-2016.DrexelUni.Exchange.CE.Philadelphia.USA [2001:bc8:3eff:c0:ed::1] 19 37 ms 32 ms 32 ms 2011-2016.UTT.Master.CE.France [2001:bc8:3eff:c0:ed::2] 20 37 ms 34 ms 35 ms o---Skills---o [2001:bc8:3eff:c0:51::] 21 36 ms 36 ms 34 ms Golang.C.Python [2001:bc8:3eff:c0:51::1] 22 36 ms 34 ms 36 ms Networks.Linux.Automation.Kafka.Clickhouse.Kubernetes [2001:bc8:3eff:c0:51::2] 23 33 ms 33 ms 33 ms Statistics.Maths [2001:bc8:3eff:c0:51::3] 24 31 ms 32 ms 31 ms o---Various---o [2001:bc8:3eff:c0:7a::] 25 34 ms 35 ms 35 ms Swimming.Karate.Piano [2001:bc8:3eff:c0:7a::1] 26 36 ms 34 ms 35 ms o---Contact---o [2001:bc8:3eff:c0:c0::] 27 32 ms 34 ms 31 ms mail.jobs.at.poinsignon.org [2001:bc8:3eff:c0:c0::1] 28 33 ms 35 ms 30 ms cv6.poinsignon.org [2001:bc8:3eff:c0::ff]apple.com is just a redirect to www.apple.com, which does have IPv6.
Apple has been slowly but surely adding IPv6 to their public network services - App Store and OS downloads come over IPv6, and their NTP resolver just added IPv6 support.
I guess the department that controls that apple.com -> www.apple.com redirect just hasn't bothered, which is interesting because such a simple, dumb redirect service is one of the easiest things to dual-stack (as in it probably doesn't store IPs or have to worry about blocking at all, it just responds with a 301)
I think it's reasonable to assume that this whole thing has been a marketing campaign to get people to finally have a reason to switch to IPv6.
All kidding aside, IPv6 isn't even required for their website or this traceroute trick. He just set up an in-addr.arpa reverse DNS zone to reverse resolve particular IP addresses to specific values. If you had a block of 20 IPv4 addresses, I don't see anything stopping you from doing the exact same thing.
>If you had a block of 20 IPv4 addresses, I don't see anything stopping you from doing the exact same thing.
A block isn't necessary at all, even on IPv4. Traceroute can easily show internal address or just be lied to. Just recently we've seen a different example of this on HN:
IP addresses can be lied about, but reverse DNS still needs your ownership of those IP addresses if I understand it correctly. One would need the provider of those IP addresses to setup PTR records for them.
You're right. I didn't consider we don't control the other side's DNS server.
No A record, so I guess so.
If your ISP doesn't block ICMP, you can get IPv6 capabilities using tunnels like https://tunnelbroker.net/. Especially useful if you have a router you can configure this stuff on so all of your devices get IPv6 for free. Completely free of charge and with minimal latency if you live somewhere near a data centre.
Netflix and friends won’t work over them. But with some clever routing, you can get it to work… I just got native ipv6 last winter and had to use tunnels like this for years.
https://i.imgur.com/EA1uspm.png
All of the links just go to Wikipedia and the traceroute is as shown (minus the initial hops of course)
Same, it begins. My ISP needs to get it's act together.
An old hack.
For the history books, IIRC proff (Julian Assange) presented this hack in 1997, shortly after he wrote strobe.c (1995; AFAIK the first TCP half-open scanner). Here's a 1998 public posting of the code: https://packetstormsecurity.com/files/12995/fakeroute.c.html
At that time, the running joke was to provide inbound traceroutes spoofed next hops which implied you were working for a government agency (the Australian Federal Police, the Defence Signals Directorate (now Australian Signals Directorate) or the Defence Science and Technology Organisation (now the Defence Science and Technology Group)).
Free Julian.
Some CTO guy who I work with does this with the password for internal docs. He thinks he is 1337.
How long will it take, until someone gains access? I consider this an intentional security leak.
Non-networking guy here. Anyone care to explain what is special or impressive about this? It went over my head
I wonder if these things ever pay off, or if it just ends up attracting a lot of opportunities to be part of a normal application system where it's a one-way system of proving your worth to the company?
Well, at least it reached HN first page where a lot of hacker in heart managers and C*Os circle around, the potential employers.
Missed opportunity to hide a secret message in hops 30+ or such :).
I recall seeing something similar a while back, you'd traceroute to some IP address and the output was the opening text of a star wars movie https://www.theregister.com/2013/02/15/star_wars_traceroute/
There's also
telnet towel.blinkenlights.nl
Doesn't work properly here, I get a very local IPv6, then one row of stars, then the third hop is the destination?
% traceroute6 -w1 cv6.poinsignon.org
traceroute to cv6.poinsignon.org (2001:bc8:3eff:c0::ff), 30 hops max, 80 byte packets
1 2a01:x:x:x::1 (2a01:x:x:x::1) 0.794 ms 0.913 ms 0.737 ms
2 * * *
3 2001:bc8:3eff::1 (2001:bc8:3eff::1) 39.555 ms 39.668 ms 39.560 ms
Not sure why "traceroute6" stops at the "...::1" but "mtr" shows an equivalent 3-hop route but actually shows "...::ff" for the third and final hop? (Edit: Using "-I" with "traceroute6" makes the third and final hop also show up as "::ff". Strange that ICMP vs UDP would give different IP addresses for the final hop?)Some middlebox in your network is probably mucking with something. Are you behind a corporate firewall?
No, should be a native IPv6 consumer ISP... But now that you mention it, most other IPv6 sites act like this as well. Sorry, it's probably my ISP or maybe my router. Guess I haven't been tracerouting IPv6 much since getting native IPv6 connectivity.
If you can’t see this, your ISP doesn’t resolve IPv6, probably.
It works for me once I enable “WARP” from my 1.1.1.1 app on iOS.
Doesn't work here.
ALARM ~ $ tracepath 2001:bc8:3eff:c0::ff
1?: [LOCALHOST] 0.015ms pmtu 1500
...
...
2: ALPHEUS-COM.edge1.Washington1.Level3.net 15.966ms
3: ae5-3828.edge1.Washington1.Level3.net 4.011ms
4: 2001:1900:2::3:18 77.693ms
5: 2001:1900:5:2:2::4a0a 78.469ms asymm 4
6: 2001:bc8:400:1::8a 78.737ms asymm 7
7: 2001:bc8:400:1::13a 78.635ms asymm 6
8: no reply
9: no reply
10: no reply
11: no reply
12: no reply
13: no replyI suspect that whatever underlying implementation is used only catches ICMP packets, not UDP packets.
[edit]
Note that "tracepath -m60 bad.horse" works just fine.
Funnily enough he didn't bother to put something in his default htdocs directory : https://poinsignon.org/
See also: traceroute -m 60 bad.horse
Note also that unlike TFA, bad.horse works with tracepath.
Thought it was a dead link since it didn't work on my mobile data or home internet, turns out it's just a v6 only DNS record.
See also the IPv6 bible: https://website.peterjin.org/wiki/IPv6_Bible
Just damn clever. Shows several aspects of knowledge and application.
I wonder what HR thinks about this resume format?
it's nice that for once, hr is the one being filtered.
But do you know how to bubble sort an array?
It’s a simple dynamic programming problem. /s
lol
Is traceroute Turing complete?
Pretty awesome :)
missed opportunity for a hop of all.your.base.are.belong.to.us
main.screen.turn.on
how.are.you.gentlemen