I learned a lot of these things from taking Harvard's CS50 online, reading the blog posts I linked (and doing problems), and I would imagine this book (https://bigmachine.io/products/the-imposters-handbook/) would help out - a friend recommended it, but I never got around to it.
https://www.amazon.com/Code-Language-Computer-Hardware-Softw...
^Covers logic gates and the basics of how a computer is built to an incredible degree, but it's VERY time intensive. Still, I really recommend it.
Maybe some of us self taught developers should get together and curate a clear path for CS knowledge and ancillary helpful things.
I wouldn't mind spending some time contributing to something like that. There is an endless amount of material to read and classes to take, but narrowing it down and prioritizing is the hard part.
Which is a real shame.
If you just want to get a good sense of UDP, ICMP, TCP/IP, datagram headers, and a handful of older protocols (like FTP), "Inside TCP/IP" is still valuable.
If anything, a self-study program with a list of books to read and skills to master would save many self taught / self motivated people quite a bit of time, but its absence is by no means a show stopper.