this post was submitted on 15 Nov 2023
926 points (95.5% liked)

Programmer Humor

19176 readers
1781 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS
 
top 50 comments
sorted by: hot top controversial new old
[–] FauxPseudo@lemmy.world 293 points 10 months ago (10 children)

Ok. This covers every ipv6 and ipv4 address.

"^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])(.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])(.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])(.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])(.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])(.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])(.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])(.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])){3}))|:)))(%.+)?\s*$"

[–] YIj54yALOJxEsY20eU@lemm.ee 98 points 10 months ago

Lord have mercy

[–] dannym@lemmy.escapebigtech.info 77 points 10 months ago* (last edited 10 months ago) (1 children)

Please don't. Use regex to find something that looks like an IP then build a real parser. This is madness, its's extremely hard to read and a mistake is almost impossible to spot. Not to mention that it's slow.

Just parse [0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3} using regex (for v4) and then have some code check that all the octets are valid (and store the IP as a u32).

[–] Emma_Gold_Man@lemmy.dbzer0.com 8 points 10 months ago (7 children)

And dupe check. 0.0.0.0 and 000.000.000.000 may both be valid, but they resolve the same

load more comments (7 replies)
[–] MsPenguinette@lemmy.world 51 points 10 months ago (5 children)

IPv6 was a mistake. We should have just added an addition octet

[–] Centillionaire@kbin.social 71 points 10 months ago (5 children)

That would allow for like, 2 trillion devices? Feels like a bandaid, my dude. Next you’re gonna suggest a giant ice cube in the ocean once a year to stop global warming.

[–] stoy@lemmy.zip 12 points 10 months ago (1 children)

So add two more octets:

Moat companies will still just use something like 10.0.13.37.0.1

[–] 0xD@infosec.pub 10 points 10 months ago (5 children)

IPv6 is not made with internal networks in mind lol

load more comments (5 replies)
[–] shasta@lemm.ee 9 points 10 months ago (2 children)
load more comments (2 replies)
load more comments (3 replies)
[–] Nalivai@discuss.tchncs.de 15 points 10 months ago (2 children)

Oh yeah, great, let's change the fundamental protocol on which all the networks in the world are based. Now two third of the devices in the world crashed because you tried to ping 192.168.0.0.1

[–] tilcica@lemm.ee 11 points 10 months ago

that WOULD be quite funny for the first second or 2....

load more comments (1 replies)
load more comments (3 replies)
[–] rob64@startrek.website 33 points 10 months ago (1 children)
[–] Patches@sh.itjust.works 18 points 10 months ago* (last edited 10 months ago) (1 children)

Made that joke in an interview once.

They didn't think it was funny. They truly thought Regex was the solution to, but never the cause of, all problems.

They wanted to make a Regex to verify every single address in the world. Dodged a bullet

[–] rob64@startrek.website 7 points 10 months ago* (last edited 10 months ago) (2 children)

Holy hell yeah you did. How would you go about doing that in a single expression? A bunch of back references to figure out the country? What if that's not included? Oy.

[–] Patches@sh.itjust.works 11 points 10 months ago* (last edited 10 months ago) (2 children)

You wouldn't. It's not possible. Which is what I told them.

And why would you want to? Legally if you change the given address, and it fails to get delivered - that is on you. Not them.

Some countries have addresses that are literally 'Last house on the left by the Big Tree. Bumban(Neighborhood). NN (Country)'. Any US Centric validation would fail this but I assure you - mail gets delivered just fine.

load more comments (2 replies)
load more comments (1 replies)
[–] BeigeAgenda@lemmy.ca 30 points 10 months ago

It's always a treat to debug a regex of that size.

[–] SchizoDenji@lemm.ee 24 points 10 months ago

I knew there would be someone with the regex.

[–] takeda@lemmy.world 18 points 10 months ago* (last edited 10 months ago)

You're more of a perl programmer than network engineer :P

load more comments (3 replies)
[–] agilob@programming.dev 78 points 10 months ago* (last edited 10 months ago) (1 children)

:00 - :ff

Edit: Just learnt this can be also noted as:

:: - ::f

load more comments (1 replies)
[–] Mr_Dr_Oink@lemmy.world 72 points 10 months ago (3 children)

0.0.0.0 /0 ::/0

SUCK MY DICK, GRU!

load more comments (3 replies)
[–] michaeljo94@discuss.tchncs.de 60 points 10 months ago (2 children)
[–] Emma_Gold_Man@lemmy.dbzer0.com 18 points 10 months ago (1 children)

Better hope the goon hasn't heard of IPv6 either, or you're toast

[–] oatscoop@midwest.social 18 points 10 months ago
load more comments (1 replies)
[–] Kolanaki@yiffit.net 57 points 10 months ago* (last edited 10 months ago)

This is gonna take a while...

0.0.0.0

0.0.0.1

0.0.0.2

0.0.0.3

...

[–] knobbysideup@lemm.ee 39 points 10 months ago* (last edited 10 months ago) (2 children)
load more comments (2 replies)
[–] rez_doggie@lemmy.world 36 points 10 months ago
[–] doctorcrimson@lemmy.today 21 points 10 months ago* (last edited 10 months ago) (2 children)

ipv4 [0,255].[0,255].[0,255].[0,255]

ipv6 [0000,ffff]:[0000,ffff]:[0000,ffff]:[0000,ffff]:[0000,ffff]:[0000,ffff]:[0000,ffff]:[0000,ffff]

[–] Hobo@lemmy.world 15 points 10 months ago* (last edited 10 months ago) (1 children)

This excludes all the ipv4 ips that have a 0 in the 2nd, 3rd, and 4th octets. Sorry but we're going to have to revoke your Network Engineering credentials.

load more comments (1 replies)
[–] tabularasa@lemmy.world 7 points 10 months ago (2 children)

Not to nitpick, but an IPv6 address is represented as eight groups of four hexadecimal digits separated by :. Like 2001:0db8:3333:4444:5555:6666:7777:8888.

load more comments (2 replies)
[–] GammaGames@beehaw.org 21 points 10 months ago
[–] Napain@lemmy.ml 21 points 10 months ago (1 children)
[–] Z3k3@lemmy.world 22 points 10 months ago

That's only 1 ip (single host)

[–] dan@upvote.au 21 points 10 months ago* (last edited 10 months ago) (3 children)

This reminds me of something I saw online maybe 20 years ago now. Someone created a torrent with a name like "every IP address ever (hacking tool)" and uploaded it to Suprnova, which ended up having thousands of people seeding it. It was just a text file with every IPv4 from 0.0.0.0 to 255.255.255.255 😂

load more comments (3 replies)
[–] SpasmodicColon@hexbear.net 19 points 10 months ago

127.0.0.1, I'm an introvert

[–] Seasm0ke@lemmy.world 19 points 10 months ago
[–] shootwhatsmyname@lemm.ee 19 points 10 months ago (1 children)

one of them has a 7 I’m pretty sure

[–] comrade_pibb@hexbear.net 7 points 10 months ago

wow don't doxx me plz

[–] 018118055@sopuli.xyz 15 points 10 months ago
[–] spudwart@spudwart.com 15 points 10 months ago

I mean if I name them do I have to own the domain or…

[–] MonkderZweite@feddit.ch 14 points 10 months ago* (last edited 10 months ago)

My PC's is now Bob, My router's Billy...

[–] quinkin@lemmy.world 13 points 10 months ago (1 children)

1 and 0. Some assembly required.

load more comments (1 replies)
[–] xav@programming.dev 12 points 10 months ago (4 children)

I'll start.

0.0.0.1: Sophie

Your turn.

load more comments (4 replies)
[–] footfaults@hexbear.net 12 points 10 months ago* (last edited 10 months ago)

0.0.0.0/0

::

[–] HiddenLayer5@lemmy.ml 10 points 10 months ago (1 children)
[–] QuazarOmega@lemy.lol 10 points 10 months ago (1 children)
[–] stringere@reddthat.com 12 points 10 months ago (1 children)

UDP

I'd love to tell you a joke about UDP but I'll never know if you get it.

load more comments (1 replies)
[–] vox@sopuli.xyz 10 points 10 months ago
[–] LemmysMum@lemmy.world 10 points 10 months ago (1 children)
load more comments (1 replies)
load more comments
view more: next ›