this post was submitted on 07 Sep 2024
520 points (97.4% liked)
Technology
59201 readers
2831 users here now
This is a most excellent place for technology news and articles.
Our Rules
- Follow the lemmy.world rules.
- Only tech related content.
- Be excellent to each another!
- Mod approved content bots can post up to 10 articles per day.
- Threads asking for personal tech support may be deleted.
- Politics threads may be removed.
- No memes allowed as posts, OK to post as comments.
- Only approved bots from the list below, to ask if your bot can be added please contact us.
- Check for duplicates before posting, duplicates may be removed
Approved Bots
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
25 MB wasn't even enough to send a single full res screenshot of my desktop.
Its 2024 and we still lack the basic functionality of file sharing between peers without a corp dictator restricting and snooping.
Not that the functionality does not exist (p2p, literally) but if my grandma cant receive the family pictures its not basic.
EDIT: it is possible i am remembering this from when it was 8MB.
Empty desktop is just a few kb but it was not that hard to open enough stuff to exceed 10MB
Til that i have been sending screenshots of only half my screen for not reason
That sounds like a you problem, because a PNG screenshot of my full 5120x1440 desktop is about 850 kB.
Interesting. Mine is 3840x1600 which should be ever so slightly less pixels.
I have noticed the content does matter, is your background native resolution or mostly one color?
3840 * 1600 * 4B / 1024 / 1024 = 23.4375MiB for uncompressed RGBA (four bytes per pixel).
That is, even if that thing was pure random pixels and would have to be stored uncompressed and you'd use a completely useless alpha channel you still don't hit 25M.
Guys out here sending BMPs…
I did some test, i was speaking from memory.
it depends on whats on screen.
Just desktop is 128kb but irl that rarely what i send to people.
Just my game launcher will bump that up to 5MB
But the 100% real experience i have is that is try to show someone a screenshot and i get a message that files are “too powerful” so i have conditioned myself to only show the relevant half of my screen.
So either that 25MB was a lie or i do frequently exceed it?
I specifically opened a few apps to break up any large blocks of one color.
Da fuck is your resolution?
That makes no sense. The 24MP RAW files from my camera at 25MB, no way a PNG or JPEG of a 4K (8MP) monitor are anywhere close to that big.
I did some test, i was speaking from memory so not very accurate.
it depends on whats on screen.
Just desktop is 128kb but irl that rarely what i send to people.
Just my game launcher will bump that up to 5MB
But the 100% real experience i have is that is try to show someone a screenshot and i get a message that file size is to big so i have conditioned myself to only show the relevant half of my screen.
I kinda wish we could go back to the world of people hosting their own servers and having subsets of their homedirs on ftp urls. Of course none of that is really approachable to a lot of a people :-(.
I am considering this. I am just looking into what uses the least power.
You can easily use something like a raspberry pi (or something else ARM-based like Friendlyelec CM3588) and attach some storage to it. It's really not difficult to setup a web server to share a directory.
Thanks, I will be looking into these.
The issue is the absence of being able to port forward in a lot of places. UPNP exists on some networks but it's usually disabled. But if we want actual peer to peer we're going to need to implement some way to accept incoming connections EVERYWHERE.
IPv6
What about it
it doesn't need NAT topology, at all. There is literally zero reason to use it. Direct P2P networking is so much easier over ipv6
Huh. I did not know that.
yeah, under IPv6 based home networking, you just assign a block of addresses to a home, 512 or something, for example, and then you just use a stateful firewall to do the same exact thing that a NAT + a stateful firewall would be doing on a traditional IPv4 network.
Nothing stops you from using a NAT if you felt like you wanted your networking to be more complicated for no reason. But you probably shouldn't.
There are potential benefits for the anonymization of traffic (though this is probably easy enough to defeat by simply sniffing for all traffic across the IP block) a denial of service wouldn't be super important anymore, as you could just engage in round robin across the other IPs, unless of course you DOS'd every IP all at once, but that would be super fucking obvious and trivial to deal with. Though it might kill an individual computer in the network due to traffic influx.
You could still engage in DHCP IP handouts, which would actually be beneficial in terms of traffic anonymization in this case. Especially on a high frequency basis. Similar to the effects of NATing on an IPv4 network.
Plus you could still grab a static IP address per device, and then just pass through firewall rules to allow external connections or whatever you please. No forwarding required.
IF ONLY WE COULD USE IPV6 WE WOULDNT BE HAVING THIS PROBLEM
YES FUCK YOU TOO COMCAST.
Gonna be real here, I'm in tech, there is no fucking way I'm gonna open my PC to the entire fucking internet. Vulnerabilities are everywhere and no code is perfect. Firewalls and nat help stop so many attacks from the start.
Even if ipv6 is common I will assume most implementations will be nat based.
IPv6 does not require you to open your machine to the Internet, even without making use of a NAT. Sure you get an IP that's valid on the whole internet, but that doesn't mean that anyone can send you traffic.
You definitely use a firewall, but there's no need for NAT in almost all cases with ipv6. But even with a firewall, p2p becomes easier even if you still have to do firewall hole punching
brother, use a firewall. NAT does nothing for this, a single stateful firewall will do more for device security than a NAT existing solely by itself.
A nat doesn't even do anything other than provide some basic level of device anonymity. If you didn't have a firewall it would still be accessible, you would just need to either be really good at guessing ports, or sniff for traffic that's relevant lol.
Except the NAT device will stonewall traffic on every port except the ones I open, for my entire network, and then I can just worry about securing the software listening on those few ports, instead of having to worry about the firewalls on every device I own.
Tldr default nat behavior is a state full firewall.
that's literally what a stateful firewall does.
It only allows corresponding return traffic to outgoing traffic that a device has internally sent outwards.
if you disabled that, it wouldn't do that. But even a NAT without a stateful firewall might end up doing this depending on how it's configured and your open ports due to how the forwarding is handled. This is how we get around NATing for P2P traffic, though the trick is to just send two NATed users to the others ip and port at the same time to establish a connection that can "isAlive" from there. If you had no firewall you would only need to know the IP and port to do this.
plus not to mention you can run internal firewalls on each device specifically which would do basically the same thing anyway. But then again i don't use windows so that's way easier.
Yes, thank you for repeating what I just said, and justifying my desire for a nat. I do infact actually know a few things about computer networks and tcp/ip since I spent 7 years writing software to interface with and monitor them.
the only realistic scenario in which you would use a NAT under IPv6 is if you felt like using IPv4 addresses internally. Outside of that it serves very little purpose.
Comcast is one of the biggest IPv6 ISPs though?
not big enough.
Once an end-to-end, encrypted, connection is established between a pair of peers then anything can be sent through it. The establishment proces is generally facilitated by a server of some description so neither peer needs to allow inbound connections. (I'm a long, long way from being an expert on this and happy to be corrected - but this seems like network fundamentals?)
this is true, but the problem is that it's really complicated, and not always reliable. Mostly due to NATing within the networks. Firewalls don't help but you can get around those easily enough.
There's no guarantee that you'll get a reliable P2P network connection over a NAT unless one peer isn't NATed. Which is unlikely.
TL;DR we would probably ddos the internet very quickly if we tried at the scale of something like discord.
Isn't that what things like wormhole are made to deal with?
Firefox: Browser missing required feature. This application needs support for WebSockets, WebRTC, and WebAssembly.
Where do you see that? I just sent a file from Firefox on Debian to Vivaldi on Android with it to test.
There's also just plain wormhole (https://github.com/magic-wormhole/magic-wormhole) as an application for Windows, Mac, and Linux if that web instance doesn't work.
No way 3,840 × 2,160x2=16,588,800 pixels 16,588,800 x 10 bits = 165,888,000 bits
165,888,000 bits / 8 bits/byte = 20,736,000 bytes
See my edit.
I am probably remembering this from when the limit was 8MB, which cant be that long ago i only own this monitor for a year.
Reimplement the old WASTE client from the Nullsoft dude, this time with proper encryption and security and let's call it a day.
What about encrypted messaging apps? Maybe your grandma can't figure out Signal, but she could probably work out how to use WhatsApp (which uses the same encryption protocol) given how popular it is in some countries.
Whatsapp is a product of Meta and files would still pass their proprietary servers. Let alone the metadata they collect. I refuse to use Facebook related products on principle. (Mostly stopped using google and microsoft products also)
Singal can do actual p2p userdevice to userdevice. Only if thats not possible it will use temporary servers for storage. But i am actually against that, id prefer if the file would not send until a p2p connection is established.
On paper the encryption of whatsapp is about as secure as Signal but can we trust Facebook to not implement a backdoor?. There open source llm-ai (llama) is by far the most intelligent model for its size. I plore people to ask what data Meta used to archive that result.