|
|
|
|
|
by yakubin
1568 days ago
|
|
> [...] the standard was extended by two options: > - Increasing the size of the UPD packet above 512 bytes via the Extension Mechanism for DNS (EDNS) > - Switching the protocol from UDP to TCP > Alpine Linux, or rather musl libc, doesn’t support either of those options. It still seems weird to me that such details are decided by libc. My reflex idea when designing a system would be to put DNS functionality in a system service, while libraries would only query the service, without troubling themselves with system caches, TCP vs UDP etc. Then possibly the service could be even swapped for another with a compatible interface, but making different decisions, without perturbing the applications. It sounds like systemd-resolved is a move in that direction, but I still don't understand why putting all that in libc, essentially making all applications perform their own independent DNS work, was the original choice. |
|