frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

Lilo – A tiny Markdown notes widget with a knowledge graph

https://github.com/HellterEnjoy/Lilo
1•HellterEnjoy•2m ago•0 comments

Lazy loading YouTube embeds in Hugo

https://eternodevir.com/palimpsests/logs/lazy-loading-youtube-embeds/
1•sedboyz•5m ago•0 comments

Ask HN: Have you worked or collaborated with anyone from HackerNews?

1•miroljub-petrov•6m ago•0 comments

Map: 5.2-Magnitude Earthquake Strikes Southern Spain

https://www.nytimes.com/interactive/2026/08/14/world/europe/spain-quake-tracker.html
1•Bluestein•11m ago•0 comments

Agentic Reasoning for Large Language Models

https://arxiv.org/abs/2601.12538
1•Anon84•15m ago•0 comments

A community for ideas that haven't earned their place yet

https://articles.ideaorbits.org/a/ideaorbits-design-guide/
1•yannana•18m ago•0 comments

Instagram's New Logo

https://www.theverge.com/tech/979583/this-is-instagrams-new-logo
2•embedding-shape•22m ago•2 comments

Minnesota Senate Primary: The Growing Partisan Divide over Israel

https://medium.com/freedomofthought/minnesotas-senate-primary-and-the-growing-partisan-divide-ove...
1•raynchad•23m ago•0 comments

OpenAI slows release of Astra model citing cyber capabilities

https://www.axios.com/2026/08/07/openai-astra-model-delay-cybersecurity-risks
2•Bluestein•23m ago•0 comments

The Download: Flock's new rules, cloning's future, and children's cells

https://www.technologyreview.com/2026/08/14/1142033/the-download-flock-new-rules-cloning-future/
1•joozio•28m ago•0 comments

Reliance on Vision Drove Varied Brain Development in Primates

https://trinity.duke.edu/news/brain-development-primates-research
1•wjSgoWPm5bWAhXB•30m ago•0 comments

Anthropic sees AI risks rising, no plan to release stronger "Model 2"

https://www.axios.com/2026/08/14/anthropic-model-2-ai-risk
2•ironyman•30m ago•0 comments

Auto-research with codex: How I achieved a 232x Faster Kernel

https://sankalp.bearblog.dev/autoresearch/
2•tosh•30m ago•0 comments

Chrome Web Store will remove all MV2 extensions on August 31st

https://developer.chrome.com/docs/extensions/develop/migrate/mv2-deprecation-timeline
2•insin•32m ago•1 comments

DNA reveals a society organised around women in pre-Roman Britain

https://www.newscientist.com/article/2584364-dna-reveals-a-society-organised-around-women-in-pre-...
1•Anon84•32m ago•0 comments

OpenAI rolling out ads for Europe later this month

https://openai.com/policies/eu-privacy-policy-preview/
5•notenlish•38m ago•2 comments

Rowly – find out what an anonymous user can do to your Supabase app

https://rowly.me
1•popkoren•43m ago•0 comments

Kernel Context Switch Costs and Spin Locks in Perf Profile: A Practical Study

https://medium.com/@dichenldc/kernel-context-switch-costs-and-spin-locks-in-perf-profile-a-practi...
1•birdculture•43m ago•0 comments

We checked 254,854 biggest Telegram channels. One in five is dead. tglist.io

https://tglist.io/rnd/telegram-graveyard
1•coubri•48m ago•0 comments

Working with AI Feels More Like Leadership Than Coding

https://allen.bargi.org/notes/working-with-ai-feels-like-leadership/
2•allenb•51m ago•0 comments

Vacuum birefringence and the polarized X-ray emission from a radio magnetar

https://arxiv.org/abs/2509.19446
1•westurner•56m ago•1 comments

The Rise and Fall of 3M's Floppy Disk

https://spectrum.ieee.org/3m-floppy
1•Bluestein•57m ago•0 comments

LiquidGlassSkill: Claude skill to implement Apple Liquid Glass UI styles

https://github.com/stormaref/LiquidGlassSkill
2•avestura•58m ago•0 comments

Trump directs Navy to return to steam catapults on aircraft carriers

https://thehill.com/policy/defense/6029103-trump-orders-navy-catapult-reversal/
4•vrganj•1h ago•0 comments

Roblox Is Now Under Investigation by the U.S. Senate over Child Safety

https://kotaku.com/roblox-is-now-under-investigation-by-the-u-s-senate-over-child-safety-2000724465
1•taimurkazmi•1h ago•0 comments

Kyūjō Incident

https://en.wikipedia.org/wiki/Ky%C5%ABj%C5%8D_incident
1•chistev•1h ago•0 comments

Intel CEO hints at return to the memory business – market is ripe for innovation

https://www.tomshardware.com/pc-components/dram/intel-ceo-hints-at-return-to-the-memory-business-...
2•doener•1h ago•0 comments

Men and Women Can Now Send the First Message on Bumble [pdf]

https://s202.q4cdn.com/372973788/files/doc_news/2026/Aug/11/Chat-XP-Release-for-IR-Site.pdf
2•doener•1h ago•0 comments

Show HN: Gogc98 – live visualisation of the go allocator and GC

https://github.com/MichaelMure/gogc98
1•michaelmure•1h ago•0 comments

HyperOSUnfucker is an Android app that unlocks hidden system performance

https://github.com/Enki013/hyperosunfcker
2•Bluestein•1h ago•0 comments
Open in hackernews

eBPF Mystery: When is IPv4 not IPv4? When it's pretending to be IPv6

https://blog.gripdev.xyz/2025/05/06/ebpf-mystery-when-is-ipv4-not-ipv4-when-its-ipv6/
95•tanelpoder•1y ago

Comments

degamad•1y ago
I think of that as the opposite - an IPv6 socket pretending to be IPv4 in order to route to an IPv4 endpoint.
ignoramous•1y ago
Depends on the vantage point: For a firewall that's ip4 hiding in ip6. For a router, that's ip6 accomodating ip4.
Dagger2•1y ago
::ffff:0:0/96 is for representing v4 addresses in v6 APIs. You shouldn't even see it on the wire at all, but if you do it's just a regular v6 bogon range and not anything to do with v4, so it doesn't get or need any special handling in firewalls or routers.
smitty1e•1y ago
In a similar fashion, I once saw a python script that called out to a one-page C program that read a .csv dump (probably from SQLServer) and blew away the upper byte of each character, demoting it to ASCII.

Once I understood what was afoot, I was sad that someone had worked so hard when python's open() call supports an 'encoding' argument for just these occasions.

bouke•1y ago
Reminds me of a time where someone stored the md5 hash of a password as a string by throwing away all non-ascii bytes; so roughly half the bytes.
o11c•1y ago
I've seen something similar, but it depended on whether plain `char` is signed or unsigned, which is highly platform-dependent.
spiritplumber•1y ago
that's the first thing i ever uploaded anywhere! fixtxt.exe on simtel.net
imoverclocked•1y ago
If you think that's wild, just wait until you learn about 6to4 [1] (not to be confused with 6over4 [2] ...)

TL;DR: Given a globally unique IPv4 address, you can create automatic tunneling IPv6 networks with the IPv4 address embedded into the IPv6 address space.

[1] https://en.wikipedia.org/wiki/6to4

[2] https://en.wikipedia.org/wiki/6over4

Sesse__•1y ago
And for a short while, it was the most common use of IPv6 on the public Internet! Now largely dead and gone.
zzq1015•1y ago
It's a mess when you learn there are also 6in4, 6rd and teredo...
jeroenhd•1y ago
Out of all of those, 6rd is actually a success, though 6rd is built on top of 6to4. Funnily enough, the first ISP to apply 6rd has actually inverted its network and is now using 4rd to provide IPv4 to some of its customers.

Not just that, but also 4in6 (IPv4 in modern networks) and 4over6 (an extension to DS-Lite), and don't forget 6in4 being called SIT in an early draft, followed by SIIT being used in another protocol with a similar purpose (though that's more of a "Linux kept the old name around while everyone else moved on" problem).

Like most actually-used transition mechanisms, 6rd the result of someone inventing a transition strategy for a very specific use case, a company with that use case actually using that solution, and followed by standardization for good measure.

6to4 has been disabled for a few in Windows and has been disabled by default in Windows 11 since release, so in practice you probably won't see it outside of legacy networks and the routing systems designed to support 6rd or legacy networks.

Teredo was a weird Microsoft thing (like so many other network protocols) that could've replaced stupid shit like STUN and TURN had it been used. I'm pretty sure only Microsoft ever bothered to host Teredo servers to the mainstream. It would've been nice to live in a world where STUN and TURN worked for any protocol without having to set up your own servers rather than just supporting UDP and the server of an ad company (like we use today).

6in4 was a naive attempt at making the transition to IPv6 possible in the very early days (1996). It's the response to all of the "what if we just added a bunch of bits to IPv4" suggestion, and it turns out that nobody who says that actually seriously cares about supporting IPv6.

gitroom•1y ago
pretty cool seeing all the stuff people do to make networks talk, honestly makes me wonder - you think stuff like this sticks around because of habit or just taking shortcuts sometimes
dilfish•1y ago
I learnt this when using net.ListenTCP in Go, if you use lsof to show the network type, it would be IPv6. But it could also handle IPv4 requests.
IcePic•1y ago
I think OpenBSD (and other OSes) that do not allow v4 on v6 sockets might be on to something. It was felt convenient for application programmers to only have to listen to one socket for two protocols, but then code after needs to make very sure they know how to handle both families in the correct way for logging and so on, and now much later on it confuses someone that has to dig very deep into why the v4-box talks v4 without using v4.

Could be an indication that in the long run, just forcing applications that need both protocols to have separation so you are sure of what they are doing was the correct choice.

nsteel•1y ago
In my personal experience, OpenBSD going against the RFC and being different to everyone else has made more headaches for me.
eqvinox•1y ago
> OpenBSD (and other OSes)

are there actually other OSes doing this?

(- by default?)

zzq1015•1y ago
For Linux, there's a kernel setting for that.

Just run

  sysctl -w net.ipv6.bindv6only=1
so IPv6 will not include IPv4-mapped addresses.

https://www.kernel.org/doc/Documentation/networking/ip-sysct...

majke•1y ago
usually better to set IPV6_V6ONLY in the application itself.
eqvinox•1y ago
This affects -to my best knowledge- only bind()ing, not outgoing connect()ing. As the name implies, really.

(I should try this, not entirely sure tbh.)

It won't help you though if the resolver library gives you a ::ffff:ma.p.p.ed address (yes they can do that), then you just fail to connect…

aaronmdjones•1y ago
I did try this. connect(2) with an IPv4-mapped IPv6 address on an AF_INET6 socket with IPV6_V6ONLY set on it fails.
eqvinox•1y ago
Very good to know, Thanks for trying!
jcalvinowens•1y ago
It's important to emphasize it only changes the default behavior: unprivileged programs can still use setsockopt(..., IPPROTO_IPV6, IPV6_V6ONLY, ...) to override it. That's not a terribly uncommon thing to do, since different distros have historically used different defaults for the sysctl: you'll have to handle it either way.
Almondsetat•1y ago
>I thought I must have this wrong, surely you can’t just smash an ipv4 address in ipv6 field and magic happens?! Nope, didn’t have it wrong, that’s what happens. Linux supports this, and will go on to route the request as IPv4.

I mean... it's literally one of the officially defined unicast IPv6 address types. If you ever read the Wikipedia page to learn about what link-local, global unicast, etc. addresses are you surely would have seen it.

mfro•1y ago
Not everyone spends their days digging through networking specifications. I for one earned CCENT and CCNA certifications was entirely unaware of this mechanism.
Almondsetat•1y ago
What a bad faith response.

If you are searching for information about IPv6 (as the author of the post was doing for their endeavor) the Wikipedia page will be among the first things you will look at. And if the Wikipedia page clearly states this information then not only is it reasonable to expect someone to find it, but it's very far from "digging through specification"

mfro•1y ago
...the author of the post linked a wikipedia article about the mechanism in their article. That is how they found out about it. What point are you even trying to make?
lotharcable•1y ago
If you are going to do weird shoot-self-foot things with writing custom EBF scripts to do ill advised network traffic manipulations things then it is probably a good idea to pay attention to RFCs.

I mean I have a small book of notes I built up based on various network RFCs and I am don't even have a CCENT and CCNA certifications.

This sort of thing isn't unreasonable.

Of course this isn't a dunk on the author of the article (except the part about doing weird DNS games, which sounds like a nightmare for whoever needs to figure out what he did months or years from now). Everybody has run into situations were they think they know how something works and it turns out they are wrong and get a nasty surprise from it.

brewmarche•1y ago
You need to be a bit careful with terminology, IPv4-compatible and IPv4-mapped are different, i.e. ::/96 vs. ::ffff:0:0/96.

The former (compatible) are not in use anymore, they were specified in an old tunnelling RFC. The latter (mapped) are used for sockets that bind to both IPv4 and IPv6.

There are even more ways to include IPv4 addresses in IPv6 ones (NAT64, 6to4, ...)

nikanj•1y ago
Still waiting for that bug that was solved by using ipv6, not caused by ipv6
Sesse__•1y ago
Any bug whatsoever involving NAT traversal?
Dagger2•1y ago
6in4 is just a basic "put the v6 packet directly into the payload of a v4 packet" tunnelling approach. It's a sensible way of tunnelling one protocol over another (and it's the same thing as 4in6, just the other way around).

HE's tunnels are 6in4, and 6to4 and 6rd are automatically-configured 6in4 tunnels.

arccy•1y ago
maybe it just means those a pretty worthless certs focused on training you to shill for cisco instead of teaching you actually important network concepts...
mfro•1y ago
No, it means I didn't spend any time on a random specification that will rarely be seen in a production environment. I feel I gained a lot of networking knowledge.
Sesse__•1y ago
Not sure if you can call it “rarely”; it is very common in application programming. But it is never sent over the wire (unless there is some very buggy IP stack somewhere), which is probably why you did not encounter it in entry-level router/switch certifications.