frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

WireGuard Is Two Things

https://www.proxylity.com/articles/wireguard-is-two-things.html
51•mlhpdx•2h ago

Comments

tptacek•1h ago
This is almost true, but not quite. WireGuard is a protocol, but it's also the Linux kernel implementation of that protocol; there are design decisions in the protocol that specifically support software security goals of the kernel implementation. For instance, it's designed to be possible to implement WireGuard without demand dynamic allocation.
zekica•1h ago
Minor nitpick: dynamic memory allocation is not used when processing packets, but is when adding/removing clients via netlink.
Cyphase•1h ago
This is why WireGuard has continued to work even when a peer is otherwise unusable from low free memory. :)
viceconsole•1h ago
The post mentions the deficiencies of TCP for mobile devices over unreliable links, but I've had nothing but trouble with Wireguard when connecting from phones via mobile data.

I suspect it's due to my mobile operator doing traffic shaping / QoS that deprioritizes UDP VPN.

In contrast, connecting to OpenVPN over TCP was a huge improvement. Not at all what I expected.

Cyphase•1h ago
Counter-anecdote: I've been using WireGuard on Android for years with no particular issues to speak of. 0.0.0.0/0 to my home network. I often forget to enable WiFi at home and don't notice (I often have it disabled when out).
wakeywakeywakey•1h ago
You probably just need to lower your MTU if your phone is getting an ip6 address.
viceconsole•39m ago
Even with the minimum of 1280 for IPv6, nothing improved.
josh3736•18m ago
The much more likely culprit is your VPN server's port. If it's running on some no-name port (such as the default 51820), that's likely to get throttled.

I'd bet that switching your VPN server port to 443 would solve the problem, since HTTP/3 runs on 443/udp.

bradley13•1h ago
I suspect ya you're right - nothing to do with Wireguard. I set it up do I could VPN into my home network from my phone. More than once, I have forgotten to turn it off. Everything worked, and I only noticed days later. Very robust, in my anecdotal experience.
extr•1h ago
Hard to read due to LLM generated prose.
peddling-brink•1h ago
You're absolutely right!
nake89•34m ago
Yeah, it's quite bad. Just some of the classics:

- "Why This Matters"

- "That's accurate, but it's only half the answer — and the less interesting half"

- "this isn't an edge case. It's routine."

I'm at the point, I would just rather read something somebody actually wrote even if it's not grammatically perfect and has lots of spelling mistakes.

laughinghan•41m ago
Does it bother anyone else when an article is so clearly written by an LLM? Other than being 3x longer than it needs to be the content is fine as far as I can tell, but I find the voice it’s written in extremely irritating.

I think it’s specifically the resemblance to the clickbaity writing style that Twitter threads and LinkedIn and Facebook influencer posts are written in, presumably optimized for engagement/social media virality. I’m not totally sure what I want instead, I’m pretty sure I’ve seen the same tactics used in writing I admired, but probably much more sparingly?

What is it that makes tptacek’s writing or Cloudflare’s blog etc so much more readable by comparison? Is it just variety? Maybe these tactics should be reserved for intro paragraphs (of the article but also of individual sections/chapters might be fine too) to motivate you to read on, whereas the meat of the article (or section) should have more substance and less clickbaiting hooks?

laughinghan•29m ago
Specifically there’s a lot of clickbaity constructions like: “setup: payoff” or “sentence fragment, similar fragment, maybe another similar fragment”.

This paragraph has both:

> The symptom is familiar: a stream that occasionally "locks up" briefly before catching up, jitter in audio or video, or a latency spike that appears to come from nowhere, a "hang" in the application when it gets blocked waiting for a packet. It comes from a single packet forcing the entire pipeline to pause. The underlying network recovered quickly; TCP's ordering guarantee is what made it visible.

So does this!

> WireGuard's protocol is a fundamentally different design point. It's stateless — there's no connection to establish upfront, no session to track, and no certificate authority in the picture. Two keys, a compact handshake, and you're encrypting. And unlike TLS, WireGuard's cryptographic choices are fixed: Noise_IKpsk2 for key exchange, ChaCha20-Poly1305 for authenticated encryption. There's nothing to misconfigure.

Hamuko•34m ago
For a moment I thought that Tunnelblick had added WireGuard support. But no, it's probably just an AI hallucination.
josh3736•21m ago
This is a clever reuse of WireGuard's cryptographic design, and may indeed make sense as a way to slap some low-overhead encryption on top of your app's existing UDP packets.

However, it's definitely not a replacement for TCP in the way the article implies. WireGuard-the-VPN works because the TCP inside of it handles retransmission and flow control. Going raw WireGuard means that's now entirely up to you.

So this might be a good choice if you're doing something realtime where a small number of dropped packets don't particularly matter (such as the sensor updates the article illustrates).

But if you still need all your packets in order, this is probably a bad idea. Instead, I'd consider using QUIC (HTTP/3's UDP protocol), which brings many of the benefits here (including migration of connections across source IP address and no head-of-line-blocking between streams multiplexed inside the connection) without sacrificing TCP's reliability guarantees. And as the protocol powering 75% of web browsing¹, is a pretty safe choice of transport.

¹ https://blog.apnic.net/2025/06/17/a-quic-progress-report/

Show HN: s@: decentralized social networking over static sites

http://satproto.org/
211•remywang•7h ago•82 comments

Returning to Rails in 2026

https://www.markround.com/blog/2026/03/05/returning-to-rails-in-2026/
21•stanislavb•1h ago•7 comments

Temporal: The 9-year journey to fix time in JavaScript

https://bloomberg.github.io/js-blog/post/temporal/
631•robpalmer•15h ago•202 comments

Making WebAssembly a first-class language on the Web

https://hacks.mozilla.org/2026/02/making-webassembly-a-first-class-language-on-the-web/
511•mikece•1d ago•173 comments

Tested: How Many Times Can a DVD±RW Be Rewritten? Methodology and Results

https://goughlui.com/2026/03/07/tested-how-many-times-can-a-dvd%C2%B1rw-be-rewritten-part-2-metho...
122•giuliomagnifico•3d ago•21 comments

Datahäxan

https://0dd.company/galleries/witches/7.html
24•akkartik•2d ago•2 comments

WebPKI and You

https://blog.brycekerley.net/2026/03/08/webpki-and-you.html
26•aragilar•2d ago•1 comments

Many SWE-bench-Passing PRs would not be merged

https://metr.org/notes/2026-03-10-many-swe-bench-passing-prs-would-not-be-merged-into-main/
211•mustaphah•10h ago•87 comments

Don't post generated/AI-edited comments. HN is for conversation between humans

https://news.ycombinator.com/newsguidelines.html#generated
3310•usefulposter•11h ago•1250 comments

I was interviewed by an AI bot for a job

https://www.theverge.com/featured-video/892850/i-was-interviewed-by-an-ai-bot-for-a-job
254•speckx•13h ago•236 comments

Iran-backed hackers claim wiper attack on medtech firm Stryker

https://krebsonsecurity.com/2026/03/iran-backed-hackers-claim-wiper-attack-on-medtech-firm-stryker/
120•2bluesc•3h ago•47 comments

Show HN: A context-aware permission guard for Claude Code

https://github.com/manuelschipper/nah/
91•schipperai•7h ago•36 comments

The MacBook Neo

https://daringfireball.net/2026/03/the_macbook_neo
492•etothet•19h ago•815 comments

About memory pressure, lock contention, and Data-oriented Design

https://mnt.io/articles/about-memory-pressure-lock-contention-and-data-oriented-design/
41•vinhnx•3d ago•1 comments

Google closes deal to acquire Wiz

https://www.wiz.io/blog/google-closes-deal-to-acquire-wiz
273•aldarisbm•16h ago•167 comments

Entities enabling scientific fraud at scale (2025)

https://doi.org/10.1073/pnas.2420092122
284•peyton•17h ago•194 comments

Show HN: I built a tool that watches webpages and exposes changes as RSS

https://sitespy.app
219•vkuprin•15h ago•50 comments

What Happens After You Die? (2016)

https://lamag.com/news/the-end/
25•NaOH•3d ago•15 comments

BitNet: 100B Param 1-Bit model for local CPUs

https://github.com/microsoft/BitNet
330•redm•18h ago•160 comments

NASA's DART spacecraft changed an asteroid's orbit around the sun

https://www.sciencenews.org/article/spacecraft-changed-asteroid-orbit-nasa
6•pseudolus•3d ago•0 comments

Faster asin() was hiding in plain sight

https://16bpp.net/blog/post/faster-asin-was-hiding-in-plain-sight/
192•def-pri-pub•16h ago•105 comments

Challenging the Single-Responsibility Principle

https://kiss-and-solid.com/blog/keep-it-simple
23•WolfOliver•3d ago•11 comments

5,200 holes carved into a Peruvian mountain left by an ancient economy

https://newatlas.com/environment/5-200-holes-peruvian-mountain/
125•defrost•2d ago•61 comments

Against vibes: When is a generative model useful

https://www.williamjbowman.com/blog/2026/03/05/against-vibes-when-is-a-generative-model-useful/
78•takira•1d ago•14 comments

Meticulous (YC S21) is hiring to redefine software dev

https://jobs.ashbyhq.com/meticulous/3197ae3d-bb26-4750-9ed7-b830f640515e
1•Gabriel_h•10h ago

Urea prices

https://tradingeconomics.com/commodity/urea
80•burnt-resistor•5h ago•60 comments

Show HN: Klaus – OpenClaw on a VM, batteries included

https://klausai.com/
139•robthompson2018•15h ago•76 comments

Show HN: Autoresearch@home

https://www.ensue-network.ai/autoresearch
59•austinbaggio•7h ago•10 comments

CNN Explainer – Learn Convolutional Neural Network in Your Browser (2020)

https://poloclub.github.io/cnn-explainer/
47•vismit2000•3d ago•2 comments

DHS Contracts Explorer – Hacked data from the Office of Industry Partnership

https://micahflee.github.io/ice-contracts/
221•peq42•5h ago•43 comments