I’m just this guy, you know?

  • 2 Posts
  • 80 Comments
Joined 1 year ago
cake
Cake day: June 12th, 2023

help-circle
  • You could source a pair of gigabit media converters and a length of fiber on Amazon for about $100. Just use the media converters to extend the Ethernet port from where the Internet hands off in your house over to your office. You can affix the fiber along baseboards and up over door frames with adhesive cleats and zip ties, or those nylon staples on a nail they use to tack down coax cable.

    If you’re willing to spend a little more on the fiber for a custom color, you can probably even order the fiber in a more neutral color than SMF yellow to blend into the trim better.



  • I happen to have LMDE installed on a Lenovo Thinkpad Carbon X1 (Gen 3) tablet. It has a stylus that takes a AAAA (yes, quad-A) battery. Its an i5 or i7 Intel processor, and has a 3k Wacom sensor display. I’ve played with Inkscape on it and I think it fits the bill nicely, but it’s also discontinued.

    Cinnamon was the only DE with DPI scaling that worked worth a damn, and also had good native support for screen autorotation and onscreen keyboard.

    I need to completely wipe and reinstall the system now because I configured my slices too small, and for some reason decided not to put root in an LVM like a sane person would have (it was 2017 tho. Different times…)

    Anyhoo, if you can come by one through the refurb market, I think it comes closest to your spec, saving the no-battery stylus.


  • I also mainly don’t use screen Auto Rotate, but I did make it a tile on the window shade. Rather than toggle it manually, I have Tasker enable rotation when an app that I want to auto-rotate is active on the screen, and disable it when that app is not active.

    It doesn’t put anything up on the status bar, but if you can live without it knowing only certain apps do it, maybe it doesn’t matter.

        Profile: Auto-rotate Apps
        Settings: Restore: yes
        	Application: Sky Map, Camera, Gallery...
        
        
        
        Enter Task: Enable Auto-rotate
        
        A1: Display AutoRotate [
             Set: On ]
            If  [ %ROTATE_APP_LOCK Set ]
        
        A2: Variable Clear [
             Name: %ROTATE_APP_LOCK ]
        
        
        
        Exit Task: Disable Auto-rotate
        
        A1: Variable Set [
             Name: %ROTATE_APP_LOCK
             To: 1 ]
            If  [ %ROTATE_APP_LOCK !Set ]
        
        A2: Display AutoRotate [ ]
    
    



  • SolidGrue@lemmy.worldtoSelfhosted@lemmy.worldVLAN question
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 month ago

    If you just want each physical interface on your server to participate in a single VLAN, set the corresponding switch port as an access port in the desired VLAN, and then configure each server interface as a normal untagged interface.

    You would only do tagged frames (802.1q trunking) if you wanted to support several VLANs on the switch port.





  • It’s mainly about managing risk, but also not all ISPs allow residential accounts to host services on their IP addresses.

    Opening a port to the internet exposes the service to the whole internet, which means you need to secure the service with strong credentials, set up SSL, manage the certificate, and keep software up to date. You incur a lot of extra work, and also extra risk not only to your self-hosted service, but to any other services you host that “trust” your service.

    All that work requires extra knowledge and experience to get right which, let’s just be honest here: we’ve all probably followed that one How-To blog post, and maybe not understood every step along the way to get past that one pesky error.

    Running a secure VPN overlay like Tailscale has much less overhead. You generate some keys, and configure your lighthouse server so the enrolled devices can find each other. It effectively extends your LAN environment to trusted hosts wherever they might be without exposing any of the services to the Internet.

    Overall, Tailscale is simpler and much less work for individuals to set up and maintain than to secure multiple services against casual or targeted intrusion.

    Tailscale also has the benefit of being a “client” in the view of the ISP, who see your IP address reach out to your VPS to initiate the tunnel, and not the other way around. If there’s any CGNAT going on, Tailscale would tunnel through it.






  • I have a few automations:

    • Between 11pm and 7am, and if not connected to a list of BT headsets or speakers: lower the main media volume to 0.
    • If one of a list of apps is on the main screen: activate screen auto-rotate, then disable it as an exit task.
    • If the phone is less than 30m from the lat/lon of the center of my house: set a variable NEAR_HOME=1, and set NEAR_HOME=0 as an exit task
    • If my phone is not connected to my home SSID and NEAR_HOME isn’t set: activate the Wireguard profile to connect to my home router, and deactivate it as an exit task
    • At 9am every day, issue a notification showing the number of days remaining to a significant date occurring later this year.

    I used to have several more to correct certain idiosyncrasies my phone would have on boot, low battery and a few other repeatable conditions, but those things got fixed with system updates, or ceased to be relevant.




  • I appreciate the pun!

    For home networks, I agree there’s usually not a need. I do it for portability reasons: I always use 192.168.0.0/24 addresses (192.168.0.0 - 192.168.0.255) for services I’m hosting on prem at home. In general, my home router is a Linux box connected directly to my ISP’s network on one interface and a switch with several VLANs on its other interface, and which has IP forwarding enabled with IP masquerade. I also use IPv6 a fair amount and receive a healthy whack of addresses from my ISP that I delegate out portions of to each VLAN. By my count I have 6 or 8 active VLANs on my home net for the adults, for work, for the kids, for the central services, for isolating untrustworthy IOT doodads, for infrastructure management, and for guests.

    Most of my so-called central services have been hosted on the same Linux box that does the routing, using containers bount do tjose subnet zero IPs on the loopback. It skeeves me out a bit to do that though, so I’ve been moving that stuff over to a new applications server in a DMZ VLAN. I know what I’m doing, but I’m also incurring unnecessary risks having structured my service hosting the way I have.

    The IP-on-loopback trick let’s.me move those services from a VIP on the router to an IP on the new service host without having to reconfigure everything. I just fake in some /32 routes where I need to, and the traffic goes where I want of to.

    I admit up front this isn’t great discipline, but as I said I know what I’m doing and it only sounds crazy to me when I try to explain it to other people. Lol.


  • I do this, but I also work in tech and have a pretty solid grasp of routing and how that all works. I agree it may seem overkill for many installs, but makes sense for certain use cases. I’ll try to explain without writing a book. I’ll be glossing over a LOT of texture in the following…

    In networking, a router is considered to be a node in a graph with multiple host IP addresses, one for each edge. It has an interface-- sometimes physical but more often viirtual-- on each edge (network segment, VLAN) that connects to it, and which usually serves as the gateway IP for that edge. In larger networks where there is more than a single router, the routers must all tell each other which router has which destination network segment, so they all speak a routing protocol like RIP, OSPF or IS-IS. Each of the speakers must be able to identify itself uniquely among the others so the others know which node is making what advertisements. To do this, they each are assigned a unique router ID, which is normally a 32 bit integer value represented as a dotted quad. Customarily this is an IP address, and the protocols further this idea by adopting the highest numbered IP address on the device or the addrss of its loopback interface, if defined.

    The point of a routing protocol is for the participating nodes to advertise IP ranges associated with their connected edges. They assert advertisements for each edge when it is active.(I.e., the interface is UP) and withdraw or expire them when the edge is unavailable (I.e., the interface is in any state other than UP). Every time an edge changes state-- goes from UP to not-UP, or not-UP to UP-- that advertisement must propagate across the whole system, and every node must stop forwarding traffic to recalculate its own best path to the remaining available edges. This is called reconvergence, and network engineers try to do things to minimize the number and frequency of these events.

    Practically, one of the things network engineers do to try to avoid instability is not having the ID of a speaker change dynamically. Going back to how the device selects its router ID, it considers the loopback IP first, or else the highest numbered IP active on the device at the time of evaluation. Edge interfaces can go UP or not-UP for any number of reasons at any time, thus they are less than ideal to use for the router ID. The loopback interface by contrast is always up. This interface is typically assigned the IP the routing protocol will use for its router ID.

    In practice, the loopback is the only interface on a router than can be said to belong to the router itself¹, and not to an edge connected to the router². There are other practical reasons in routing to do this, but they all come back to the fact that the loopback is always up, and therefore it’s always apt to be advertised as an available edge.

    So what does any of this have to do with servers, applications and self hosting?

    Applications that provide services over the network, DNS servers for example, need to bind to at least one IP address and protocol port. On servers with multiple interfaces, these applications normally bind to all available interface addresses, using the address 0.0.0.0. In some situations this might be undesirable. Maybe you don’t want your pihole serving your internal DNS to your ISP, or maybe you have several VLANs at your house and want to use a single IP address for DNS across all of your VLANs, or you don’t trust the VLAN interface IPs to always be the same.

    Adding an IP to the lo interface ensures that IP is always available and reachable. It provides a single place for all hosts in the system to go that isn’t pinned to any one of the possible VLAN interface IPs.

    In my own home setup, I define several IPs on the loopback for different containers that all want to use port 8443/tcp for their public port. This gives me the flexibility of being able to assign different services their own IP (which I can then reference by name in DNS) on their native port vis-à-vis the documentation. So my Pihole container has its address and my Unifi controller container has its own as well.

    Anyway, this is very much a Done Thing in the industry. Not everyone needs it, but its a useful technique in the right circumstances.


    1. Considered from to perspective of graph theory, network nodes and the edges they connect are distinct things. A router participates in a LAN, but the LAN is its own thing, and not formally part of the router.
    2. In large IP networks, there are frequently tra sport topologies like VLANs or other shared.media that connect two or more routers, and are used exclusively to distribute traffic among themselves. Which of the participating routers is said to “own” that advertisement?