Giver of skulls

Verified icon

  • 0 Posts
  • 247 Comments
Joined 101 years ago
cake
Cake day: June 6th, 1923

help-circle



  • The difference between servers and countries is that servers aren’t countries and countries aren’t servers.

    Servers aren’t a democracy. Well, most of them anyway.

    The difference between a violent, oppressive authoritarian regime and a fee Fediverse server is that you’re free to join other servers. Multiple at the same time, even! You can just leave, no passports, no refugee status, no paperwork.

    You can even set up your personal little server where you decide on the rules. A server for you and your friends can cost as little as ten dollars per month. Try that in any real country and you’d be considered an insurrectionist or a traitor, do it online and it’s just everyday business.

    The unfortunate reality of most “everybody is welcome” servers is that hey generally attract a lot of people who have been banned elsewhere. Some for stupid reasons (like calling any criticism of the CCP “orientalism”), some for very valid reasons. You need some form of moderation, or your server is going to be a cesspool. Some server admins preemptively decide to block servers that don’t have moderation that’s up to their standards, others wait for abuse to spread to their server.


  • In the instance of UDP handshakes yes, you need local software to initiate the connection on one of your devices somewhere (I highly doubt that your home router verifies the origin of those packets, so a hacked printer or IoT crap can open ports to your desktop no problem). Other problems are harder to solve.

    NAT is great at what it does, but it does not guarantee security. It blocks straightforward attacks, but brings in tons of edge cases and complexity that sophisticated attacks can abuse. At the same time, the same security can be achieved using IPv6 and a firewall without all the complexity.

    It’s a neat workaround that means you don’t need to mess with subnetting and routing tables when you do stuff like run virtual machines and when your ISP doesn’t offer IPv6. It was designed so larger businesses with 10 machines could access the internet without spending a lot of money on a /30, not to replace firewalls, and it still works well for what it’s designed to do.



  • Not really, though. It was never designed as a security boundary. You can “open” a UDP port by sending UDP packets to another host, and then that host can send UDP packets to you, for instance. Usually the IP addresses of the two hosts are exchanged through a third party, and that’s how STUN/TURN works in essence. Without this, you’d need to port forward every UDP connection manually, both incoming and outgoing.

    NAT only protects you when you have hosts that only communicate along preset routes, but then a normal firewall will also work fine. It’s not like having a public IP means any traffic will actually go through, every modern consumer router has a standard deny all firewall. At best, it sort of hides what devices are sending the traffic.

    Meanwhile, NAT has flaws breaking traffic (causing NAT slipstreaming risks, like I linked elsewhere). It also has companies like Nintendo instruct you to forward every single port to their device if you have connectivity issues. If that forward is not towards a MAC address, and your PC gets the IP your Nintendo Switch used to have, you’ve just disabled your firewall to play Animal Crossing.

    If you want to, you can do NAT on IPv6. Every operating system supports it, even if it’s a stupid idea.


  • Unless you’ve gone out of your way to disable the H.263 NAT ALG, NAT actually allows websites and other services to open either random ports on your machine (if using business firewalls) or ports on any device on your network (many consumer routers).

    If your router allows you to disable SIP ALG and H.263 ALG, you should. If it doesn’t, well, maybe they’ve been patched? If you’ve applied a kernel firmware update to your router the last 1-2 years you may be safe (though not many vendors will bother updating the kernel when updating their routers). You’ll lose access to SIP phones and some video calling services over IPv4, but at least some Javascript on a random blog won’t be able to hack your printer.

    This wouldn’t work with IPv6, as these two protocols just work with IPv6 (and IPv4, as it was designed). ALGs are hacks around protocols, rewriting packets to make all of the problems NAT causes go away.

    More info on this here: https://www.armis.com/research/nat-slipstreaming-v2-0/


  • Hurricane Electric will give you a bunch of free /64s and a /48 to play with, which you can set up for tunneling on any IPv4 connection that doesn’t block ICMP traffic to HE. You can set this up within a range of routers, but if your router doesn’t support it, you can also set it up on most PCs (Windows and Linux for sure, for macOS you’ll need to check, but I’m sure it’ll be fine).

    You can also use IPv6 locally by simply advertising a subnet from the right range (an ULA), which is also useful for maintaining internal addressing if you do get normal IPv6 but your ISP is a bunch of dickwads that rotate the subnets they hand out (likely to happen if they make you pay extra for a static IP right now).


  • This has nothing to do with IPv6 itself. I pull in 4K YouTube videos over IPv6 just fine. My IPv6 routes actually have lower latency than my IPv4 routes, funnily enough.

    Sounds like your ISP has broken their IPv6 routes, or your modem is outdated and can’t do IPv6 hardware acceleration. Disabling IPv6 to downgrade your connection will work as a workaround, at least until your ISP switches over to something using IPv6 as the connection backbone (like DS-Lite, which would allow your ISP to significantly reduce their IPv4 space and make a quick profit selling off their allocations, which is unfortunately becoming more and more common).

    Your ISP or modem manufacturer needs to fix the actual problem here.




  • C is a terrible language, but it’s at least reasonably concise and readable when you need to punish it into doing what you want without crashing.

    VBA is clunky for just about everything it does, because it tries to be as readable as SQL but fails miserably. I’ve never found out why all it calls all of my variables dim but it sure doesn’t provide reasonable code.

    You don’t get the memory corruption you get when writing C code (though you can make it happen) but it’s just not a very suitable language for just about anything. It tries to take the easiest thing in programming, the syntax, and optimising on making that easy.

    The biggest problem with VBA is that it’s abused by office workers that need a real application but can’t and won’t get any time and budget to make or acquire one. You end up with the world’s shittiest code imaginable, written by people who aren’t programmers, driven to desperation. Opening someone else’s VBA code is like opening someone’s browser history, no matter how good your opinion of them is, you’ll find something that’ll make you question your view about them if you scroll long enough.

    The “real programmers” that like writing code full of memory corruption and null pointers have a hate boner for everything that tries to make their job easier, probably because they feel like they’re only valued for being able to write code and afraid of being found out. Visual Basic 6 allowed Junior programmers to write applications that worked fine for literal decades in a week, while any “hardcore” developer would’ve taken a month getting the string validation right.

    The same senseless hate is also present with PHP, where the arguments against the language usually come down to “I don’t like the syntax” and “this ten year old code base I used it in once was super bad”. VB also has the downside of being slow, although with VB.NET you can write powerful VB applications that perform as well as their C# counterparts.

    I tried to go back into VB after learning other languages but I just can’t think of any way in which it’s a better choice than something like C#. The Basic ecosystem Microsoft set up, where you can throw together an application in minutes and it just works, is absolutely amazing, and something I still miss on Windows every day. The language itself, with all of its quirks and stupid syntax structures, I don’t.

    One thing I’ll give VB is that it has the most hilarious but sometimes quite practical error handling statement I have ever seen (ON ERROR RESUME NEXT) that will literally ignore any error and just keep on trucking. Whenever I see three levels of methods try/catching each other and passing error objects along at the very end, I long for an ON ERROR RESUME NEXT that would just let me do all of the error handling at the very end.




  • When you puke, you get rid of the alcohol in your stomach. However, if the alcohol is already in your system, puking won’t help.

    If your body is continuing to make you puke, you’ve probably poisoned yourself. Your body is desperately trying to get rid of the toxic substance killing you, but it’s too late to eject it out through the mouth, so it just has to tank the damage by sacrificing liver cells and brain cells, which are both things your body Does Not Like.

    If you’re still drinking after your body triggered its poison response, well, it’s trying to stop you from poisoning yourself.

    If you regularly drink until you puke, something may be wrong with you medically (making you sick after one or two glasses of alcohol) or you’re killing yourself (by drinking way too much alcohol). Either way, you need to get yourself help.

    Given your “it becomes like I drink water”, I think you have a serious problem.





  • That’s the point of VPNs, isn’t it? Do you trust the companies that sell your location information to shady people like bounty hunters or some foreign VPN company?

    Personally, I trust Mullvad more than I trust many ISPs. It all depends on how good your ISP is and your country’s laws are. ISPs here in the Netherlands used to collect the IP addresses and other metadata of all websites you visit, as well as location information, for six months or more, because the law forced them to, in case the police ever needed that information. The law got overturned (though that doesn’t mean ISPs can’t track you anymore, they’re just not forced to) but this definitely feels like a reason for an always-on VPN to me. The government also pushed for IPv6 not because it’s not 1980 anymore, but because they foolishly thought that it would give every device a unique IP address so they could track people better.

    Not that I want to evade the police, but when crazy religious people get in power, I don’t want to get convicted for contacting porn sites at some point. VPN providers that you don’t trust not to log anything are still better for privacy than that.

    Some VPN providers lie and say they will never log anything (only for lawsuits to prove otherwise). You can’t trust those. I consider every VPN that pays for YouTube ads to be untrustworthy. Mullvad, and some of its competitors, however, seem to be relatively trustworthy.

    With VPNs, you move your point of tracking to another company or country. Whether that benefits you depends on who you are, where you live, and what your priorities are.