| 14 Jul 2025 |
@n4ch723hr3r:nope.chat | that sounds complicated. why doesnt icecast just do m3u8 or something like that? | 13:43:44 |
matthewcroughan @ 39c3 (DECT 94667 or 97340 or 67192) | [error] 57885#57885: *14 upstream sent invalid header: "\x20..." while reading response header from upstream, client: 192.168.5.222, server: icecast.example.com, request: "GET /radio HTTP/1.1", upstream: "http://192.168.5.196:8001/radio.ogg", host: "icecast.example.com" | 13:44:24 |
matthewcroughan @ 39c3 (DECT 94667 or 97340 or 67192) | that's what you'll get if you try to use nginx to proxy to icecast on port 8000 | 13:44:34 |
matthewcroughan @ 39c3 (DECT 94667 or 97340 or 67192) | because the webpage and other bits surrounding icecast are http, but the stream is tcp | 13:44:49 |
toonn | I've run into similar difficulty trying to proxy Ente. It has hardcoded-ish references in the code sharing backend addresses and such and it expects the host to be the same, only got part of the way through patching the behavior before I ran out of time to spend on it. | 13:44:57 |
@n4ch723hr3r:nope.chat | i've proxied DNS (for DoH & DoT) with only bind9 and nginx before so i know that you can use nginx to forward TCP streams | 13:45:47 |
jasper @ 39c3 ☎️ 62749 | ^ look for stream config in the documentation | 13:46:06 |
matthewcroughan @ 39c3 (DECT 94667 or 97340 or 67192) | Yes, it's just quite different and I haven't found a way yet | 13:46:18 |
matthewcroughan @ 39c3 (DECT 94667 or 97340 or 67192) | This doesn't work either. Because it's using TCP and HTTP on the same port (8000) | 13:46:41 |
matthewcroughan @ 39c3 (DECT 94667 or 97340 or 67192) | and when you visit in the browser on http://foo.com:8000 it proxies http, not tcp | 13:46:55 |
matthewcroughan @ 39c3 (DECT 94667 or 97340 or 67192) | so the tcp stream proxy doesn't even get hit | 13:47:07 |