10 ms·
Remembering the LAN
- jdlyga 7y agoI'm married to a girl named Lan. Half the time I type in her name, it gets autocorrected to LAN, like she's some sort of robot.
- wlesieutre 7y agoIf you're on iOS, I've read that the text substitutions feature can be used to override these sorts of unhelpful auto-corrections. If that's true, you could also set up a second substitution like "lann" -> "LAN" for when you actually want the caps version.
- dschuler 7y agoThe way you said that reminds me of a Wes Anderson movie, somehow it’s funny but endearing at the same time. I used to rent my parking space to my neighbor Mrs. SEO (a less common Korean name I suppose).
- linguae 7y agoI had a crush on a girl named Lan back when I was in third grade. This was also the same year (1997-98) when my parents got a new computer: a HP Vectra running Windows 95, which I learned HTML on towards the end of third grade. I remember discovering the acronym LAN.
- dan_hawkins 7y agoBut I guess you still attend LAN parties... (I'll show myself out)
- thaumasiotes 7y agoI don't understand the point this piece is trying to make. > Could a part-time programmer like my father write small-business software today? Could he make it as safe and productive as our LAN was? Maybe. If he was canny, and stuck to old-fashioned desktops of the 90s and physically isolated the machines from the internet. But there is no chance you could get the records onto a modern phone safely (or even legally under HIPPA) with the hours my father gave the project. Sure. > We can have the LAN-like experience of the 90’s back again, and we can add the best parts of the 21st century internet. A safe small space of people we trust, where we can program away from the prying eyes of the multi-billion-person internet. Where the outright villainous will be kept at bay by good identity services and good crypto. > The broader concept of virtualizing networks has existed forever: the Virtual Private Network. New protocols make VPNs better than before, Wireguard is pioneering easy and efficient tunneling between peers. Marry the VPN to identity, and make it work anywhere, and you can have a virtual 90s-style LAN made up of all your 21st century devices. Let the internet be the dumb pipe, let your endpoints determine who they will talk to based on the person at the other end. OK, but we have VPNs now. The problem with keeping your medical records on a modern computer isn't that your modern computer isn't connected to your other computers. The problem is that it is! It's connected to your other computers just like it's connected to everybody else's computers. Your simulated LAN is not safe in the way the old LAN was until -- as the article already noted -- you disconnect it from the internet so it's an actual LAN. So Tailscale has diagnosed the problem and recognized the solution. And they propose... to do something different. It's not clear what. How does their proposed solution address what they say is the problem? ----- Side note: > (or even legally under HIPPA) The relevant regulation is actually named HIPAA. I've always pronounced this as "hee-pah", which would make sense given the spelling. But that is not normal usage. People in medical fields universally seem to pronounce it as if were spelled "hippa". It's interesting to see that circle back the other way. There's something strange about the flow "I don't know how to pronounce this. I'll pronounce it as if it were a different word." -> "This spelling is inappropriate. I'll spell it like it's pronounced." You end up with a spelling and a pronunciation that are both completely unrelated to the word you're notionally using. Eventually people will start to ask "how does HIPPA stand for Health Insurance Portability and Accountability Act?". It's like when people ask "what does wifi stand for?" and I have to tell them "high fidelity".
- mixmastamyk 7y agoWe used the internet here in California in the 90s from our LAN, at some point a firewall was installed to keep out the growing mischief. I’m also unclear on the problem definition and solution. With the exception that web apps are too hard to build. Wonder how the anvil product (a potential solution) is doing?
- tprynn 7y agoI enjoyed the post and like the idea of Tailscale[^1], but agreed. As long as there's some path to the Internet, you can't trust your LAN. I mean, that's kind of the whole point of modern network security: even on a trusted network, you can't trust the endpoints. Consider a modernized example of the business app in the story: let's say this is an internal-facing webapp with no security features implemented. With tailscale you can implement network security controls that only allow access from specific endpoints (tied to user or service identities), but the point is that you don't trust those endpoints. Of course they could be phished/compromised, but they could also easily use a boundary-crossing attack like CSRF/SSRF to attack your insecure app. So no matter what, you need to implement standard web app security features. [^1]: https://news.ycombinator.com/item?id=22644357 https://news.ycombinator.com/item?id=22644357
- apenwarr 7y ago(I'm from Tailscale) You've nailed the problem statement, but we are trying to find a better solution. The current "zero trust networking" trend is actually not about distrusting the endpoints; it's about distrusting the network, and securing the endpoints. Tailscale lets you distrust the network and allow only trusted endpoints, which is a step. You're right that more steps are needed before we can also prevent CSRF/SSRF attacks on internal-private services, but that ought to be done at a higher level, not in every single app. The latter is just too error prone, as we see over and over.
- tprynn 7y agoCurious what the higher-level solution to CSRF/SSRF is? I’m struggling to think how it could be prevented except at the browser level (for CSRF). And for SSRF if there’s a legitimate need for a network path between two services but one has an SSRF issue, how can you stop that?
- lima 7y agoI fondly remember the days of using Borland Delphi, and then Embarcadero RAD Studio, to build fully-functional GUI applications in a matter of hours. As a teenager, no less. You had great libraries like Jedi/JVCL and various data binding layers that would allow you to assemble highly complex UIs. Of course, today's technology is so much better in so many regards (code quality, security, proper backend/frontend separation, UX, to name just a few), but I wonder if it'll ever be as easy as it felt back then.
- pjmlp 7y agoOther than Java, .NET and mobile OS native stacks, I am not sure that today's technology is so much better in so many regards. In fact in some areas I think we went backwards, doing 20 years circle to meet such tooling where they were at the early 2000's.
- api 7y agoDesktop GUI development definitely peaked in the late 1990s / early 2000s in terms of lightweight but capable tooling and good design tools. Today it's a damn mess, though I see signs of some movement toward improvement driven by the realization that mobile is not going to replace desktop for high-end, developer, and "pro" use cases.
- dvfjsdhgfv 7y agoWhat signs? My impression is that it just gets worse and worse.
- lima 7y agoQt, for instance, is still very alive and constantly improving.
- lima 7y agoThere's a lot that we take for granted nowadays, that either did not exist back then, or were expensive commercial products: - Ubiquitous transport layer encryption. - Secure memory-safe programming languages. - Structured data exchange formats that do not suck. - RPC that isn't SOAP, or DCOM. - Distributed consistent databases. - Proper sandboxing for applications. - Resolution-independent proportional UI. - A vibrant open source ecosystem used across the industry. ... and much more. Today's foundations are a lot more solid than they were back then, but I still miss the rapid prototyping. We even have an ok-ish Linux desktop! Even the most powerful React tree views are much worse than what we had 15 years ago, and are much harder to use than dragging a component onto a form. No nostalgia though, everything else sucked.
- zwieback 7y agoI remember those days when availability of cheap PCs enabled average people to write SW to run their businesses. I'm not very nostalgic about those days though. What else I remember: expensive SW on stacks of floppies, lots of incompatible network HW and protocols, crashy early versions of Windows and MacOS. I did love OS/2 when it came out, though, maybe I was the only one... I think this is the golden age right now, you can still experience coding on small systems like microcontrollers or you can go up to any kind of OS and HW at practically no cost.
- rconti 7y agoPCs sure didn't seem particularly cheap "back then"; at least, not for my "back then". $2300 in 1993 money for a 486/dx33 is over $4100 in today's money. I just bought a brand new, loaded MacBook Air for $1600.
- zwieback 7y agoTrue, cheap is relative in this context. I was easily able to afford a generic 286 as a college student but not a state of the art PC.
- jandrese 7y agoIMHO early cheap PCs were machines like the Commodore 64, Apple IIe, and the like. You could do business on those machines, with some limitations. We had a word processor on the Commodore 64 that through some black magic even managed to have a spellchecker. The big downside was that our 9 pin dot matrix printer couldn't print descenders so characters like g j and y were pushed up a couple of points. I'm sure there are people on this board who can tell you about industrial equipment controlled via a dongle hanging off of the cartridge port on a C=64.
- zwieback 7y agoOne of our early automated tools on the inkjet cartridge assembly line was controlled by a hp calculator that had an expansion slot. I think the app that opened and closed valves and actuators was written in BASIC. The workmanship of those things was at least as good as some modern PLCs.
- basch 7y agoDoes anybody remember Hamachi? https://en.wikipedia.org/wiki/LogMeIn_Hamachi https://en.wikipedia.org/wiki/LogMeIn_Hamachi https://vpn.net https://vpn.net Tailscale is very much a successor to Hamachi. Hamachi was already "the 90s as a world of mesh networks on top of today’s internet." Ive run into some client side issues with Tailscale on Windows, but when it works, it works great. BUT, this blog post is the worst part of SEO. If you're going to blog with lots of keywords to build up google cred, communicate useful things, not just a weird nostalgia. I didnt find the story particularly compelling. Also, and probably more importantly, the message of 'as long as the perimeter is secure, security within the lan is just a nuisance' is kind of odd. I dont know if that part of the 90s is the part worth reviving. Endpoints should not be trusted by default. (That isnt necessarily tailscales job, but dont market/sell the product as a "its super easy to connect EVERYTHING, security be damned." That is irresponsible to people who want to build connectivity but dont know what they are getting into. If this is an Apple like 'it just works' dont underplay the dangers.)
- chime 7y agoWe started using SoftEther recently to connect a couple of warehouses over fiber to our existing subnet without having to redo any of our network architecture. I’ve always felt it was the new Hamachi. Tailscale to me feels like the new DirectConnect.
- basch 7y agoWould you elaborate on what makes it the new DirectConnect? The centralized control plane and mesh data plane, to establish a backwards compatible IP Lan is very Hamachi. My memory of Direct Connect was that the control plane was much more distributed and fault tolerant.
- apenwarr 7y agoSorry you didn't like the article :) We posted another one this past weekend called "How Tailscale works" that this crowd seems to enjoy more, at least based on upvotes: https://news.ycombinator.com/item?id=22644357 https://news.ycombinator.com/item?id=22644357 And yes, we do think of ourselves as a "modern Hamachi." Hamachi was great! (I'm from Tailscale)
- jaywalk 7y agoI feel like the entire premise of this article is flawed. "Learning how to store passwords or add OAuth2 to your toy web site is not fun." Maybe it's not fun for him, but I find both of those things fascinating and enjoyed learning them. And with all of his talk about how it wouldn't be possible for someone to crap out medical records software like his father did: GOOD! Let's be real, that software was almost certainly crap and full of bugs. It's not the type of thing that an amateur should be writing on his lunch break. It sounds to me like this guy wants to be able to make important software without actually learning to program for real.
- BenjiWiebe 7y agoFrom what I've heard (two friends in healthcare, one a hospital administrator the other cto in said hospital) the software is still really bad today.
- enneff 7y ago> "Learning how to store passwords or add OAuth2 to your toy web site is not fun." I think it's more that correctly implementing security is hard, and if you have no interest in exposing your application to the greater internet you shouldn't be shouldered with the burden of both gaining and maintaining an understanding of the state-of-the-art in web security. > Let's be real, that software was almost certainly crap and full of bugs. It's not the type of thing that an amateur should be writing on his lunch break. Nope; computer systems were simpler, and so they were easier to program correctly. There is tons of high quality hobbyist software from the 80s and 90s. > It sounds to me like this guy wants to be able to make important software without actually learning to program for real. The author of that blog is one of the most skilled programmers I have known.
- segfaultbuserr 7y agoDN42, anyone? It's a large private network built on top of VPNs. In addition to connecting hackerspaces, you can have your own AS, be LIR, creating entities in the RIPE database, and experiment with BGP. > Since dn42 is very similar to the Internet, it can be used as a hands-on testing ground for new ideas, or simply to learn real networking stuff that you probably can't do on the Internet (BGP multihoming, transit). The biggest advantage when compared to the Internet: if you break something in the network, you won't have any big network operator yelling angrily at you. https://wiki.dn42.us/Home https://wiki.dn42.us/Home
- lordnacho 7y agoI think he's got a point in that there was a simplicity in the past that was useful, but the counterpoint is we now have way more "coding power". The cost of that is a learning cost: you need to know a bunch of things before you can make a modern app. I can see why someone new to coding might find it a little daunting. Here's some things you need to know a bit about before you can write most things: - Networking. What's a subnet mask? How does routing work? What's special about 10/8 and 192.168/16? - Security models. What do the letters AAA mean? How do you use oauth? You're told not to roll your own, so here you have to learn someone else's lib. And you can't avoid it completely, every OS requires some kind of account system with privileges/restrictions given to different users. - Drawing stuff models. How does a web page render? What about an Android, iOS, or a Windows form? Annoyingly I did all these things at some point, and they're not quite the same. Vocabulary varies, for instance. - How do you use libs in whatever language you're looking at? Again, there's a whole load and they're all similar but different. - How does git work? You're not gonna avoid getting something from github or similar. So now you need to have an idea of how git works, and the use model represented by github/gitlab/bitbucket etc. But once you know most of these things, you can get a lot farther than you could on some 1990s small business network. You can shove stuff in the cloud for scaling or resilience, you can keep dependencies clean with various container-type stuff, you can put media on CDN, and so on.
- ksk 7y ago>But once you know most of these things, you can get a lot farther than you could on some 1990s small business network. You can shove stuff in the cloud for scaling or resilience, you can keep dependencies clean with various container-type stuff, you can put media on CDN, and so on. If those advantages are not important to you, you still have to pay the cost in learning all that complexity. Partly its the complexity, and partly its the rate of change. Nothing you write stays working on the web for long. You have to constantly keep jumping through the hoops in this crazy web-circus. Its "standards based" (i.e. controlled by Google in some way or other), but backwards compatibility and keeping things working is way more important to me personally.
- alasdair_ 7y agoI have fond memories of playing multiplayer Atari ST games on a "LAN" comprised of a bunch of MIDI (and occasionally RS232) cables. https://en.wikipedia.org/wiki/MIDI https://en.wikipedia.org/wiki/MIDI
- dang 7y agoUrl changed from https://tailscale.com/blog/remembering-the-lan/ https://tailscale.com/blog/remembering-the-lan/, which points to this. There was a small thread back in January: https://news.ycombinator.com/item?id=22173983 https://news.ycombinator.com/item?id=22173983
- gentleman11 7y agoSlightly off topic, but my friends and I still host LAN parties. They are still amazing
- velosol 7y agoDo you play the same games from 'back then' or are there some modern ones that work too?
- skocznymroczny 7y agoDepends on how you define modern, but I've been at a lan party in which people played games such as Left4Dead 2, Call of Duty 4, World in Conflict.
- justlexi93 7y agoPart of it was probably that older computers had a set form factor. You could recognize a C64 or an Amiga when you walked in the door. These days they all look the same. On a different note I find myself pondering the similarities between the spread of malware now that everything is online 24/7, and the spread of illnesses in an era of cheap and fast air travel.
- thebeardisred 7y agoIt left me so stoked to see IPX mentioned in the first paragraph... And disappointed to not see it mentioned in any of the comments. The native support in many DOS applications and ease of configuration was a dream. As a kid setting up LAN games he nailed it with the header "The childhood magic". edit: Fixed spelling mistake
- jimmySixDOF 7y agoAgreed - IPX & Netware were way ahead of anyone else until years after MS released Active Directory. I actually started out working working with IBM using Token Ring and installing Magde NIC Cards. These days with NFV/SDN/Etc the "Network" is more a spaghetti of virtual circuits. Try drawing a diagram of east-west pod traffic using VMWare NSX/vSANs in a hyperconverged ACI overlay environment and you will run out of ink !
- mixmastamyk 7y agoStill sorta remember my startnet.bat from '94ish: lsl 3c50{3,5,9} ipxodi netx rem Somthing about F: drive goes here rem Then login There was no fiddling with network or node addresses. I think networks were somehow configured thru the Netware server, but can't remember.