[HN Gopher] Shortest URLs on the Internet
___________________________________________________________________
Shortest URLs on the Internet
Author : jamespwilliams
Score : 222 points
Date : 2022-09-11 17:10 UTC (5 hours ago)
(HTM) web link (jameswillia.ms)
(TXT) w3m dump (jameswillia.ms)
| daniel-cussen wrote:
| dehrmann wrote:
| Any FTP urls? I'm sure there are protocols with shorter schemes,
| but FTP is still semi-supported.
| mtmail wrote:
| No longer supported by Firefox, Edge or Chrome
| https://www.zdnet.com/article/now-firefox-has-dropped-suppor...
| thrdbndndn wrote:
| Honestly, never expect browsers to support them to begin with
| anyway.
|
| Any semi-serious FTP users use dedicated clients.
| dehrmann wrote:
| Still works on IE! Why my Windows 10 installation has an
| unsupported copy of IE is another question.
| heydemo wrote:
| I love hacker news for this type of insightfully researched
| light-hearted tech trivia.
| TimLeland wrote:
| Check out the URL Shortener T.LY. It's one of the shortest domain
| that allows you to create short links that I know of.
|
| >> https://t.ly/
| daqnal wrote:
| That one is cool. Another similar one:
|
| > >>https://s.id/
| Aachen wrote:
| Tough competitor! I think dro.pm wins by one character because
| the URIs are shorter, at least on days where I didn't post it
| to HN. And that can be used for pastes and file hosting
| directly. The caveat being that it expires; it's meant as
| something you can write on a whiteboard on a conference or pass
| over the phone easily without needing to send a random URL to
| someone via chat, sms, or email or something.
| edent wrote:
| You can also use Unicode ligatures to make URls which _look_
| shorter.
|
| From that list, you could use http:// cm. / - that's U+339D if HN
| mangles it.
|
| I wrote it up at https://shkspr.mobi/blog/2020/08/buying-a-
| single-character-d...
| [deleted]
| [deleted]
| ttctciyf wrote:
| You don't need the http:// for pn. (At least in firefox on my
| laptop) pn./ suffices.
| chrismorgan wrote:
| We're talking about the URLs, not what you can type in the
| address bar to access them.
| dn3500 wrote:
| http://ai is an interesting case. It was there from the early
| days of the web, back when you could type "ai" into the mozilla
| url bar and it would take you there. Today firefox "helps" you
| out and changes what you typed into something else because it
| knows better than you do what web site you want.
|
| It's run by a character named Vince Cate who moved to Anguilla to
| protest taxes or something. He was from the US and gave up his US
| citizenship. He talked the Anguilla government into letting him
| set up its internet infrastructure for them.
| ktpsns wrote:
| You still can type "ai." (including the dot, excluding the
| quotation) in your browser. Works in firefox (tested in 104),
| however does not work in Chrome (tested in Chromium 105).
| camoufleur wrote:
| "http://ai." works in Chrome
| Chilko wrote:
| Does not work in Edge.
| epuixrk wrote:
| well obviously, he meant without the protocol at the
| beginning
| jbkkd wrote:
| Doesn't work on Chrome on Android
| 867-5309 wrote:
| working here. latest chrome, android 12
| kccqzy wrote:
| You need a slash for it to work in Chrome: "ai./" and "ai/"
| both work in Chrome (obviously without quotes.)
| [deleted]
| teloli wrote:
| Amazing, instead of "ping 1.1" I can now use "ping ai" and save
| one character. What a great world we live in.
| thewebcount wrote:
| It's interesting that Anguilla is the ai domain. I didn't know
| that! It's also a nice little island to take a trip to if you
| want to go somewhere that's not too touristy. Beautiful beaches,
| and at least last time I was there, they didn't allow cruise
| ships. So it ended up being a beautiful and quiet getaway. They
| do, however, drive on the left side of the road, but with North
| American cars, so it's a little odd driving there at first!
| tpmx wrote:
| http://dk used to work at one point in time, IIRC. (It was some
| nic.dk thing, I think.)
| gsich wrote:
| https://l.de
| [deleted]
| vesinisa wrote:
| All the domains have an invalid TLS certificate. Now, it would be
| very interesting to see the process for actually obtaining a
| valid certificate for one of these. Anyone know if there are
| reasons one could not be obtained?
| [deleted]
| notpushkin wrote:
| I think these weren't meant to run on the apex domains, so
| nobody even bothered getting a certificate. Would be
| interesting to try and get one, I agree.
| themoonisachees wrote:
| Cool to know, i guess.
|
| TIL that dotless record on newer gTLDs is forbidden, which
| explains my age-old question: "if google holds google., why are
| they only using it on domains.google? Surely having the url
| https://google would be desirable for the folks in marketing?".
| The answer is that they can't possibly because the ban was added
| precisely because of this.
| KMnO4 wrote:
| Google actually serves a bunch of pages through their TLD:
|
| https://en.wikipedia.org/wiki/.google
| varun_ch wrote:
| Google Search is actually a useful way to find sites on a
| TLD:
|
| https://www.google.com/search?q=site%3Agoogle
| https://www.google.com/search?q=site%3Agle
| https://www.google.com/search?q=site%3Agoog
| bdn_ wrote:
| This works with DuckDuckGo as well:
| https://news.ycombinator.com/item?id=32473643
|
| You can combine the exclusion `-` syntax with this as well.
| If you want to find different sites on the TLD `.test` but
| only URLs on `home.test` are being shown, you can use this
| search:
|
| site:test -site:home.test
| judge2020 wrote:
| I think it's obvious that they use their TLD, just not via a
| root A record, so resources aren't loaded via
| https://google/some.js
| varun_ch wrote:
| It's not really the same, but Microsoft has
| https://www.microsoft/ as a redirect to their .com, which
| causes some weird side effects in Chrome's omnibox, because it
| automatically adds the www subdomain:
| https://imgur.com/a/2cVxnYf
| fennecfoxen wrote:
| I used to have an email address with a three-letter username
| @eh.net, which was actually surprisingly annoying to use. If you
| ever gave the address to someone they'd be very confused at how
| short it is.
| zfxfr wrote:
| From my experience if you give people any email address with a
| custom domain people will usually be confused and ask you to
| repeat even if it's very clear and easy to remember. Last time
| i gave my mail which is something like :myname@LLL.fr i was
| asked : are you sure ?
| AviationAtom wrote:
| I usually get: "@gmail.com?"
|
| "No, no. Not everyone has to use Gmail!"
| cldellow wrote:
| I had to deal with an accountant to get advice on how to file
| taxes after the sale of a private company.
|
| They needed information from a third party. I gave the
| accountant the third party's email address,
| firstname@lastname.co.
|
| The transaction was taking a while to get resolved. After
| repeated followups, the accountant finally told me that he
| was having a hard time getting a hold of the third party. Was
| I sure that their address was firstname@lastname.com?
|
| Like... what the heck. We're all corresponding over email.
| You could have literally clicked the email address in the
| email that I sent you. But instead, somehow you've mangled it
| and are confused that it doesn't work?
|
| That was instructive for me. .com TLDs only going forward!
| axiolite wrote:
| It would be great if someone with an ultra-short URL could run
| one of the "what's my IP address" sites on it, like:
|
| ifconfig.co
|
| ifconfig.pm
|
| ifconfig.show
|
| ipaddr.in
|
| ipconfig.io
|
| They return plain-text IP address to curl/wget, while serving up
| a more detailed web page to other web browsers.
| notpushkin wrote:
| I like to use eth0.me for this purpose. Short and memorable.
| snvzz wrote:
| Interestingly, in my lan:
|
| dig ai @ googledns works
|
| dig ai @ unbound works (DoT cloudflare behind)
|
| dig ai @ dnsmasq NXDOMAIN (openwrt, forwards to unbound)
|
| Thus something's up with openwrt (22.03.0 release) dnsmasq, or
| dnsmasq in general.
| londons_explore wrote:
| This explains why many home users can't connect - a lot of home
| broadband routers use dnsmasq internally.
| easrng wrote:
| Try "ai."
| hemmert wrote:
| I love short URLs! I found quite a lot are available for .cx
| (which is the Christmas Islands), so I got https://fh.cx for
| myself a couple of years ago.
| _def wrote:
| I like them too. I used to own wu.gl but couldn't justify the
| 50$/year just for fun
| jonatron wrote:
| Although it's nowhere near as short as ai , I like bl.uk
| peanut_worm wrote:
| pn was the only one that worked on my iPhone. Pretty cool, I am
| surprised its not used for anything major
| kypro wrote:
| http://ai. resolves for me, but http://ai doesn't. Is http://ai
| invalid or is that just my DNS?
| proactivesvcs wrote:
| Both resolve for me on my Android phone but neither on my Linux
| desktops, unless I specify a DNS resolver. Curious!
| epuixrk wrote:
| omg i always wanted to know that, everyone i had asked in the
| past either shrugged or said it was impossible
| megous wrote:
| Shortest address is http://1 Not on the internet, though. Just on
| the network.
|
| Kinda surprised Linux routes 0.0.0.1 to my router, when used as a
| destination address. Might be fun to use it as a local redirector
| whitout having to do any DNS shenanigans.
|
| Edit: yep, it works
| Aachen wrote:
| Shorter: ftp://1
|
| Anyone knows a shorter protocol name that is widely
| supported/known?
| vesinisa wrote:
| Both Chrome and Firefox have actually recently removed
| support for ftp:// for security reasons.
| zzo38computer wrote:
| It may be, but that does not disqualify it being "shortest
| URLs on the internet", I think. However, maybe it should
| not count if there is not a FTP server at that address,
| though.
| megous wrote:
| ws://1
| Nextgrid wrote:
| I think on Windows machines you can use `\\\\` to access a
| machine via SMB, so `\\\1` would be the shortest if you're
| happy with Windows-only.
| easrng wrote:
| //1 turns into file:///1 everywhere AFAIK
| zzo38computer wrote:
| But "//1" is not a full URL, and any URL with "file:" is
| not "on the Internet".
| amelius wrote:
| None of these links work (Firefox 104 on Linux).
| alana314 wrote:
| they do for me on FF 104 on mac.
| bdn_ wrote:
| At one point of time, `http://to` resolved to a "It works!" page
| [1]. I've always thought it would be cool to have a URL shortener
| with links such as `https://to/library` or something similar. Oh,
| how much fun running your own TLD would be...
|
| [1] https://web.archive.org/web/20150319211308/http://to/
| infinityio wrote:
| unfortunately, it seems like ICANN rules prevent this for new
| gTLDs
| TakeBlaster16 wrote:
| I bought the punycode domain {emoji_rabbit}.to (i.e. "hop to")
| intending to build a url shortner. But I never did anything
| with it and let it expire. And now it doesn't seem like .to
| even lets you buy emoji domains anymore. I kind of wish I had
| held on to it.
| bdn_ wrote:
| I can confirm that emoji domains for `.to` are still
| supported, I believe most of them are taken by now, though.
| You can use https://register.to to check.
| TakeBlaster16 wrote:
| Huh, looks like you're right. I distinctly remember getting
| an error for emoji domains but not normal ones. I might
| have made an incorrect assumption from that. Either way
| I've accepted I'm never getting that domain back.
| blep_ wrote:
| It _was_ a link shortener for a while! I used to use it.
|
| It appears to have been archived in Japanese, but:
| https://web.archive.org/web/20120103092225/http://to/
| 1vuio0pswjnm7 wrote:
| I have run custom TLDs at home for many years. Not sure I would
| call it "fun" but it does put into perspective "ICANN" and the
| "domain name business".
|
| People who discuss the internet publicly generally assume that
| a TLD implies renting out large numbers of domains to the
| public. IMO, that is only one potential use.
| Minor49er wrote:
| Many years ago, there used to be http://www.tk/. They would let
| you register free domains (which I think technically were
| actually subdomains, but I'm really not sure). You could point
| these to anywhere online and it would maintain your
| [whatever].tk URL in the address bar. I remember hosting some
| pages on Geocities and using .tk to make it look "authentic"
| since it appeared to be self-hosted, which was 1337.
|
| It seems that the service now redirects to a site called
| Freenom where you can still get .tk names, but they appear to
| be priced based on the length and whether or not the domain
| contains known words or phrases (though some free ones are
| apparently still available if you don't mind having a gibberish
| name)
| shpx wrote:
| At Google and many other tech companies, internal machines are
| configured to have go/<whatever> work just like you describe.
| Looks like someone even made a whole company around it
|
| https://www.golinks.com/blog/go-links-history/
| Macha wrote:
| A problem with this approach is browsers love to resolve it
| to http://go.com, so Disney may be getting a feed of what
| Googlers are interested in.
| hn_go_brrrrr wrote:
| I mean, have fun? You're gonna get most stuff like go/thor-
| design or go/zanzibar. It's not as if go links are go/our-
| disney+-competitor.
| seedless-sensat wrote:
| I have found Chrome more willing to resolve go/foo as a web
| search. As a result, the Google autocomplete suggestions
| for terms like "go/m" are pretty amusing
| rnestler wrote:
| Interestingly there are also several go/foo
| autocompletions on Duckduckgo :)
| rwiggins wrote:
| I can't speak for anywhere else, but I'm pretty sure Google
| uses a Proxy Auto Config script for go links, which should
| prevent that from happening in most cases.
|
| Disclosure: I work for Google.
| dhosek wrote:
| They had this at Chase when I worked there. As I recall
| discoverability was a problem though.
| isatty wrote:
| Not just go, but lots of our internal stuff can be resolved
| that way. m/ c/ etc. you can get this for yourself by setting
| search domains.
| RockRobotRock wrote:
| Intel had that when I worked there
| otagekki wrote:
| I had worked at a bank as an IT professional and it works
| wonders, until the browser tries to be smart and attempts a
| Google search
| johnasmith wrote:
| I wrote myself a Chrome extension that does this, using
| http://l/foo style links, and using Chrome's sync to share
| across devices. Works well enough but limited to desktops.
|
| Some large orgs maintain internal shorteners, like http://go
| links at Google.
| georgyo wrote:
| Using DHCP to send a DNS search path can make this work
| across a lan, which is how it works in most work
| environments.
|
| If you set your dns search path to example.com then http://go
| would resolve to go.example.com which could be your link
| shortner.
| bdn_ wrote:
| I recall seeing go link stickers around Google's Mountain
| View campus in the early 2010s! That was the first time I had
| seen something done like that, "overriding" an entire TLD
| zone (not that `.go` is in use, anyway) to serve custom
| content.
|
| Do you happen to know how Google, or any other places, do
| this? I assume a custom DNS resolver being forced on clients
| through a network could do this, or maybe hosts files for
| each machine.
| knome wrote:
| You don't need to override a top-level domain. If you have
| the company DNS specify a search domain of the company
| owned website, you can just have the "go.<company-website>"
| available on the internal DNS. whenever someone enters
| go/whatever into a webbrowser, it will then resolve "go"
| into that internal "go.<whatever>" server.
| jzelinskie wrote:
| What's the name of your extension? I've been using
| https://www.trot.to/go-links for this and it's nice to know I
| could scale it out to my company if I wanted, but I'd prefer
| something that didn't depend on a service for my personal
| usage.
| perryizgr8 wrote:
| At a previous employer, we used an internal link shortener that
| went like http://go/whatever. Very user friendly.
| grishka wrote:
| Say Google without saying Google. These URLs sometimes leak
| into the public internet, and there's especially lots of them
| in AOSP and Chromium code.
| knome wrote:
| Google is not the only company doing this, though ex-
| googlers may have spread it around initially.
| badrabbit wrote:
| aka.ms is short but probably not thr shortest, but I would say it
| is the shortest most popular url possibly. For those who don't
| know, that is MS's link shortner for official URLs
| inglor wrote:
| It's also used quite extensively internally for company wide
| resources. Any employee can create aka.ms urls, here is one for
| your comment: https://aka.ms/AAhztyq
| jonas-w wrote:
| What a flex. Can you also specify a custom link?
|
| Like aka.ms/mango or aka.ms/inglor?
| remram wrote:
| TLDR It's http://ai (or http://ai./) and a few other 2-letter
| TLDs. Doesn't seem to work on my Android phone but works from
| another machine.
| rilut wrote:
| Works on pixel 6 pro and pixel 4a
| bbu wrote:
| Also doesn't work on my iPhone.
| frizlab wrote:
| Works on iOS, but the final dot (after the ai) MUST be there.
| So it must be exactly: " http://ai. "
|
| EDIT: It will also depend on your DNS server apparently. I
| use Cloudflare's.
| theragra wrote:
| Works on pixel6
| remram wrote:
| I see, it must be a problem with my DNS provider then not my
| device.
| progval wrote:
| Close second: http://1.1
| derefr wrote:
| Why does 1.1 resolve to 1.0.0.1? I don't recall this being in
| any of the documents about CIDRs. Are browsers implicitly
| mapping IPv4 addresses temporarily into IPv6 addresses during
| parsing, such that "1.1" becomes "1::1", and then gets IPv6
| abbreviated-form expansion applied to it?
| eesmith wrote:
| I'm also curious. Especially since curl 7.64.1 (Release-Date:
| 2019-03-27, on macOS) says: % curl
| 'http://1.1/' error code: 1003
|
| while curl 7.85.0 (Release-Date: 2022-08-31, on FreeBSD)
| says: % curl 'http://1.1/' <html>
| <head><title>301 Moved Permanently</title></head>
| <body> <center><h1>301 Moved Permanently</h1></center>
| <hr><center>cloudflare</center> </body> </html>
| cyral wrote:
| That is because their http:// site redirects to https://
| eesmith wrote:
| Sure, but why do the two different versions of curl give
| different results? With 7.64.1: % curl
| --dump-header /dev/tty 'http://1.1/' HTTP/1.1 403
| Forbidden Date: Sun, 11 Sep 2022 19:01:53 GMT
| Content-Type: text/plain; charset=UTF-8 Content-
| Length: 16 Connection: close X-Frame-Options:
| SAMEORIGIN Referrer-Policy: same-origin
| Cache-Control: private, max-age=0, no-store, no-cache,
| must-revalidate, post-check=0, pre-check=0 Expires:
| Thu, 01 Jan 1970 00:00:01 GMT Server: cloudflare
| CF-RAY: 7492a7924b2bd895-CPH error code: 1003
|
| (Note that curl 'https://1.0.0.1/' works just fine, so
| it's not like curl is blocked by the server on general
| principle.)
|
| With 7.85.0: % curl --dump-header
| /dev/tty 'http://1.1/' HTTP/1.1 301 Moved
| Permanently Server: cloudflare Date: Sun, 11
| Sep 2022 19:03:09 GMT Content-Type: text/html
| Content-Length: 167 Connection: keep-alive
| Location: https://1.0.0.1/ CF-RAY:
| 7492a96a181df18a-PIT <html>
| <head><title>301 Moved Permanently</title></head>
| <body> <center><h1>301 Moved
| Permanently</h1></center>
| <hr><center>cloudflare</center> </body>
| </html>
| A321321 wrote:
| Curl wasn't able to normalise ip adresses till this
| commit [0]
|
| [0] https://github.com/curl/curl/commit/56a037cc0ad1b2a77
| 0d0c08d...
| judge2020 wrote:
| Indeed - so while it's hitting Cloudflare, the 1.1.1.1
| IPs are all technically vhosts for `cloudflare-dns.com`,
| so a good `host` header in the request is required to
| reach it.
|
| For this reason, you could use a CNAME setup[0] and
| instead of using CNAMEs for proxied subdomains, you input
| 1.1.1.1 A records in your authoritative dns, and
| everything on Cloudflare's side will still see your
| hostname in the host header / SNI, and your website will
| load.
|
| 0: https://developers.cloudflare.com/dns/zone-
| setups/partial-se...
| A321321 wrote:
| Yeah, that was a bug in curl till 7.77.
|
| If you want to full details, see [0]
|
| [0] https://daniel.haxx.se/blog/2021/04/19/curl-those-
| funny-ipv4...
| gdavisson wrote:
| Interesting. If you use curl -v, you can see that the
| difference is that the newer version of curl
| canonicalizes(?) the Host: header to "1.0.0.1", which the
| server recognizes and responds to with a redirect. The
| older version sends "1.1" as the Host: header, which the
| server doesn't recognize, so you get a "403 Forbidden"
| response with the cryptic "error code: 1003" in the body.
|
| I get the same behavior from other nonstandard ways of
| specifying 1.0.0.1, like "curl http://01.00.00.01/"
| duskwuff wrote:
| There's some weird legacy parsing for IPv4 addresses with
| less than four components. 1.2.3.4 can be represented
| equivalently as 1.2.772, 1.131844, or 16909060. (Note that
| 772 = 0x0304, 131844 = 0x020304, and 16909060 = 0x01020304.)
|
| TL;DR: the second "1" in "1.1" is treated as a 24-bit
| integer.
|
| Longer explanation: https://blog.dave.tf/post/ip-addr-
| parsing/
| derefr wrote:
| Aha. I had thought I recalled the two-dot case being 16+16,
| rather than 8+24.
| duskwuff wrote:
| It was for compatibility with classful networks. If you
| have a class A (/8) network, you could (in principle)
| treat it as a single network and number all the machines
| on it sequentially from 12.1 to 12.16777215.
|
| Of course, nobody actually does that anymore. But the
| parser behavior is still out there because there's the
| _possibility_ that someone is still using it...
| oarmstrong wrote:
| https://en.m.wikipedia.org/wiki/IPv4#Addressing
|
| > IPv4 addresses may be represented in any notation
| expressing a 32-bit integer value.
|
| I remember reading a man page that explained this really
| succinctly but I cannot remember which one it was. A tool
| like ping I believe.
| geraldcombs wrote:
| Was it inet_aton?
|
| https://www.freebsd.org/cgi/man.cgi?query=inet_aton&sektion
| =...
| oarmstrong wrote:
| Bingo!
| profile53 wrote:
| I suspect it gets mapped to 1.0.0.1 because no other
| resolution is possible. Any other locations for the two zeros
| results in an invalid IP (either starting or ending in 0).
| jodrellblank wrote:
| Ending in 0 is valid; you can have 1.0.1.0/23 as an IP.
|
| https://stackoverflow.com/a/14915309/
|
| https://jodies.de/ipcalc?host=1.0.1.0&mask1=23&mask2=
| simonjgreen wrote:
| Absolutely nothing wrong with ending with a .0.
|
| I suspect you are confused by n.n.n.0/24 being a network
| address in a /24 network which is obviously very common.
| However there are way more networks of other sizes that
| have .0 addresses in them.
| profile53 wrote:
| Huh, and today I learned something new. Thanks!
| WarOnPrivacy wrote:
| I once had my ISP (BHN) assign me a public IP that ended
| in .0 That turned out to be a neat experiment. I
| regularly hit webpages and other services that would deny
| my connection. I guess they considered me multicast
| traffic or some sort of bogon.
| [deleted]
| schoen wrote:
| We're also arguing that it ought to become usable even in
| a /24: https://datatracker.ietf.org/doc/draft-schoen-
| intarea-unicas...
|
| It only requires changes within the LAN to accomplish
| this, since distant hosts are already not supposed to
| assume anything about how networks are or are not
| subnetted. (For instance, they don't know whether you're
| on a /24 or not.)
|
| You can find some addresses ending a lot of zeroes that
| already work within
|
| http://ec2-reachability.amazonaws.com/
| matttpt wrote:
| > Some have A records pointing to the root servers. I'm not sure
| why this is - I think it might be because no DNS has been
| configured in the TLD zone for these TLDs.
|
| I was also curious about this. It turns out that it's because dig
| interprets some TLDs as DNS record types (MD, MG, MR, MX) or DNS
| classes (IN and CH) of the same name! Not sure why, but when
| given only a type or class (without a domain name), dig actually
| queries for a list of the root servers, which explains the
| strange results. Looks like using the -q option to specify the
| domain name works around this.
| N6VjeuHbGSwMN9e wrote:
| Or you could just make it a FQDN: `dig @8.8.8.8 MX.`
| jamespwilliams wrote:
| Oh interesting, thanks! I fixed the script and ran the TLD list
| through again, in case this meant I missed some, but none of
| the affected TLDs have A records. I'll update my post to
| mention your comment.
| theomega wrote:
| Just to check: Could it be that pihole (dnsmasq) has an issue
| with these dotless domains?
|
| I'm getting a NXDOMAIN for `dig ai.`, but when directly doing
| with an upstream server (i.e. 8.8.8.8 or 1.1.1.1) it perfectly
| works.
|
| I assume this is the result of the `Never forward non-FQDN A and
| AAAA queries` setting being checked in pi-hole (which is AFAIK
| the default).
___________________________________________________________________
(page generated 2022-09-11 23:00 UTC)