What is Hackers' Pub?

Hackers' Pub is a place for software engineers to share their knowledge and experience with each other. It's also an ActivityPub-enabled social network, so you can follow your favorite hackers in the fediverse and get their latest posts in your feed.

I just discovered something really subtle about WireGuard... TL;DR if you are adjusting interface MTUs precisely, and you have mismatched MTUs between peers in some cases, make sure your smallest MTU is always a multiple of 16!

WireGuard header overhead is said to be 32 bytes + UDP + IP, so 80 bytes for IPv6 and 60 bytes for IPv4. That's where you get the default MTU of 1420 (1500 - 80, so it works with IPv6).

But that's not precisely true! Actually, WireGuard will add up to 15 bytes of padding to the data, to make it a multiple of 16, as long as it doesn't exceed the MTU on that side of the connection.

So let's say you have a server with the MTU set at 1440, but you also have a client that is using IPv4 over PPPoE. So you set its MTU to 1432, subtracting the PPPoE overhead of 8 bytes. That should be fine, since the client will figure out the right path MTU for any connections, right?

Wrong!

The TCP client and server will negotiate an MSS that gives 1432 byte IP packets within the tunnel. But 1432 is not a multiple of 16! However, the client WireGuard instance knows that there is no headroom, so it will send 1432 + 60 = 1492 byte packets, which is the maximum PPPoE MTU. But on the way back, the server thinks it can go up to 1440! 1432 % 16 == 8, so it will try to round up to 1440. Then, it sends 1500 byte packets, which don't fit in PPPoE!

The fix is to either set both the client and server MTU to 1432, or to round down the client MTU to 1424.

0
0
0
0
0
0
0

애초에 영구적인 시술 전에 퓨버티 블로커부터 쓰자고 하는것이 이미 안티 트랜스젠더 아젠다에 밀린 타협점이였음. 트렌즈젠더들은 이미 자신들의 생명을 두고 타협을 했단 말임 (권력이 없으니까 타협도 아니지!!!) 근데 이제 와서 아이들을 위한 안전한 타협점이라고 했던 퓨버티 블록커를 트랜스젠더 아이들에게만 유일하게 위험한 약이라고 하는건 그냥 트랜스젠더 사람들이 설 곳을 더 빼앗는 혐오 행위일 뿐임

0
0
0
0
0
0
0
0
0

Fishboneが新譜出すぞ!Last call in Americaは、それからのシングルでなんとGeorge Clinton参加!めちゃカッコいい!
YouTubeの概要を見てると曲を書いたときから、さらに悪くなっててとか書いてて悲しくなってきたけど、いや、やっぱりこの曲は必要だよ!

FISHBONE LAST CALL IN AMERICA Featuring George Clinton - YouTube: youtube.com/watch?v=OxfTe-VPSRw

0
1
0
0

집 열쇠가 비밀번호를 켜고 끌 수 있는 금고에 있다고 가정하면
* 비밀번호를 켰다 -> SIM PIN을 설정했다
* 열쇠공이 집 문을 따고 열쇠를 통째로 바꿈 -> SIM 스와핑 공격에 당함
* 열쇠 사진이 누출되어서 누군가가 복제 열쇠를 만듦 -> K가 누출되어서 누가 SIM을 복제함
SIM PIN을 설정하라는 글이 나도는데, 저 비유에서 금고 비밀번호를 아무리 바꿔 봤자 열쇠 그 자체가 무력화되면 아무 소용이 없다.

0
0
0

ワーナー・ブラザースによるファイナルディスティネーションのまとめ動画、サクサクとグロ映像が流れており、純粋にすごいなという感想。ここまで不条理な死が連発しすぎるとギャグではないかと思ってしまう…

0
0
0
0
1

TIL: macOS에서 pray 같은 키워드 치고 지구본(Globe 혹은 fn) 키를 누르면 키워드에 해당하는 이모지가 선택지로 뜬다. 없으면 이모지 검색창이 뜨는 것 같다.

(이거 몰라서 무조건 이모지 검색창 띄운다음 pray 쳐서 입력했었다 😢)

0
0

@bglbgl gwyng vscode 쓰시죠? 예전 기억을 더듬어보면nix-ld만 잘 설정해서 필요하면 extension들을 ad-hoc하게 깔아서 쓰는덴 큰 문제가 없었습니다. (제 경험상 vscode-fhs는 비추합니다) 저는 그러다 한번씩 pkgs/applications/editors/vscode/extensions/update_installed_exts.sh 스크립트를 이용해서 깔려있는 extension들을 nix-expression으로 뽑아서 vscode-with-extensions로 다시 빌드하곤 했습니다.

2
0
0
2
0
0

We went to the Brasseur de L'Ardoise in Richmond Quebec and there's a rainy evening outside and inside there's a jazz band playing and people from the crowd are taking turns sitting in and if that's not enough, I don't know what is.

0

My x1 carbon gen 1 is my favorite BSD desktop. Everyone has his junk system where he just installs crap on it and doesn't maintain it. My openbsd installation is now 2 years old with OBSD 7.7 releasing any moment. It'll work for many more upgrades. My record was probably 5months uptime.

0
1
0
0

3人居るんだ…

$ RAILS_ENV=development bundle exec puma -C config/puma.rb &
[21439] Puma starting in cluster mode...
:
[21439] * Listening on http://127.0.0.1:3000
[21439] Use Ctrl-C to stop
[21439] - Worker 0 (PID: 21473) booted in 0.01s, phase: 0
[21439] - Worker 1 (PID: 21483) booted in 0.01s, phase: 0
$ lsof -ni :3000
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
bundle 21439 zunda 5u IPv4 241540 0t0 TCP 127.0.0.1:3000 (LISTEN)
bundle 21473 zunda 5u IPv4 241540 0t0 TCP 127.0.0.1:3000 (LISTEN)
bundle 21483 zunda 5u IPv4 241540 0t0 TCP 127.0.0.1:3000 (LISTEN)

0
0

I need to be very clear, that the push towards "vibe coding" - that is, deliberately deskilling people - is because AI code assistants are an (increasingly expensive) subscription service.

If you know how to code, you can just write Python, C, Java, R, PHP, whatever for free and make things. You may not own the tools of production, but at least you're not renting them.

If you have been deskilled so you only know how to vibe code, you will be paying for that privilege forever.

This also goes, by the way, for researchers who are starting to be convinced they don't need to learn how to be scientists anymore, because "the AI" can just do the science for them. Nope.

0
0
0

精神科医YouTubeが患者が独自に持つLLMの使い方をみんなとシェアする動画を公開していて興味深い。
GPTsに精神科医の知識をチューニングしたLLMを用意し、
ユーザー(患者)↔️LLM(疑似医者またはカウンセラー)
という視点から始まったプロジェクトであったがどうやら流れが変わってきたようだ。

もっと哲学的で抽象的な目線で使われていた例が興味深い。
ユーザー(患者)↔️私(これまでの人生の中の私という性格傾向のデータ)のように捉え使う人が出てきた。これまでの人生のデータをメモリとして蓄積し、それをデータベースに加えて精神医学的にチューニングされたLLMに投げるものだ。

これまで精神医学の中では治療のゴールに近づく方法として社会的な中庸(現代人のあくまで普通な人と呼ばれるところ)を目指すことに重きがあった。しかし後者の使い方は自分の身心が一番心地良い考え方を目指し治療に向かう事ができるようになることが革新的なんだそうだ。

「自分らしさ」をある一言に集約して個性を語ることが問われてきた中でLLM内のデータベース自体で「自分らしさ(自分らしい考え方)」を作り出せるのではないか。

0
0
0
0
0
0