Skip to main content


Creating a 256 TLD in my home and placing a server at 192.168.90.256 just to piss of house guests

last week aws assigned me an instance with an ip ending in .0

i was thoroughly fucked with. (even though this is fine and doesn't break any specs)

@purple the first time i was ever allocated an IP ending in .0 was when i was messing around with BGP in my local network. i had no idea how it was routing. i learned many networking concepts that day.
@purple fun facts: some MMOs have used the last octet of the IP for tiebreaking events from multiple clients that occur simultaneously. I used to regularly get requests from people for proxies with IPs ending in .0 for this specific reason
My god..... I'm both appalled and intrigued at the same time. It's just the right amount of evil. This has got to be the true mark of the BoFH.

Welp - it's working

silverwizard@chaplin:~$ dig 192.168.90.256

; <<>> DiG 9.18.28-1~deb12u2-Debian <<>> 192.168.90.256
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 59721
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;192.168.90.256.			IN	A

;; ANSWER SECTION:
192.168.90.256.		3600	IN	A	192.168.90.53

;; Query time: 0 msec
;; SERVER: 192.168.90.1#53(192.168.90.1) (UDP)
;; WHEN: Wed Oct 16 23:43:09 EDT 2024
;; MSG SIZE  rcvd: 59

silverwizard@chaplin:~$
nmap will accept it, dig will accept it, firefox refuses to open 192.168.90.256, even if I straight up type: https://192.168.90.256/
did you try https://192.168.90.256./ ? - note in case mastodon normalizes it: .256./
This entry was edited (4 weeks ago)
@Richard "mtfnpy" Harman hmmmm, that made it stop saying "invalid" and started making it spin!
@Richard "mtfnpy" Harman non-mobile firefox fails instantly.
Tragic. I was hoping I could get firefox to accept my bullshit, but it's correct it doesn't work
for extra fun it should only be available over ipv6
amongst many other great things about this, it says that you have a very particular and correct type of house guest
my guests do end up being the people who would be mad
I believe we call accepting this domain "Going Postel"

@silverwizard I always assumed you couldn't have a numeric TLD for [em]exactly this reason[/em].

I'm sure it'll break some obscure piece of software somewhere.

@silverwizard I see my prediction held true (though it's not exactly obscure).


nmap will accept it, dig will accept it, firefox refuses to open 192.168.90.256, even if I straight up type: https://192.168.90.256/

@silverwizard I thought they were an ad tech company.

...same thing these days, though.

Next, do a non-contiguous netmask.
@David Schuetz hmmmm, how do you represent that, you could probably do it wth redirect rules or clever folder structure

I think it'd be like 255.255.255.3? So the nets are (say) 192.168.1.0, 1.1, 1.2, and 1.3, and the hosts are ... jesus, this is why nobody's tried this.

Bitwise, it'd be: xxx00, xxx01, xxx10, xxx11

0 net: .4, .8, .12, .16, .20…
1 net: .5, .9..yeah, that makes sense.
2 net: .6, .10…
3 net: .7, .11, .15, .19, .23…

and so on.

This was asked in a meeting with NeXT engineers while I was a contractor at a government agency in the early 90’s. I think their answer was... "We support it...maybe? Why would you want to?”

I've always wanted to try, just for the hell of it, but I suspect 99% of networking gear would break.

@David Schuetz I have managed to be mostly self taught, and get into the game after CIDR notation, so I completely never learned actual subnet masks, so I don't fully understand the issue you're even seeing.

It used to be (I guess this was before CIDR became popular) that netmasks were expressed as literal bitmasks. So a /24 would actually be written as "192.168.1.0, netmask 255.255.255.0” where the "24" represents the leading 24 bits representing the network (192.168.1).

So a /28 would be..255.255.255.240 (11110000).

But it was always a consecutive string of β€œ1” bits, and the hosts were the remaining block of lower-most "0" bits. Usually 8, for a /24, but often smaller (for, say, a small block of public IPs your ISP gives you). I remember the net my office desktop was on in school that was 255.255.254.0 (or /23). That network used 9 bits for 512 hosts. (ish - router and broadcast addresses are still needed out of that 512).

A non-contiguous netmask would mean that consecutive final octets would be on consecutively different networks.

255.255.255.3 would be all 1s, then 00000011, so the NET portion is .0, .1, .2, and .3. So hosts .4, .5, .6, .7, .8, .9, .10, .11, .12... would be on networks 0, 1, 2, 3, 0, 1, 2, 3, 0….

Like I said, I doubt much of anything would support it now. Even when we wrote netmasks as bitmasks, it's likely most gear would've just failed using this approach.

It really is a cursed idea. :)

This wiki page may help, too. Once you see it, it's ... logical? (I won't say "easy”). https://en.wikipedia.org/wiki/Subnet

@David Schuetz Oh, I see, a subnet mask bitmap with non-contiguous 1s - that makes sense.Gross.

So something like 192.168.90.256/192.255.148.45, not just a wall of 1s.

(I know enough to set subnet masks on weird ancient gear ;), but I almost always am setting 255.255.255.0 and 255.255.255.255 because /24s rule everything around me. But yeah - reasonable)

I just don't know if I have any gear that would parse subnet masks like that enough to confuse it.

@Jonathan Lamothe @David Schuetz my RPG friends claimed it was less cursed than DoublePlusUnzip (github link since my gitea is apparently being non-responsive)

@Jonathan Lamothe @David Schuetz Are you aware of the RFC 864 Compliant Dungeons and Dragons Character Generator I worked on?

@Dave worked on a bunch of it and I need to replace his work (not because I don't like it -but because I want to do the actual work not just crib his, the goal was to learn socket code).

⇧